Merge pull request #768 from madewokherd/gcnotdll
authorRodrigo Kumpera <kumpera@gmail.com>
Fri, 18 Oct 2013 18:09:11 +0000 (11:09 -0700)
committerRodrigo Kumpera <kumpera@gmail.com>
Fri, 18 Oct 2013 18:09:11 +0000 (11:09 -0700)
Define GC_NOT_DLL for included boehm on win32.

379 files changed:
mcs/class/Facades/Makefile
mcs/class/Facades/System.Collections.Concurrent/AssemblyInfo.cs
mcs/class/Facades/System.Collections.Concurrent/Makefile
mcs/class/Facades/System.Collections.Concurrent/System.Collections.Concurrent.dll.sources
mcs/class/Facades/System.Collections.Concurrent/TypeForwarders.cs
mcs/class/Facades/System.Collections/AssemblyInfo.cs
mcs/class/Facades/System.Collections/Makefile
mcs/class/Facades/System.Collections/System.Collections.dll.sources
mcs/class/Facades/System.Collections/TypeForwarders.cs
mcs/class/Facades/System.ComponentModel.Annotations/AssemblyInfo.cs
mcs/class/Facades/System.ComponentModel.Annotations/Makefile
mcs/class/Facades/System.ComponentModel.Annotations/System.ComponentModel.Annotations.dll.sources
mcs/class/Facades/System.ComponentModel.Annotations/TypeForwarders.cs
mcs/class/Facades/System.ComponentModel.EventBasedAsync/AssemblyInfo.cs
mcs/class/Facades/System.ComponentModel.EventBasedAsync/Makefile
mcs/class/Facades/System.ComponentModel.EventBasedAsync/System.ComponentModel.EventBasedAsync.dll.sources
mcs/class/Facades/System.ComponentModel.EventBasedAsync/TypeForwarders.cs
mcs/class/Facades/System.ComponentModel/AssemblyInfo.cs
mcs/class/Facades/System.ComponentModel/Makefile
mcs/class/Facades/System.ComponentModel/System.ComponentModel.dll.sources
mcs/class/Facades/System.ComponentModel/TypeForwarders.cs
mcs/class/Facades/System.Diagnostics.Contracts/AssemblyInfo.cs
mcs/class/Facades/System.Diagnostics.Contracts/Makefile
mcs/class/Facades/System.Diagnostics.Contracts/System.Diagnostics.Contracts.dll.sources
mcs/class/Facades/System.Diagnostics.Contracts/TypeForwarders.cs
mcs/class/Facades/System.Diagnostics.Debug/AssemblyInfo.cs
mcs/class/Facades/System.Diagnostics.Debug/Makefile
mcs/class/Facades/System.Diagnostics.Debug/System.Diagnostics.Debug.dll.sources
mcs/class/Facades/System.Diagnostics.Debug/TypeForwarders.cs
mcs/class/Facades/System.Diagnostics.Tools/AssemblyInfo.cs
mcs/class/Facades/System.Diagnostics.Tools/Makefile
mcs/class/Facades/System.Diagnostics.Tools/System.Diagnostics.Tools.dll.sources
mcs/class/Facades/System.Diagnostics.Tools/TypeForwarders.cs
mcs/class/Facades/System.Dynamic.Runtime/AssemblyInfo.cs
mcs/class/Facades/System.Dynamic.Runtime/Makefile
mcs/class/Facades/System.Dynamic.Runtime/System.Dynamic.Runtime.dll.sources
mcs/class/Facades/System.Dynamic.Runtime/TypeForwarders.cs
mcs/class/Facades/System.Globalization/AssemblyInfo.cs
mcs/class/Facades/System.Globalization/Makefile
mcs/class/Facades/System.Globalization/System.Globalization.dll.sources
mcs/class/Facades/System.Globalization/TypeForwarders.cs
mcs/class/Facades/System.IO/AssemblyInfo.cs
mcs/class/Facades/System.IO/Makefile
mcs/class/Facades/System.IO/System.IO.dll.sources
mcs/class/Facades/System.IO/TypeForwarders.cs
mcs/class/Facades/System.Linq.Expressions/AssemblyInfo.cs
mcs/class/Facades/System.Linq.Expressions/Makefile
mcs/class/Facades/System.Linq.Expressions/System.Linq.Expressions.dll.sources
mcs/class/Facades/System.Linq.Expressions/TypeForwarders.cs
mcs/class/Facades/System.Linq.Parallel/AssemblyInfo.cs
mcs/class/Facades/System.Linq.Parallel/Makefile
mcs/class/Facades/System.Linq.Parallel/System.Linq.Parallel.dll.sources
mcs/class/Facades/System.Linq.Parallel/TypeForwarders.cs
mcs/class/Facades/System.Linq.Queryable/AssemblyInfo.cs
mcs/class/Facades/System.Linq.Queryable/Makefile
mcs/class/Facades/System.Linq.Queryable/System.Linq.Queryable.dll.sources
mcs/class/Facades/System.Linq.Queryable/TypeForwarders.cs
mcs/class/Facades/System.Linq/AssemblyInfo.cs
mcs/class/Facades/System.Linq/Makefile
mcs/class/Facades/System.Linq/System.Linq.dll.sources
mcs/class/Facades/System.Linq/TypeForwarders.cs
mcs/class/Facades/System.Net.NetworkInformation/AssemblyInfo.cs
mcs/class/Facades/System.Net.NetworkInformation/Makefile
mcs/class/Facades/System.Net.NetworkInformation/System.Net.NetworkInformation.dll.sources
mcs/class/Facades/System.Net.NetworkInformation/TypeForwarders.cs
mcs/class/Facades/System.Net.Primitives/AssemblyInfo.cs
mcs/class/Facades/System.Net.Primitives/Makefile
mcs/class/Facades/System.Net.Primitives/System.Net.Primitives.dll.sources
mcs/class/Facades/System.Net.Primitives/TypeForwarders.cs
mcs/class/Facades/System.Net.Requests/AssemblyInfo.cs
mcs/class/Facades/System.Net.Requests/Makefile
mcs/class/Facades/System.Net.Requests/System.Net.Requests.dll.sources
mcs/class/Facades/System.Net.Requests/TypeForwarders.cs
mcs/class/Facades/System.ObjectModel/AssemblyInfo.cs
mcs/class/Facades/System.ObjectModel/Makefile
mcs/class/Facades/System.ObjectModel/System.ObjectModel.dll.sources
mcs/class/Facades/System.ObjectModel/TypeForwarders.cs
mcs/class/Facades/System.Reflection.Emit.ILGeneration/AssemblyInfo.cs [new file with mode: 0644]
mcs/class/Facades/System.Reflection.Emit.ILGeneration/Makefile [new file with mode: 0644]
mcs/class/Facades/System.Reflection.Emit.ILGeneration/System.Reflection.Emit.ILGeneration.dll.sources [new file with mode: 0644]
mcs/class/Facades/System.Reflection.Emit.ILGeneration/TypeForwarders.cs [new file with mode: 0644]
mcs/class/Facades/System.Reflection.Emit.Lightweight/AssemblyInfo.cs [new file with mode: 0644]
mcs/class/Facades/System.Reflection.Emit.Lightweight/Makefile [new file with mode: 0644]
mcs/class/Facades/System.Reflection.Emit.Lightweight/System.Reflection.Emit.Lightweight.dll.sources [new file with mode: 0644]
mcs/class/Facades/System.Reflection.Emit.Lightweight/TypeForwarders.cs [new file with mode: 0644]
mcs/class/Facades/System.Reflection.Emit/AssemblyInfo.cs [new file with mode: 0644]
mcs/class/Facades/System.Reflection.Emit/Makefile [new file with mode: 0644]
mcs/class/Facades/System.Reflection.Emit/System.Reflection.Emit.dll.sources [new file with mode: 0644]
mcs/class/Facades/System.Reflection.Emit/TypeForwarders.cs [new file with mode: 0644]
mcs/class/Facades/System.Reflection.Extensions/AssemblyInfo.cs
mcs/class/Facades/System.Reflection.Extensions/Makefile
mcs/class/Facades/System.Reflection.Extensions/System.Reflection.Extensions.dll.sources
mcs/class/Facades/System.Reflection.Extensions/TypeForwarders.cs
mcs/class/Facades/System.Reflection.Primitives/AssemblyInfo.cs
mcs/class/Facades/System.Reflection.Primitives/Makefile
mcs/class/Facades/System.Reflection.Primitives/System.Reflection.Primitives.dll.sources
mcs/class/Facades/System.Reflection.Primitives/TypeForwarders.cs
mcs/class/Facades/System.Reflection/AssemblyInfo.cs
mcs/class/Facades/System.Reflection/Makefile
mcs/class/Facades/System.Reflection/System.Reflection.dll.sources
mcs/class/Facades/System.Reflection/TypeForwarders.cs
mcs/class/Facades/System.Resources.ResourceManager/AssemblyInfo.cs
mcs/class/Facades/System.Resources.ResourceManager/Makefile
mcs/class/Facades/System.Resources.ResourceManager/System.Resources.ResourceManager.dll.sources
mcs/class/Facades/System.Resources.ResourceManager/TypeForwarders.cs
mcs/class/Facades/System.Runtime.Extensions/AssemblyInfo.cs
mcs/class/Facades/System.Runtime.Extensions/Makefile
mcs/class/Facades/System.Runtime.Extensions/System.Runtime.Extensions.dll.sources
mcs/class/Facades/System.Runtime.Extensions/TypeForwarders.cs
mcs/class/Facades/System.Runtime.InteropServices/AssemblyInfo.cs
mcs/class/Facades/System.Runtime.InteropServices/Makefile
mcs/class/Facades/System.Runtime.InteropServices/System.Runtime.InteropServices.dll.sources
mcs/class/Facades/System.Runtime.InteropServices/TypeForwarders.cs
mcs/class/Facades/System.Runtime.Numerics/AssemblyInfo.cs
mcs/class/Facades/System.Runtime.Numerics/Makefile
mcs/class/Facades/System.Runtime.Numerics/System.Runtime.Numerics.dll.sources
mcs/class/Facades/System.Runtime.Numerics/TypeForwarders.cs
mcs/class/Facades/System.Runtime.Serialization.Json/AssemblyInfo.cs
mcs/class/Facades/System.Runtime.Serialization.Json/Makefile
mcs/class/Facades/System.Runtime.Serialization.Json/System.Runtime.Serialization.Json.dll.sources
mcs/class/Facades/System.Runtime.Serialization.Json/TypeForwarders.cs
mcs/class/Facades/System.Runtime.Serialization.Primitives/AssemblyInfo.cs
mcs/class/Facades/System.Runtime.Serialization.Primitives/Makefile
mcs/class/Facades/System.Runtime.Serialization.Primitives/System.Runtime.Serialization.Primitives.dll.sources
mcs/class/Facades/System.Runtime.Serialization.Primitives/TypeForwarders.cs
mcs/class/Facades/System.Runtime.Serialization.Xml/AssemblyInfo.cs
mcs/class/Facades/System.Runtime.Serialization.Xml/Makefile
mcs/class/Facades/System.Runtime.Serialization.Xml/System.Runtime.Serialization.Xml.dll.sources
mcs/class/Facades/System.Runtime.Serialization.Xml/TypeForwarders.cs
mcs/class/Facades/System.Runtime/AssemblyInfo.cs
mcs/class/Facades/System.Runtime/Makefile
mcs/class/Facades/System.Runtime/System.Runtime.dll.sources
mcs/class/Facades/System.Runtime/TypeForwarders.cs
mcs/class/Facades/System.Security.Principal/AssemblyInfo.cs
mcs/class/Facades/System.Security.Principal/Makefile
mcs/class/Facades/System.Security.Principal/System.Security.Principal.dll.sources
mcs/class/Facades/System.Security.Principal/TypeForwarders.cs
mcs/class/Facades/System.ServiceModel.Http/AssemblyInfo.cs
mcs/class/Facades/System.ServiceModel.Http/Makefile
mcs/class/Facades/System.ServiceModel.Http/System.ServiceModel.Http.dll.sources
mcs/class/Facades/System.ServiceModel.Http/TypeForwarders.cs
mcs/class/Facades/System.ServiceModel.Primitives/AssemblyInfo.cs
mcs/class/Facades/System.ServiceModel.Primitives/Makefile
mcs/class/Facades/System.ServiceModel.Primitives/System.ServiceModel.Primitives.dll.sources
mcs/class/Facades/System.ServiceModel.Primitives/TypeForwarders.cs
mcs/class/Facades/System.Text.Encoding.Extensions/AssemblyInfo.cs
mcs/class/Facades/System.Text.Encoding.Extensions/Makefile
mcs/class/Facades/System.Text.Encoding.Extensions/System.Text.Encoding.Extensions.dll.sources
mcs/class/Facades/System.Text.Encoding.Extensions/TypeForwarders.cs
mcs/class/Facades/System.Text.Encoding/AssemblyInfo.cs
mcs/class/Facades/System.Text.Encoding/Makefile
mcs/class/Facades/System.Text.Encoding/System.Text.Encoding.dll.sources
mcs/class/Facades/System.Text.Encoding/TypeForwarders.cs
mcs/class/Facades/System.Text.RegularExpressions/AssemblyInfo.cs
mcs/class/Facades/System.Text.RegularExpressions/Makefile
mcs/class/Facades/System.Text.RegularExpressions/System.Text.RegularExpressions.dll.sources
mcs/class/Facades/System.Text.RegularExpressions/TypeForwarders.cs
mcs/class/Facades/System.Threading.Tasks.Parallel/AssemblyInfo.cs
mcs/class/Facades/System.Threading.Tasks.Parallel/Makefile
mcs/class/Facades/System.Threading.Tasks.Parallel/System.Threading.Tasks.Parallel.dll.sources
mcs/class/Facades/System.Threading.Tasks.Parallel/TypeForwarders.cs
mcs/class/Facades/System.Threading.Tasks/AssemblyInfo.cs
mcs/class/Facades/System.Threading.Tasks/Makefile
mcs/class/Facades/System.Threading.Tasks/System.Threading.Tasks.dll.sources
mcs/class/Facades/System.Threading.Tasks/TypeForwarders.cs
mcs/class/Facades/System.Threading/AssemblyInfo.cs
mcs/class/Facades/System.Threading/Makefile
mcs/class/Facades/System.Threading/System.Threading.dll.sources
mcs/class/Facades/System.Threading/TypeForwarders.cs
mcs/class/Facades/System.Xml.ReaderWriter/AssemblyInfo.cs
mcs/class/Facades/System.Xml.ReaderWriter/Makefile
mcs/class/Facades/System.Xml.ReaderWriter/System.Xml.ReaderWriter.dll.sources
mcs/class/Facades/System.Xml.ReaderWriter/TypeForwarders.cs
mcs/class/Facades/System.Xml.XDocument/AssemblyInfo.cs
mcs/class/Facades/System.Xml.XDocument/Makefile
mcs/class/Facades/System.Xml.XDocument/System.Xml.XDocument.dll.sources
mcs/class/Facades/System.Xml.XDocument/TypeForwarders.cs
mcs/class/Facades/System.Xml.XmlSerializer/AssemblyInfo.cs
mcs/class/Facades/System.Xml.XmlSerializer/Makefile
mcs/class/Facades/System.Xml.XmlSerializer/System.Xml.XmlSerializer.dll.sources
mcs/class/Facades/System.Xml.XmlSerializer/TypeForwarders.cs
mcs/class/Makefile
mcs/class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/ConditionFactorExpresion.cs
mcs/class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/DirectoryScanner.cs
mcs/class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/Engine.cs
mcs/class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/Import.cs
mcs/class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/Project.cs
mcs/class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/Toolset.cs
mcs/class/Microsoft.Build.Framework/Microsoft.Build.Framework.dll.sources
mcs/class/Microsoft.Build.Framework/Microsoft.Build.Framework/BuildEventArgs.cs
mcs/class/Microsoft.Build.Framework/Microsoft.Build.Framework/BuildFinishedEventArgs.cs
mcs/class/Microsoft.Build.Framework/Microsoft.Build.Framework/BuildStartedEventArgs.cs
mcs/class/Microsoft.Build.Framework/Microsoft.Build.Framework/BuildStatusEventArgs.cs
mcs/class/Microsoft.Build.Framework/Microsoft.Build.Framework/LazyFormattedBuildEventArgs.cs [new file with mode: 0644]
mcs/class/Microsoft.Build.Tasks/Microsoft.Build.Tasks/GenerateResource.cs
mcs/class/Microsoft.Build.Utilities/Microsoft.Build.Utilities/ToolLocationHelper.cs
mcs/class/Microsoft.Build/Makefile
mcs/class/Microsoft.Build/Microsoft.Build.Logging/ConsoleLogger.cs
mcs/class/Microsoft.Build/Microsoft.Build.Logging/FileLogger.cs
mcs/class/Microsoft.Build/Microsoft.Build_test.dll.sources
mcs/class/Microsoft.Build/Test/Microsoft.Build.Logging/ConsoleLoggerTest.cs [new file with mode: 0644]
mcs/class/Mono.Debugger.Soft/Test/dtest-app.cs
mcs/class/Mono.Debugger.Soft/Test/dtest.cs
mcs/class/System.ComponentModel.DataAnnotations/System.ComponentModel.DataAnnotations/CreditCardAttribute.cs
mcs/class/System.ComponentModel.DataAnnotations/System.ComponentModel.DataAnnotations/EmailAddressAttribute.cs
mcs/class/System.ComponentModel.DataAnnotations/Test/System.ComponentModel.DataAnnotations/CreditCardAttributeTest.cs
mcs/class/System.ComponentModel.DataAnnotations/Test/System.ComponentModel.DataAnnotations/EmailAddressAttributeTest.cs
mcs/class/System.Data.OracleClient/System.Data.OracleClient.Oci/OciCalls.cs
mcs/class/System.Data.OracleClient/System.Data.OracleClient.Oci/OciStatementHandle.cs
mcs/class/System.Data.OracleClient/System.Data.OracleClient/OracleCommand.cs
mcs/class/System.Data.OracleClient/System.Data.OracleClient/OracleParameter.cs
mcs/class/System.ServiceModel.Web/System.Runtime.Serialization.Json/JsonSerializationReader.cs
mcs/class/System.ServiceModel.Web/Test/System.Runtime.Serialization.Json/DataContractJsonSerializerTest.cs
mcs/class/System.Web.Services/System.Web.Services.Description/MessageCollection.cs
mcs/class/System.XML/Test/System.Xml.Xsl/standalone_tests/Makefile
mcs/class/System.XML/Test/System.Xml.Xsl/standalone_tests/xslttest.cs
mcs/class/System.Xml.Linq/System.Xml.Linq/XContainer.cs
mcs/class/System.Xml.Linq/System.Xml.Linq/XElement.cs
mcs/class/System.Xml.Linq/System.Xml.Linq/XName.cs
mcs/class/System.Xml.Linq/System.Xml.Linq/XObject.cs
mcs/class/System/System.CodeDom.Compiler/TempFileCollection.cs
mcs/class/System/System.IO.Compression/CompressionLevel.cs
mcs/class/System/System.Net.NetworkInformation/NetworkChange.cs
mcs/class/System/System.Net/MacProxy.cs
mcs/class/System/Test/Microsoft.CSharp/CSharpCodeProviderTest.cs
mcs/class/corlib/System.Collections/CollectionBase.cs
mcs/class/corlib/System.IO/Path.cs
mcs/class/corlib/System.Security.Principal/WindowsIdentity.cs
mcs/class/corlib/System.Text/UTF8Encoding.cs
mcs/class/corlib/System.Threading.Tasks/Task.cs
mcs/class/corlib/System.Threading.Tasks/TaskContinuation.cs
mcs/class/corlib/System.Threading.Tasks/TpScheduler.cs
mcs/class/corlib/System.Threading/ThreadPool.cs
mcs/class/corlib/System.Threading/Timer.cs
mcs/class/corlib/System/Convert.cs
mcs/class/corlib/System/Enum.cs
mcs/class/corlib/System/MulticastDelegate.cs
mcs/class/corlib/Test/System.Security.Principal/WindowsIdentityTest.cs
mcs/class/corlib/Test/System.Text/UTF8EncodingTest.cs
mcs/class/corlib/Test/System.Threading.Tasks/TaskTest.cs
mcs/class/corlib/Test/System.Threading/ThreadPoolTest.cs
mcs/class/corlib/Test/System.Threading/TimerTest.cs
mcs/class/corlib/Test/System/EnumTest.cs
mcs/class/monodoc/Monodoc/providers/EcmaDoc.cs
mcs/errors/cs0037-8.cs [deleted file]
mcs/errors/cs0165-21.cs [new file with mode: 0644]
mcs/errors/cs0429-3.cs [new file with mode: 0644]
mcs/errors/cs0458-17.cs [new file with mode: 0644]
mcs/errors/known-issues-net_4_5
mcs/jay/jay.vcxproj
mcs/mcs/anonymous.cs
mcs/mcs/assembly.cs
mcs/mcs/assign.cs
mcs/mcs/async.cs
mcs/mcs/attribute.cs
mcs/mcs/cfold.cs
mcs/mcs/class.cs
mcs/mcs/constant.cs
mcs/mcs/context.cs
mcs/mcs/cs-parser.jay
mcs/mcs/cs-tokenizer.cs
mcs/mcs/decl.cs
mcs/mcs/doc.cs
mcs/mcs/driver.cs
mcs/mcs/dynamic.cs
mcs/mcs/ecore.cs
mcs/mcs/enum.cs
mcs/mcs/eval.cs
mcs/mcs/expression.cs
mcs/mcs/field.cs
mcs/mcs/flowanalysis.cs
mcs/mcs/generic.cs
mcs/mcs/ikvm.cs
mcs/mcs/import.cs
mcs/mcs/membercache.cs
mcs/mcs/method.cs
mcs/mcs/modifiers.cs
mcs/mcs/module.cs
mcs/mcs/namespace.cs
mcs/mcs/nullable.cs
mcs/mcs/parameter.cs
mcs/mcs/property.cs
mcs/mcs/report.cs
mcs/mcs/settings.cs
mcs/mcs/statement.cs
mcs/mcs/typespec.cs
mcs/tests/gtest-540.cs
mcs/tests/gtest-579.cs
mcs/tests/gtest-597.cs [new file with mode: 0644]
mcs/tests/gtest-iter-30.cs [new file with mode: 0644]
mcs/tests/gtest-iter-31.cs [new file with mode: 0644]
mcs/tests/test-870.cs [new file with mode: 0644]
mcs/tests/test-871.cs [new file with mode: 0644]
mcs/tests/test-async-52.cs [new file with mode: 0644]
mcs/tests/ver-il-net_4_5.xml
mcs/tools/corcompare/corcompare.sln
mcs/tools/corcompare/mono-api-html/ApiDiff.cs [new file with mode: 0644]
mcs/tools/corcompare/mono-api-html/AssemblyComparer.cs [new file with mode: 0644]
mcs/tools/corcompare/mono-api-html/ClassComparer.cs [new file with mode: 0644]
mcs/tools/corcompare/mono-api-html/Comparer.cs [new file with mode: 0644]
mcs/tools/corcompare/mono-api-html/ConstructorComparer.cs [new file with mode: 0644]
mcs/tools/corcompare/mono-api-html/EventComparer.cs [new file with mode: 0644]
mcs/tools/corcompare/mono-api-html/FieldComparer.cs [new file with mode: 0644]
mcs/tools/corcompare/mono-api-html/Helpers.cs [new file with mode: 0644]
mcs/tools/corcompare/mono-api-html/InterfaceComparer.cs [new file with mode: 0644]
mcs/tools/corcompare/mono-api-html/MemberComparer.cs [new file with mode: 0644]
mcs/tools/corcompare/mono-api-html/MethodComparer.cs [new file with mode: 0644]
mcs/tools/corcompare/mono-api-html/NamespaceComparer.cs [new file with mode: 0644]
mcs/tools/corcompare/mono-api-html/PropertyComparer.cs [new file with mode: 0644]
mcs/tools/corcompare/mono-api-html/mono-api-html.csproj [new file with mode: 0644]
mcs/tools/corcompare/mono-api-info.csproj
mcs/tools/mdbrebase/mdbrebase.cs
mcs/tools/mdoc/Mono.Documentation/monodocer.cs
mcs/tools/mdoc/Test/DocTest-v1.cs
mcs/tools/mdoc/Test/en.expected.delete/Mono.DocTest/Widget.xml
mcs/tools/mdoc/Test/en.expected.importslashdoc/Mono.DocTest/Widget.xml
mcs/tools/mdoc/Test/en.expected.since/Mono.DocTest/Widget.xml
mcs/tools/mdoc/Test/en.expected/Mono.DocTest/Widget.xml
mcs/tools/mdoc/Test/html.expected/Mono.DocTest/Widget.html
mcs/tools/mdoc/Test/msxdoc-expected.importslashdoc.xml
mcs/tools/mkbundle/template_z.c
mcs/tools/security/sn.cs
mcs/tools/tuner/Mono.Tuner/AdjustVisibility.cs
mono/cil/opcode.def
mono/metadata/assembly.c
mono/metadata/boehm-gc.c
mono/metadata/cil-coff.h
mono/metadata/image.c
mono/metadata/locales.c
mono/metadata/metadata-internals.h
mono/metadata/monitor.c
mono/metadata/sgen-alloc.c
mono/metadata/sgen-archdep.h
mono/metadata/sgen-gc.c
mono/metadata/sgen-gc.h
mono/metadata/sgen-marksweep.c
mono/metadata/threadpool.c
mono/mini/aot-compiler.c
mono/mini/debugger-agent.c
mono/mini/dwarfwriter.c
mono/mini/exceptions-amd64.c
mono/mini/exceptions-x86.c
mono/mini/method-to-ir.c
mono/mini/mini-trampolines.c
mono/mini/mini.c
mono/mini/mini.h
mono/mini/regalloc2.c
mono/mini/xdebug.c
mono/tests/Makefile.am
mono/tests/marshal.cs
mono/utils/Makefile.am
mono/utils/dlmalloc.c
mono/utils/mono-compiler.h
mono/utils/mono-hwcap-sparc.c
mono/utils/mono-tls.c [new file with mode: 0644]
mono/utils/mono-tls.h
msvc/eglib.vcxproj
msvc/genmdesc.vcxproj
msvc/libgc.vcxproj
msvc/libmono.vcxproj
msvc/libmonoruntime.vcxproj
msvc/libmonoutils.vcxproj
msvc/libtest.vcxproj
msvc/mono.vcxproj
msvc/monodiet.vcxproj
msvc/monodis.vcxproj
msvc/monograph.vcxproj
msvc/monoposixhelper.vcxproj
msvc/pedump.vcxproj
msvc/profiler-codeanalyst.vcxproj
msvc/profiler-cov.vcxproj
msvc/profiler-logging.vcxproj
msvc/profiler-vtune.vcxproj
msvc/test-invoke.vcxproj
msvc/test-metadata.vcxproj
msvc/test_eglib.vcxproj
msvc/teste.vcxproj
support/Makefile.am
support/mac-reachability.c [deleted file]

index 6d18c6c58a3cc2dccd5a2b68f4e1d1973d13d5b4..c1a09f59f57d0992922644eb7675307bd25c1445 100644 (file)
@@ -1,23 +1,15 @@
+MCS_BUILD_DIR = ../../build
+
 thisdir = class/Facades
 
-net_4_5_SUBDIRS = System.Runtime System.Linq System.Xml.XmlSerializer \
-       System.ServiceModel.Primitives System.Xml.ReaderWriter System.Diagnostics.Debug \
-       System.Runtime.Extensions System.Diagnostics.Tools System.Collections \
-       System.ComponentModel.EventBasedAsync System.ComponentModel System.ObjectModel \
-       System.Text.RegularExpressions System.Threading System.Runtime.InteropServices \
-       System.Reflection System.Globalization System.IO System.Reflection.Primitives \
-       System.Resources.ResourceManager System.Security.Principal System.Text.Encoding \
-       System.Text.Encoding.Extensions System.Linq.Queryable System.Linq.Expressions \
-       System.Net.Primitives System.Net.Requests System.Net.NetworkInformation \
-       System.Runtime.Serialization.Primitives System.Runtime.Serialization.Xml \
-       System.Runtime.Serialization.Json System.ServiceModel.Http \
-       System.Xml.XDocument System.Threading.Tasks System.Diagnostics.Contracts \
-       System.Dynamic.Runtime System.ComponentModel.Annotations System.Runtime.Numerics \
-       System.Linq.Parallel System.Collections.Concurrent System.Threading.Tasks.Parallel \
-       System.Reflection.Extensions
-
-SUBDIRS = $(net_4_5_SUBDIRS)
-
-include ../../build/rules.make
+monotouch_SUBDIRS = System.Collections.Concurrent System.Collections System.ComponentModel.Annotations System.ComponentModel.EventBasedAsync System.ComponentModel System.Diagnostics.Contracts System.Diagnostics.Debug System.Diagnostics.Tools System.Globalization System.IO System.Linq.Expressions System.Linq.Parallel System.Linq.Queryable System.Linq System.Net.NetworkInformation System.Net.Primitives System.Net.Requests System.ObjectModel System.Reflection.Extensions System.Reflection.Primitives System.Reflection System.Resources.ResourceManager System.Runtime.Extensions System.Runtime.InteropServices System.Runtime.Numerics System.Runtime.Serialization.Json System.Runtime.Serialization.Primitives System.Runtime.Serialization.Xml System.Runtime System.Security.Principal System.ServiceModel.Http System.ServiceModel.Primitives System.Text.Encoding.Extensions System.Text.Encoding System.Text.RegularExpressions System.Threading.Tasks.Parallel System.Threading.Tasks System.Threading System.Xml.ReaderWriter System.Xml.XDocument System.Xml.XmlSerializer
+
+net_4_5_SUBDIRS = $(monotouch_SUBDIRS) System.Dynamic.Runtime System.Reflection.Emit.ILGeneration System.Reflection.Emit.Lightweight System.Reflection.Emit
+
+monodroid_SUBDIRS = $(net_4_5_SUBDIRS)
+
+include $(MCS_BUILD_DIR)/rules.make
 
 dist-local: dist-default
+
+
index 685be8042b00d3a0cd124dfe36b361ee966f16b6..b14058779a3979974b495d28df8da421532a644e 100644 (file)
@@ -1,21 +1,16 @@
-//
-// TypeForwarders.cs
-//
-// Author:
-//       Martin Baulig <martin.baulig@xamarin.com>
-//
+// 
 // Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)
-//
+// 
 // Permission is hereby granted, free of charge, to any person obtaining a copy
 // of this software and associated documentation files (the "Software"), to deal
 // in the Software without restriction, including without limitation the rights
 // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 // copies of the Software, and to permit persons to whom the Software is
 // furnished to do so, subject to the following conditions:
-//
+// 
 // The above copyright notice and this permission notice shall be included in
 // all copies or substantial portions of the Software.
-//
+// 
 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
@@ -23,6 +18,7 @@
 // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 // THE SOFTWARE.
+// 
 
 using System;
 using System.Reflection;
@@ -31,10 +27,9 @@ using System.Runtime.CompilerServices;
 [assembly: AssemblyTitle ("System.Collections.Concurrent.dll")]
 [assembly: AssemblyDescription ("System.Collections.Concurrent.dll")]
 [assembly: AssemblyDefaultAlias ("System.Collections.Concurrent.dll")]
-
-[assembly: AssemblyCompany (Consts.MonoCompany)]
-[assembly: AssemblyProduct (Consts.MonoProduct)]
-[assembly: AssemblyCopyright (Consts.MonoCopyright)]
+[assembly: AssemblyCompany ("Xamarin, Inc.")]
+[assembly: AssemblyProduct ("Mono Common Language Infrastructure")]
+[assembly: AssemblyCopyright ("Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)")]
 [assembly: AssemblyVersion ("4.0.0.0")]
 [assembly: AssemblyInformationalVersion ("4.0.0.0")]
 [assembly: AssemblyFileVersion ("4.0.0.0")]
@@ -42,3 +37,5 @@ using System.Runtime.CompilerServices;
 [assembly: AssemblyKeyFile ("../../msfinal.pub")]
 
 [assembly: ReferenceAssembly]
+
+
index bb8e26bca9e315c96156a2c65a301b3c1d5bfafa..d0e3fdf6086d18e28024f7e9cb378817a1829753 100644 (file)
@@ -1,15 +1,22 @@
+MCS_BUILD_DIR = ../../../build
+
 thisdir = class/Facades/System.Collections.Concurrent
 SUBDIRS = 
-include ../../../build/rules.make
+include $(MCS_BUILD_DIR)/rules.make
 
 LIBRARY_SUBDIR = Facades
 LIBRARY_INSTALL_DIR = $(mono_libdir)/mono/$(FRAMEWORK_VERSION)/Facades
 
 LIBRARY = System.Collections.Concurrent.dll
-LIB_MCS_FLAGS = /r:System
+
+KEY_FILE = ../../msfinal.pub
+SIGN_FLAGS = /delaysign /keyfile:$(KEY_FILE) /nowarn:1616,1699
+LIB_MCS_FLAGS = $(SIGN_FLAGS) /r:mscorlib /r:System
 
 PLATFORM_DEBUG_FLAGS =
 
 NO_TEST = yes
 
-include ../../../build/library.make
+include $(MCS_BUILD_DIR)/library.make
+
+
index 4103861ffa5ec43928d794d8ddbfa54d727dbc8c..662e4042950b98d6e46f85ebbca2b885517f81b8 100644 (file)
@@ -1,21 +1,16 @@
-//
-// TypeForwarders.cs
-//
-// Author:
-//       Martin Baulig <martin.baulig@xamarin.com>
-//
+// 
 // Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)
-//
+// 
 // Permission is hereby granted, free of charge, to any person obtaining a copy
 // of this software and associated documentation files (the "Software"), to deal
 // in the Software without restriction, including without limitation the rights
 // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 // copies of the Software, and to permit persons to whom the Software is
 // furnished to do so, subject to the following conditions:
-//
+// 
 // The above copyright notice and this permission notice shall be included in
 // all copies or substantial portions of the Software.
-//
+// 
 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
 // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 // THE SOFTWARE.
+// 
 
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Collections.Concurrent.BlockingCollection<>))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Collections.Concurrent.ConcurrentBag<>))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Collections.Concurrent.ConcurrentDictionary<,>))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Collections.Concurrent.IProducerConsumerCollection<>))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Collections.Concurrent.ConcurrentQueue<>))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Collections.Concurrent.ConcurrentStack<>))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Collections.Concurrent.Partitioner<>))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Collections.Concurrent.EnumerablePartitionerOptions))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Collections.Concurrent.IProducerConsumerCollection<>))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Collections.Concurrent.OrderablePartitioner<>))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Collections.Concurrent.Partitioner))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Collections.Concurrent.EnumerablePartitionerOptions))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Collections.Concurrent.Partitioner<>))]
 
index a96857e7f76bb6a1d4d7a28f4c86ae4fbe55c63a..e3f037ff8e8a96531cf2924b4351e213ea6af872 100644 (file)
@@ -1,21 +1,16 @@
-//
-// TypeForwarders.cs
-//
-// Author:
-//       Martin Baulig <martin.baulig@xamarin.com>
-//
+// 
 // Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)
-//
+// 
 // Permission is hereby granted, free of charge, to any person obtaining a copy
 // of this software and associated documentation files (the "Software"), to deal
 // in the Software without restriction, including without limitation the rights
 // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 // copies of the Software, and to permit persons to whom the Software is
 // furnished to do so, subject to the following conditions:
-//
+// 
 // The above copyright notice and this permission notice shall be included in
 // all copies or substantial portions of the Software.
-//
+// 
 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
@@ -23,6 +18,7 @@
 // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 // THE SOFTWARE.
+// 
 
 using System;
 using System.Reflection;
@@ -31,10 +27,9 @@ using System.Runtime.CompilerServices;
 [assembly: AssemblyTitle ("System.Collections.dll")]
 [assembly: AssemblyDescription ("System.Collections.dll")]
 [assembly: AssemblyDefaultAlias ("System.Collections.dll")]
-
-[assembly: AssemblyCompany (Consts.MonoCompany)]
-[assembly: AssemblyProduct (Consts.MonoProduct)]
-[assembly: AssemblyCopyright (Consts.MonoCopyright)]
+[assembly: AssemblyCompany ("Xamarin, Inc.")]
+[assembly: AssemblyProduct ("Mono Common Language Infrastructure")]
+[assembly: AssemblyCopyright ("Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)")]
 [assembly: AssemblyVersion ("4.0.0.0")]
 [assembly: AssemblyInformationalVersion ("4.0.0.0")]
 [assembly: AssemblyFileVersion ("4.0.0.0")]
@@ -42,3 +37,5 @@ using System.Runtime.CompilerServices;
 [assembly: AssemblyKeyFile ("../../msfinal.pub")]
 
 [assembly: ReferenceAssembly]
+
+
index 58797f283e28aaa1baf033025abbbf4a66ecbd74..7169319ecf780a798155d88dc287ff3cd5bc884f 100644 (file)
@@ -1,15 +1,22 @@
+MCS_BUILD_DIR = ../../../build
+
 thisdir = class/Facades/System.Collections
 SUBDIRS = 
-include ../../../build/rules.make
+include $(MCS_BUILD_DIR)/rules.make
 
 LIBRARY_SUBDIR = Facades
 LIBRARY_INSTALL_DIR = $(mono_libdir)/mono/$(FRAMEWORK_VERSION)/Facades
 
 LIBRARY = System.Collections.dll
-LIB_MCS_FLAGS = /r:System /r:System.Core
+
+KEY_FILE = ../../msfinal.pub
+SIGN_FLAGS = /delaysign /keyfile:$(KEY_FILE) /nowarn:1616,1699
+LIB_MCS_FLAGS = $(SIGN_FLAGS) /r:mscorlib /r:System /r:System.Core
 
 PLATFORM_DEBUG_FLAGS =
 
 NO_TEST = yes
 
-include ../../../build/library.make
+include $(MCS_BUILD_DIR)/library.make
+
+
index 74532efb2ea75c271c00a4aeafcc07fa77ce69de..8e33d4ddeae92bde7aa8afd994db5d90d6af18d9 100644 (file)
@@ -1,3 +1,3 @@
-AssemblyInfo.cs
 TypeForwarders.cs
-../../../build/common/Consts.cs
+AssemblyInfo.cs
+
index 716fe5c71dc5d579d8c8ba57af2f5434749c31ea..9a2b8f18f67a6000f6da3f19910b131c32e7c63c 100644 (file)
@@ -1,21 +1,16 @@
-//
-// TypeForwarders.cs
-//
-// Author:
-//       Martin Baulig <martin.baulig@xamarin.com>
-//
+// 
 // Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)
-//
+// 
 // Permission is hereby granted, free of charge, to any person obtaining a copy
 // of this software and associated documentation files (the "Software"), to deal
 // in the Software without restriction, including without limitation the rights
 // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 // copies of the Software, and to permit persons to whom the Software is
 // furnished to do so, subject to the following conditions:
-//
+// 
 // The above copyright notice and this permission notice shall be included in
 // all copies or substantial portions of the Software.
-//
+// 
 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
 // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 // THE SOFTWARE.
+// 
 
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Collections.Generic.LinkedList<>))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Collections.Generic.LinkedListNode<>))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Collections.Generic.Queue<>))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Collections.Generic.Stack<>))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Collections.BitArray))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Collections.Generic.Comparer<>))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Collections.Generic.Dictionary<,>))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Collections.Generic.EqualityComparer<>))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Collections.Generic.List<>))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Collections.Generic.HashSet<>))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Collections.Generic.LinkedList<>))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Collections.Generic.LinkedListNode<>))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Collections.Generic.List<>))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Collections.Generic.Queue<>))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Collections.Generic.SortedDictionary<,>))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Collections.Generic.SortedSet<>))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Collections.Generic.Stack<>))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Collections.StructuralComparisons))]
 
index 8aa8cbcdc165e013010ac5d66c89ccf097830e1a..3ea660a30b05e23a78602e51ad45d6602851e6d4 100644 (file)
@@ -1,21 +1,16 @@
-//
-// TypeForwarders.cs
-//
-// Author:
-//       Martin Baulig <martin.baulig@xamarin.com>
-//
+// 
 // Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)
-//
+// 
 // Permission is hereby granted, free of charge, to any person obtaining a copy
 // of this software and associated documentation files (the "Software"), to deal
 // in the Software without restriction, including without limitation the rights
 // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 // copies of the Software, and to permit persons to whom the Software is
 // furnished to do so, subject to the following conditions:
-//
+// 
 // The above copyright notice and this permission notice shall be included in
 // all copies or substantial portions of the Software.
-//
+// 
 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
@@ -23,6 +18,7 @@
 // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 // THE SOFTWARE.
+// 
 
 using System;
 using System.Reflection;
@@ -31,10 +27,9 @@ using System.Runtime.CompilerServices;
 [assembly: AssemblyTitle ("System.ComponentModel.Annotations.dll")]
 [assembly: AssemblyDescription ("System.ComponentModel.Annotations.dll")]
 [assembly: AssemblyDefaultAlias ("System.ComponentModel.Annotations.dll")]
-
-[assembly: AssemblyCompany (Consts.MonoCompany)]
-[assembly: AssemblyProduct (Consts.MonoProduct)]
-[assembly: AssemblyCopyright (Consts.MonoCopyright)]
+[assembly: AssemblyCompany ("Xamarin, Inc.")]
+[assembly: AssemblyProduct ("Mono Common Language Infrastructure")]
+[assembly: AssemblyCopyright ("Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)")]
 [assembly: AssemblyVersion ("4.0.0.0")]
 [assembly: AssemblyInformationalVersion ("4.0.0.0")]
 [assembly: AssemblyFileVersion ("4.0.0.0")]
@@ -42,3 +37,5 @@ using System.Runtime.CompilerServices;
 [assembly: AssemblyKeyFile ("../../msfinal.pub")]
 
 [assembly: ReferenceAssembly]
+
+
index 2d9f7b1b404d15e44174dca3f568358411f85194..c3bc1f9dc53763320e10b3dd41688d3316dc5097 100644 (file)
@@ -1,15 +1,22 @@
+MCS_BUILD_DIR = ../../../build
+
 thisdir = class/Facades/System.ComponentModel.Annotations
 SUBDIRS = 
-include ../../../build/rules.make
+include $(MCS_BUILD_DIR)/rules.make
 
 LIBRARY_SUBDIR = Facades
 LIBRARY_INSTALL_DIR = $(mono_libdir)/mono/$(FRAMEWORK_VERSION)/Facades
 
 LIBRARY = System.ComponentModel.Annotations.dll
-LIB_MCS_FLAGS = /r:System.ComponentModel.DataAnnotations
+
+KEY_FILE = ../../msfinal.pub
+SIGN_FLAGS = /delaysign /keyfile:$(KEY_FILE) /nowarn:1616,1699
+LIB_MCS_FLAGS = $(SIGN_FLAGS) /r:mscorlib /r:System.ComponentModel.DataAnnotations
 
 PLATFORM_DEBUG_FLAGS =
 
 NO_TEST = yes
 
-include ../../../build/library.make
+include $(MCS_BUILD_DIR)/library.make
+
+
index 0bc80b3456a2f385f4821d2b68b6a546ab8a738c..e7c1feff498541e03e31e38bfd783d2000018e0d 100644 (file)
@@ -1,21 +1,16 @@
-//
-// TypeForwarders.cs
-//
-// Author:
-//       Martin Baulig <martin.baulig@xamarin.com>
-//
+// 
 // Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)
-//
+// 
 // Permission is hereby granted, free of charge, to any person obtaining a copy
 // of this software and associated documentation files (the "Software"), to deal
 // in the Software without restriction, including without limitation the rights
 // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 // copies of the Software, and to permit persons to whom the Software is
 // furnished to do so, subject to the following conditions:
-//
+// 
 // The above copyright notice and this permission notice shall be included in
 // all copies or substantial portions of the Software.
-//
+// 
 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
 // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 // THE SOFTWARE.
+// 
 
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ComponentModel.DataAnnotations.AssociationAttribute))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ComponentModel.DataAnnotations.ConcurrencyCheckAttribute))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ComponentModel.DataAnnotations.ValidationAttribute))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ComponentModel.DataAnnotations.CustomValidationAttribute))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ComponentModel.DataAnnotations.DataType))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ComponentModel.DataAnnotations.DataTypeAttribute))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ComponentModel.DataAnnotations.RangeAttribute))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ComponentModel.DataAnnotations.RegularExpressionAttribute))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ComponentModel.DataAnnotations.RequiredAttribute))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ComponentModel.DataAnnotations.Schema.DatabaseGeneratedAttribute))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ComponentModel.DataAnnotations.Schema.DatabaseGeneratedOption))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ComponentModel.DataAnnotations.StringLengthAttribute))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ComponentModel.DataAnnotations.TimestampAttribute))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ComponentModel.DataAnnotations.UIHintAttribute))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ComponentModel.DataAnnotations.ValidationAttribute))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ComponentModel.DataAnnotations.ValidationContext))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ComponentModel.DataAnnotations.ValidationException))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ComponentModel.DataAnnotations.ValidationResult))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ComponentModel.DataAnnotations.Validator))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ComponentModel.DataAnnotations.Schema.DatabaseGeneratedAttribute))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ComponentModel.DataAnnotations.Schema.DatabaseGeneratedOption))]
 
index 85cfdb9cc122aaefa43c4203b00d94fa55492b22..02d9d9307f400b9ad46f90956ece6e2788bb9363 100644 (file)
@@ -1,21 +1,16 @@
-//
-// TypeForwarders.cs
-//
-// Author:
-//       Martin Baulig <martin.baulig@xamarin.com>
-//
+// 
 // Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)
-//
+// 
 // Permission is hereby granted, free of charge, to any person obtaining a copy
 // of this software and associated documentation files (the "Software"), to deal
 // in the Software without restriction, including without limitation the rights
 // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 // copies of the Software, and to permit persons to whom the Software is
 // furnished to do so, subject to the following conditions:
-//
+// 
 // The above copyright notice and this permission notice shall be included in
 // all copies or substantial portions of the Software.
-//
+// 
 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
@@ -23,6 +18,7 @@
 // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 // THE SOFTWARE.
+// 
 
 using System;
 using System.Reflection;
@@ -31,10 +27,9 @@ using System.Runtime.CompilerServices;
 [assembly: AssemblyTitle ("System.ComponentModel.EventBasedAsync.dll")]
 [assembly: AssemblyDescription ("System.ComponentModel.EventBasedAsync.dll")]
 [assembly: AssemblyDefaultAlias ("System.ComponentModel.EventBasedAsync.dll")]
-
-[assembly: AssemblyCompany (Consts.MonoCompany)]
-[assembly: AssemblyProduct (Consts.MonoProduct)]
-[assembly: AssemblyCopyright (Consts.MonoCopyright)]
+[assembly: AssemblyCompany ("Xamarin, Inc.")]
+[assembly: AssemblyProduct ("Mono Common Language Infrastructure")]
+[assembly: AssemblyCopyright ("Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)")]
 [assembly: AssemblyVersion ("4.0.0.0")]
 [assembly: AssemblyInformationalVersion ("4.0.0.0")]
 [assembly: AssemblyFileVersion ("4.0.0.0")]
@@ -42,3 +37,5 @@ using System.Runtime.CompilerServices;
 [assembly: AssemblyKeyFile ("../../msfinal.pub")]
 
 [assembly: ReferenceAssembly]
+
+
index 479bd2000a4876f62b808da4717c0374d2d52e8e..acd577cbc3bbe03739dafa61e5d47b0797967bef 100644 (file)
@@ -1,15 +1,22 @@
+MCS_BUILD_DIR = ../../../build
+
 thisdir = class/Facades/System.ComponentModel.EventBasedAsync
 SUBDIRS = 
-include ../../../build/rules.make
+include $(MCS_BUILD_DIR)/rules.make
 
 LIBRARY_SUBDIR = Facades
 LIBRARY_INSTALL_DIR = $(mono_libdir)/mono/$(FRAMEWORK_VERSION)/Facades
 
 LIBRARY = System.ComponentModel.EventBasedAsync.dll
-LIB_MCS_FLAGS = /r:System
+
+KEY_FILE = ../../msfinal.pub
+SIGN_FLAGS = /delaysign /keyfile:$(KEY_FILE) /nowarn:1616,1699
+LIB_MCS_FLAGS = $(SIGN_FLAGS) /r:mscorlib /r:System
 
 PLATFORM_DEBUG_FLAGS =
 
 NO_TEST = yes
 
-include ../../../build/library.make
+include $(MCS_BUILD_DIR)/library.make
+
+
index df5c85a6daca823368e5fef3e778f17655fcda3f..eeef8ec2c5def0d0beb792ab480ffa1998ccd9d2 100644 (file)
@@ -1,21 +1,16 @@
-//
-// TypeForwarders.cs
-//
-// Author:
-//       Martin Baulig <martin.baulig@xamarin.com>
-//
+// 
 // Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)
-//
+// 
 // Permission is hereby granted, free of charge, to any person obtaining a copy
 // of this software and associated documentation files (the "Software"), to deal
 // in the Software without restriction, including without limitation the rights
 // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 // copies of the Software, and to permit persons to whom the Software is
 // furnished to do so, subject to the following conditions:
-//
+// 
 // The above copyright notice and this permission notice shall be included in
 // all copies or substantial portions of the Software.
-//
+// 
 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
@@ -23,6 +18,7 @@
 // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 // THE SOFTWARE.
+// 
 
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ComponentModel.AsyncCompletedEventArgs))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ComponentModel.AsyncCompletedEventHandler))]
index 828b771a27568b9b67799a086279c523c9ca170f..944626f1d5dde8dce0039db6a9244b52de1bc19d 100644 (file)
@@ -1,21 +1,16 @@
-//
-// TypeForwarders.cs
-//
-// Author:
-//       Martin Baulig <martin.baulig@xamarin.com>
-//
+// 
 // Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)
-//
+// 
 // Permission is hereby granted, free of charge, to any person obtaining a copy
 // of this software and associated documentation files (the "Software"), to deal
 // in the Software without restriction, including without limitation the rights
 // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 // copies of the Software, and to permit persons to whom the Software is
 // furnished to do so, subject to the following conditions:
-//
+// 
 // The above copyright notice and this permission notice shall be included in
 // all copies or substantial portions of the Software.
-//
+// 
 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
@@ -23,6 +18,7 @@
 // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 // THE SOFTWARE.
+// 
 
 using System;
 using System.Reflection;
@@ -31,10 +27,9 @@ using System.Runtime.CompilerServices;
 [assembly: AssemblyTitle ("System.ComponentModel.dll")]
 [assembly: AssemblyDescription ("System.ComponentModel.dll")]
 [assembly: AssemblyDefaultAlias ("System.ComponentModel.dll")]
-
-[assembly: AssemblyCompany (Consts.MonoCompany)]
-[assembly: AssemblyProduct (Consts.MonoProduct)]
-[assembly: AssemblyCopyright (Consts.MonoCopyright)]
+[assembly: AssemblyCompany ("Xamarin, Inc.")]
+[assembly: AssemblyProduct ("Mono Common Language Infrastructure")]
+[assembly: AssemblyCopyright ("Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)")]
 [assembly: AssemblyVersion ("4.0.0.0")]
 [assembly: AssemblyInformationalVersion ("4.0.0.0")]
 [assembly: AssemblyFileVersion ("4.0.0.0")]
@@ -42,3 +37,5 @@ using System.Runtime.CompilerServices;
 [assembly: AssemblyKeyFile ("../../msfinal.pub")]
 
 [assembly: ReferenceAssembly]
+
+
index 680660269dd9107aa973fdaf79f601772eeac7cc..715e92db80736163df12db8a3e7ded8d5e7178fc 100644 (file)
@@ -1,15 +1,22 @@
+MCS_BUILD_DIR = ../../../build
+
 thisdir = class/Facades/System.ComponentModel
 SUBDIRS = 
-include ../../../build/rules.make
+include $(MCS_BUILD_DIR)/rules.make
 
 LIBRARY_SUBDIR = Facades
 LIBRARY_INSTALL_DIR = $(mono_libdir)/mono/$(FRAMEWORK_VERSION)/Facades
 
 LIBRARY = System.ComponentModel.dll
-LIB_MCS_FLAGS = /r:System
+
+KEY_FILE = ../../msfinal.pub
+SIGN_FLAGS = /delaysign /keyfile:$(KEY_FILE) /nowarn:1616,1699
+LIB_MCS_FLAGS = $(SIGN_FLAGS) /r:mscorlib /r:System
 
 PLATFORM_DEBUG_FLAGS =
 
 NO_TEST = yes
 
-include ../../../build/library.make
+include $(MCS_BUILD_DIR)/library.make
+
+
index 74532efb2ea75c271c00a4aeafcc07fa77ce69de..8e33d4ddeae92bde7aa8afd994db5d90d6af18d9 100644 (file)
@@ -1,3 +1,3 @@
-AssemblyInfo.cs
 TypeForwarders.cs
-../../../build/common/Consts.cs
+AssemblyInfo.cs
+
index 238ceac40d9f029bef1f421f909e34f8adb1d362..24e97c6fe76cd73ef040ce018af3d0e65c27e980 100644 (file)
@@ -1,21 +1,16 @@
-//
-// TypeForwarders.cs
-//
-// Author:
-//       Martin Baulig <martin.baulig@xamarin.com>
-//
+// 
 // Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)
-//
+// 
 // Permission is hereby granted, free of charge, to any person obtaining a copy
 // of this software and associated documentation files (the "Software"), to deal
 // in the Software without restriction, including without limitation the rights
 // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 // copies of the Software, and to permit persons to whom the Software is
 // furnished to do so, subject to the following conditions:
-//
+// 
 // The above copyright notice and this permission notice shall be included in
 // all copies or substantial portions of the Software.
-//
+// 
 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
@@ -23,6 +18,7 @@
 // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 // THE SOFTWARE.
+// 
 
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ComponentModel.CancelEventArgs))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ComponentModel.IChangeTracking))]
index 2fc9947025957ab5711ee8d175505e7510821dca..55e9ec069d3c3825cc8012beb4b89c5308a7efb0 100644 (file)
@@ -1,21 +1,16 @@
-//
-// TypeForwarders.cs
-//
-// Author:
-//       Martin Baulig <martin.baulig@xamarin.com>
-//
+// 
 // Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)
-//
+// 
 // Permission is hereby granted, free of charge, to any person obtaining a copy
 // of this software and associated documentation files (the "Software"), to deal
 // in the Software without restriction, including without limitation the rights
 // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 // copies of the Software, and to permit persons to whom the Software is
 // furnished to do so, subject to the following conditions:
-//
+// 
 // The above copyright notice and this permission notice shall be included in
 // all copies or substantial portions of the Software.
-//
+// 
 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
@@ -23,6 +18,7 @@
 // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 // THE SOFTWARE.
+// 
 
 using System;
 using System.Reflection;
@@ -31,10 +27,9 @@ using System.Runtime.CompilerServices;
 [assembly: AssemblyTitle ("System.Diagnostics.Contracts.dll")]
 [assembly: AssemblyDescription ("System.Diagnostics.Contracts.dll")]
 [assembly: AssemblyDefaultAlias ("System.Diagnostics.Contracts.dll")]
-
-[assembly: AssemblyCompany (Consts.MonoCompany)]
-[assembly: AssemblyProduct (Consts.MonoProduct)]
-[assembly: AssemblyCopyright (Consts.MonoCopyright)]
+[assembly: AssemblyCompany ("Xamarin, Inc.")]
+[assembly: AssemblyProduct ("Mono Common Language Infrastructure")]
+[assembly: AssemblyCopyright ("Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)")]
 [assembly: AssemblyVersion ("4.0.0.0")]
 [assembly: AssemblyInformationalVersion ("4.0.0.0")]
 [assembly: AssemblyFileVersion ("4.0.0.0")]
@@ -42,3 +37,5 @@ using System.Runtime.CompilerServices;
 [assembly: AssemblyKeyFile ("../../msfinal.pub")]
 
 [assembly: ReferenceAssembly]
+
+
index a6ffb84934b733fd21199a638d6ea217726fbc0a..24336c082b12e9fff7a68fbf570da0fa7b353600 100644 (file)
@@ -1,15 +1,22 @@
+MCS_BUILD_DIR = ../../../build
+
 thisdir = class/Facades/System.Diagnostics.Contracts
 SUBDIRS = 
-include ../../../build/rules.make
+include $(MCS_BUILD_DIR)/rules.make
 
 LIBRARY_SUBDIR = Facades
 LIBRARY_INSTALL_DIR = $(mono_libdir)/mono/$(FRAMEWORK_VERSION)/Facades
 
 LIBRARY = System.Diagnostics.Contracts.dll
-LIB_MCS_FLAGS =
+
+KEY_FILE = ../../msfinal.pub
+SIGN_FLAGS = /delaysign /keyfile:$(KEY_FILE) /nowarn:1616,1699
+LIB_MCS_FLAGS = $(SIGN_FLAGS) /r:mscorlib
 
 PLATFORM_DEBUG_FLAGS =
 
 NO_TEST = yes
 
-include ../../../build/library.make
+include $(MCS_BUILD_DIR)/library.make
+
+
index ac2cc3dc37569b7e9656e93f1f62633efe6214ff..961cfe8bfe668f0ca600d7e4d392862929920e32 100644 (file)
@@ -1,21 +1,16 @@
-//
-// TypeForwarders.cs
-//
-// Author:
-//       Martin Baulig <martin.baulig@xamarin.com>
-//
+// 
 // Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)
-//
+// 
 // Permission is hereby granted, free of charge, to any person obtaining a copy
 // of this software and associated documentation files (the "Software"), to deal
 // in the Software without restriction, including without limitation the rights
 // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 // copies of the Software, and to permit persons to whom the Software is
 // furnished to do so, subject to the following conditions:
-//
+// 
 // The above copyright notice and this permission notice shall be included in
 // all copies or substantial portions of the Software.
-//
+// 
 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
 // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 // THE SOFTWARE.
+// 
 
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Diagnostics.Contracts.Contract))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Diagnostics.Contracts.ContractAbbreviatorAttribute))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Diagnostics.Contracts.ContractArgumentValidatorAttribute))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Diagnostics.Contracts.ContractClassAttribute))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Diagnostics.Contracts.ContractClassForAttribute))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Diagnostics.Contracts.ContractFailedEventArgs))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Diagnostics.Contracts.ContractFailureKind))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Diagnostics.Contracts.ContractInvariantMethodAttribute))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Diagnostics.Contracts.ContractOptionAttribute))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Diagnostics.Contracts.ContractPublicPropertyNameAttribute))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Diagnostics.Contracts.ContractReferenceAssemblyAttribute))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Diagnostics.Contracts.ContractRuntimeIgnoredAttribute))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Diagnostics.Contracts.ContractVerificationAttribute))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Diagnostics.Contracts.PureAttribute))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Diagnostics.Contracts.ContractFailedEventArgs))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Diagnostics.Contracts.ContractAbbreviatorAttribute))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Diagnostics.Contracts.ContractArgumentValidatorAttribute))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Diagnostics.Contracts.ContractOptionAttribute))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.CompilerServices.ContractHelper))]
 
index f1e987d020ad868ece9926f4d341584dbd05dda1..a7cbf21727b35a7c92446a5489227658fa9efb56 100644 (file)
@@ -1,21 +1,16 @@
-//
-// TypeForwarders.cs
-//
-// Author:
-//       Martin Baulig <martin.baulig@xamarin.com>
-//
+// 
 // Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)
-//
+// 
 // Permission is hereby granted, free of charge, to any person obtaining a copy
 // of this software and associated documentation files (the "Software"), to deal
 // in the Software without restriction, including without limitation the rights
 // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 // copies of the Software, and to permit persons to whom the Software is
 // furnished to do so, subject to the following conditions:
-//
+// 
 // The above copyright notice and this permission notice shall be included in
 // all copies or substantial portions of the Software.
-//
+// 
 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
@@ -23,6 +18,7 @@
 // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 // THE SOFTWARE.
+// 
 
 using System;
 using System.Reflection;
@@ -31,10 +27,9 @@ using System.Runtime.CompilerServices;
 [assembly: AssemblyTitle ("System.Diagnostics.Debug.dll")]
 [assembly: AssemblyDescription ("System.Diagnostics.Debug.dll")]
 [assembly: AssemblyDefaultAlias ("System.Diagnostics.Debug.dll")]
-
-[assembly: AssemblyCompany (Consts.MonoCompany)]
-[assembly: AssemblyProduct (Consts.MonoProduct)]
-[assembly: AssemblyCopyright (Consts.MonoCopyright)]
+[assembly: AssemblyCompany ("Xamarin, Inc.")]
+[assembly: AssemblyProduct ("Mono Common Language Infrastructure")]
+[assembly: AssemblyCopyright ("Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)")]
 [assembly: AssemblyVersion ("4.0.0.0")]
 [assembly: AssemblyInformationalVersion ("4.0.0.0")]
 [assembly: AssemblyFileVersion ("4.0.0.0")]
@@ -42,3 +37,5 @@ using System.Runtime.CompilerServices;
 [assembly: AssemblyKeyFile ("../../msfinal.pub")]
 
 [assembly: ReferenceAssembly]
+
+
index 440c475fac5983802abb0c0c3b3b99f441d61fcf..024f0d65572742ff14cb36fdb1d116a1efa3f8fa 100644 (file)
@@ -1,15 +1,22 @@
+MCS_BUILD_DIR = ../../../build
+
 thisdir = class/Facades/System.Diagnostics.Debug
 SUBDIRS = 
-include ../../../build/rules.make
+include $(MCS_BUILD_DIR)/rules.make
 
 LIBRARY_SUBDIR = Facades
 LIBRARY_INSTALL_DIR = $(mono_libdir)/mono/$(FRAMEWORK_VERSION)/Facades
 
 LIBRARY = System.Diagnostics.Debug.dll
-LIB_MCS_FLAGS = /r:System
+
+KEY_FILE = ../../msfinal.pub
+SIGN_FLAGS = /delaysign /keyfile:$(KEY_FILE) /nowarn:1616,1699
+LIB_MCS_FLAGS = $(SIGN_FLAGS) /r:mscorlib /r:System
 
 PLATFORM_DEBUG_FLAGS =
 
 NO_TEST = yes
 
-include ../../../build/library.make
+include $(MCS_BUILD_DIR)/library.make
+
+
index 74532efb2ea75c271c00a4aeafcc07fa77ce69de..8e33d4ddeae92bde7aa8afd994db5d90d6af18d9 100644 (file)
@@ -1,3 +1,3 @@
-AssemblyInfo.cs
 TypeForwarders.cs
-../../../build/common/Consts.cs
+AssemblyInfo.cs
+
index e829ac7eeb0d54dbef614a853ad9e57f21db757c..e9604390dfaa712c7851e31779ac5d0d293351f2 100644 (file)
@@ -1,21 +1,16 @@
-//
-// TypeForwarders.cs
-//
-// Author:
-//       Martin Baulig <martin.baulig@xamarin.com>
-//
+// 
 // Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)
-//
+// 
 // Permission is hereby granted, free of charge, to any person obtaining a copy
 // of this software and associated documentation files (the "Software"), to deal
 // in the Software without restriction, including without limitation the rights
 // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 // copies of the Software, and to permit persons to whom the Software is
 // furnished to do so, subject to the following conditions:
-//
+// 
 // The above copyright notice and this permission notice shall be included in
 // all copies or substantial portions of the Software.
-//
+// 
 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
@@ -23,6 +18,7 @@
 // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 // THE SOFTWARE.
+// 
 
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Diagnostics.Debug))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Diagnostics.Debugger))]
index b6db9a1e6435a8fb3f8987aa9a53b05cb4972081..62b783c9378e2b772fd091693a279b9c564af830 100644 (file)
@@ -1,21 +1,16 @@
-//
-// TypeForwarders.cs
-//
-// Author:
-//       Martin Baulig <martin.baulig@xamarin.com>
-//
+// 
 // Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)
-//
+// 
 // Permission is hereby granted, free of charge, to any person obtaining a copy
 // of this software and associated documentation files (the "Software"), to deal
 // in the Software without restriction, including without limitation the rights
 // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 // copies of the Software, and to permit persons to whom the Software is
 // furnished to do so, subject to the following conditions:
-//
+// 
 // The above copyright notice and this permission notice shall be included in
 // all copies or substantial portions of the Software.
-//
+// 
 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
@@ -23,6 +18,7 @@
 // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 // THE SOFTWARE.
+// 
 
 using System;
 using System.Reflection;
@@ -31,10 +27,9 @@ using System.Runtime.CompilerServices;
 [assembly: AssemblyTitle ("System.Diagnostics.Tools.dll")]
 [assembly: AssemblyDescription ("System.Diagnostics.Tools.dll")]
 [assembly: AssemblyDefaultAlias ("System.Diagnostics.Tools.dll")]
-
-[assembly: AssemblyCompany (Consts.MonoCompany)]
-[assembly: AssemblyProduct (Consts.MonoProduct)]
-[assembly: AssemblyCopyright (Consts.MonoCopyright)]
+[assembly: AssemblyCompany ("Xamarin, Inc.")]
+[assembly: AssemblyProduct ("Mono Common Language Infrastructure")]
+[assembly: AssemblyCopyright ("Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)")]
 [assembly: AssemblyVersion ("4.0.0.0")]
 [assembly: AssemblyInformationalVersion ("4.0.0.0")]
 [assembly: AssemblyFileVersion ("4.0.0.0")]
@@ -42,3 +37,5 @@ using System.Runtime.CompilerServices;
 [assembly: AssemblyKeyFile ("../../msfinal.pub")]
 
 [assembly: ReferenceAssembly]
+
+
index 24a69af8725fa8b134c47c9d78274b9ecf1c99ee..2a448a771196be27a513fe353780ad24076dfaee 100644 (file)
@@ -1,15 +1,22 @@
+MCS_BUILD_DIR = ../../../build
+
 thisdir = class/Facades/System.Diagnostics.Tools
 SUBDIRS = 
-include ../../../build/rules.make
+include $(MCS_BUILD_DIR)/rules.make
 
 LIBRARY_SUBDIR = Facades
 LIBRARY_INSTALL_DIR = $(mono_libdir)/mono/$(FRAMEWORK_VERSION)/Facades
 
 LIBRARY = System.Diagnostics.Tools.dll
-LIB_MCS_FLAGS = /r:System
+
+KEY_FILE = ../../msfinal.pub
+SIGN_FLAGS = /delaysign /keyfile:$(KEY_FILE) /nowarn:1616,1699
+LIB_MCS_FLAGS = $(SIGN_FLAGS) /r:mscorlib /r:System
 
 PLATFORM_DEBUG_FLAGS =
 
 NO_TEST = yes
 
-include ../../../build/library.make
+include $(MCS_BUILD_DIR)/library.make
+
+
index 74532efb2ea75c271c00a4aeafcc07fa77ce69de..8e33d4ddeae92bde7aa8afd994db5d90d6af18d9 100644 (file)
@@ -1,3 +1,3 @@
-AssemblyInfo.cs
 TypeForwarders.cs
-../../../build/common/Consts.cs
+AssemblyInfo.cs
+
index a07fed0c3f5cb420a226cc9b6e5f2333d3676916..56ebfd6570a0347b0af3204d39c848d0250f3c9d 100644 (file)
@@ -1,21 +1,16 @@
-//
-// TypeForwarders.cs
-//
-// Author:
-//       Martin Baulig <martin.baulig@xamarin.com>
-//
+// 
 // Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)
-//
+// 
 // Permission is hereby granted, free of charge, to any person obtaining a copy
 // of this software and associated documentation files (the "Software"), to deal
 // in the Software without restriction, including without limitation the rights
 // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 // copies of the Software, and to permit persons to whom the Software is
 // furnished to do so, subject to the following conditions:
-//
+// 
 // The above copyright notice and this permission notice shall be included in
 // all copies or substantial portions of the Software.
-//
+// 
 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
@@ -23,6 +18,7 @@
 // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 // THE SOFTWARE.
+// 
 
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.CodeDom.Compiler.GeneratedCodeAttribute))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Diagnostics.CodeAnalysis.SuppressMessageAttribute))]
index 085333228a6cc45ce68cb246db87609b10702cbc..e64d545b785de25a5dd5f6e51a6f8330ca598c64 100644 (file)
@@ -1,21 +1,16 @@
-//
-// TypeForwarders.cs
-//
-// Author:
-//       Martin Baulig <martin.baulig@xamarin.com>
-//
+// 
 // Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)
-//
+// 
 // Permission is hereby granted, free of charge, to any person obtaining a copy
 // of this software and associated documentation files (the "Software"), to deal
 // in the Software without restriction, including without limitation the rights
 // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 // copies of the Software, and to permit persons to whom the Software is
 // furnished to do so, subject to the following conditions:
-//
+// 
 // The above copyright notice and this permission notice shall be included in
 // all copies or substantial portions of the Software.
-//
+// 
 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
@@ -23,6 +18,7 @@
 // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 // THE SOFTWARE.
+// 
 
 using System;
 using System.Reflection;
@@ -31,10 +27,9 @@ using System.Runtime.CompilerServices;
 [assembly: AssemblyTitle ("System.Dynamic.Runtime.dll")]
 [assembly: AssemblyDescription ("System.Dynamic.Runtime.dll")]
 [assembly: AssemblyDefaultAlias ("System.Dynamic.Runtime.dll")]
-
-[assembly: AssemblyCompany (Consts.MonoCompany)]
-[assembly: AssemblyProduct (Consts.MonoProduct)]
-[assembly: AssemblyCopyright (Consts.MonoCopyright)]
+[assembly: AssemblyCompany ("Xamarin, Inc.")]
+[assembly: AssemblyProduct ("Mono Common Language Infrastructure")]
+[assembly: AssemblyCopyright ("Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)")]
 [assembly: AssemblyVersion ("4.0.0.0")]
 [assembly: AssemblyInformationalVersion ("4.0.0.0")]
 [assembly: AssemblyFileVersion ("4.0.0.0")]
@@ -42,3 +37,5 @@ using System.Runtime.CompilerServices;
 [assembly: AssemblyKeyFile ("../../msfinal.pub")]
 
 [assembly: ReferenceAssembly]
+
+
index ed5c735fb4991d48f351c36a8a76e514f915f2ea..393bc9dcd507f7d5e9e329097ad0fd8188f7a10a 100644 (file)
@@ -1,15 +1,22 @@
+MCS_BUILD_DIR = ../../../build
+
 thisdir = class/Facades/System.Dynamic.Runtime
 SUBDIRS = 
-include ../../../build/rules.make
+include $(MCS_BUILD_DIR)/rules.make
 
 LIBRARY_SUBDIR = Facades
 LIBRARY_INSTALL_DIR = $(mono_libdir)/mono/$(FRAMEWORK_VERSION)/Facades
 
 LIBRARY = System.Dynamic.Runtime.dll
-LIB_MCS_FLAGS =
+
+KEY_FILE = ../../msfinal.pub
+SIGN_FLAGS = /delaysign /keyfile:$(KEY_FILE) /nowarn:1616,1699
+LIB_MCS_FLAGS = $(SIGN_FLAGS) /r:mscorlib /r:System.Core /r:System
 
 PLATFORM_DEBUG_FLAGS =
 
 NO_TEST = yes
 
-include ../../../build/library.make
+include $(MCS_BUILD_DIR)/library.make
+
+
index 74532efb2ea75c271c00a4aeafcc07fa77ce69de..8e33d4ddeae92bde7aa8afd994db5d90d6af18d9 100644 (file)
@@ -1,3 +1,3 @@
-AssemblyInfo.cs
 TypeForwarders.cs
-../../../build/common/Consts.cs
+AssemblyInfo.cs
+
index 2a7a27c41b1a503175cd94303be7f292735f6198..b579d020c120a10cf55dc528c6bf55b36784a914 100644 (file)
@@ -1,21 +1,16 @@
-//
-// TypeForwarders.cs
-//
-// Author:
-//       Martin Baulig <martin.baulig@xamarin.com>
-//
+// 
 // Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)
-//
+// 
 // Permission is hereby granted, free of charge, to any person obtaining a copy
 // of this software and associated documentation files (the "Software"), to deal
 // in the Software without restriction, including without limitation the rights
 // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 // copies of the Software, and to permit persons to whom the Software is
 // furnished to do so, subject to the following conditions:
-//
+// 
 // The above copyright notice and this permission notice shall be included in
 // all copies or substantial portions of the Software.
-//
+// 
 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
 // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 // THE SOFTWARE.
+// 
 
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.CompilerServices.ConditionalWeakTable<,>))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Dynamic.BinaryOperationBinder))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Dynamic.BindingRestrictions))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Dynamic.CallInfo))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Dynamic.ConvertBinder))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Dynamic.CreateInstanceBinder))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Dynamic.DeleteIndexBinder))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Dynamic.DeleteMemberBinder))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Dynamic.DynamicMetaObject))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Dynamic.DynamicMetaObjectBinder))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Dynamic.DynamicObject))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Dynamic.ExpandoObject))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Dynamic.GetIndexBinder))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Dynamic.GetMemberBinder))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Dynamic.IDynamicMetaObjectProvider))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Dynamic.IInvokeOnGetBinder))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Dynamic.InvokeBinder))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Dynamic.InvokeMemberBinder))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Dynamic.SetIndexBinder))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Dynamic.SetMemberBinder))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Dynamic.UnaryOperationBinder))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Linq.Expressions.DynamicExpression))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.CompilerServices.CallSite))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.CompilerServices.CallSite<>))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.CompilerServices.CallSiteBinder))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.CompilerServices.CallSiteHelpers))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.CompilerServices.DynamicAttribute))]
 
index e924712186db454a9fde173a594141516b52f191..9db0473f4f1813015c3f189715ea46d4615e1f61 100644 (file)
@@ -1,21 +1,16 @@
-//
-// TypeForwarders.cs
-//
-// Author:
-//       Martin Baulig <martin.baulig@xamarin.com>
-//
+// 
 // Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)
-//
+// 
 // Permission is hereby granted, free of charge, to any person obtaining a copy
 // of this software and associated documentation files (the "Software"), to deal
 // in the Software without restriction, including without limitation the rights
 // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 // copies of the Software, and to permit persons to whom the Software is
 // furnished to do so, subject to the following conditions:
-//
+// 
 // The above copyright notice and this permission notice shall be included in
 // all copies or substantial portions of the Software.
-//
+// 
 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
@@ -23,6 +18,7 @@
 // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 // THE SOFTWARE.
+// 
 
 using System;
 using System.Reflection;
@@ -31,10 +27,9 @@ using System.Runtime.CompilerServices;
 [assembly: AssemblyTitle ("System.Globalization.dll")]
 [assembly: AssemblyDescription ("System.Globalization.dll")]
 [assembly: AssemblyDefaultAlias ("System.Globalization.dll")]
-
-[assembly: AssemblyCompany (Consts.MonoCompany)]
-[assembly: AssemblyProduct (Consts.MonoProduct)]
-[assembly: AssemblyCopyright (Consts.MonoCopyright)]
+[assembly: AssemblyCompany ("Xamarin, Inc.")]
+[assembly: AssemblyProduct ("Mono Common Language Infrastructure")]
+[assembly: AssemblyCopyright ("Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)")]
 [assembly: AssemblyVersion ("4.0.0.0")]
 [assembly: AssemblyInformationalVersion ("4.0.0.0")]
 [assembly: AssemblyFileVersion ("4.0.0.0")]
@@ -42,3 +37,5 @@ using System.Runtime.CompilerServices;
 [assembly: AssemblyKeyFile ("../../msfinal.pub")]
 
 [assembly: ReferenceAssembly]
+
+
index 6a9fb37997bff86df6a2d6702716c11a7c67a51a..bb46d247e3697cc46b18520fc7afb4ffe2936b1d 100644 (file)
@@ -1,15 +1,22 @@
+MCS_BUILD_DIR = ../../../build
+
 thisdir = class/Facades/System.Globalization
 SUBDIRS = 
-include ../../../build/rules.make
+include $(MCS_BUILD_DIR)/rules.make
 
 LIBRARY_SUBDIR = Facades
 LIBRARY_INSTALL_DIR = $(mono_libdir)/mono/$(FRAMEWORK_VERSION)/Facades
 
 LIBRARY = System.Globalization.dll
-LIB_MCS_FLAGS =
+
+KEY_FILE = ../../msfinal.pub
+SIGN_FLAGS = /delaysign /keyfile:$(KEY_FILE) /nowarn:1616,1699
+LIB_MCS_FLAGS = $(SIGN_FLAGS) /r:mscorlib
 
 PLATFORM_DEBUG_FLAGS =
 
 NO_TEST = yes
 
-include ../../../build/library.make
+include $(MCS_BUILD_DIR)/library.make
+
+
index 74532efb2ea75c271c00a4aeafcc07fa77ce69de..8e33d4ddeae92bde7aa8afd994db5d90d6af18d9 100644 (file)
@@ -1,3 +1,3 @@
-AssemblyInfo.cs
 TypeForwarders.cs
-../../../build/common/Consts.cs
+AssemblyInfo.cs
+
index 9f279911f9483220248748dee2bcc957f37f9bf4..fd2bc99d8c1f582c1b2140c1d7fa50b87cd08b3f 100644 (file)
@@ -1,21 +1,16 @@
-//
-// TypeForwarders.cs
-//
-// Author:
-//       Martin Baulig <martin.baulig@xamarin.com>
-//
+// 
 // Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)
-//
+// 
 // Permission is hereby granted, free of charge, to any person obtaining a copy
 // of this software and associated documentation files (the "Software"), to deal
 // in the Software without restriction, including without limitation the rights
 // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 // copies of the Software, and to permit persons to whom the Software is
 // furnished to do so, subject to the following conditions:
-//
+// 
 // The above copyright notice and this permission notice shall be included in
 // all copies or substantial portions of the Software.
-//
+// 
 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
@@ -23,6 +18,7 @@
 // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 // THE SOFTWARE.
+// 
 
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Globalization.Calendar))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Globalization.CalendarWeekRule))]
@@ -30,6 +26,7 @@
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Globalization.CompareInfo))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Globalization.CompareOptions))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Globalization.CultureInfo))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Globalization.CultureNotFoundException))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Globalization.DateTimeFormatInfo))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Globalization.NumberFormatInfo))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Globalization.RegionInfo))]
@@ -37,5 +34,4 @@
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Globalization.TextElementEnumerator))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Globalization.TextInfo))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Globalization.UnicodeCategory))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Globalization.CultureNotFoundException))]
 
index f87e3ce5ded5ab9cb2f0b45a3440f30eac698228..6b5b23d878ff19152ba757102d47b57b63764863 100644 (file)
@@ -1,21 +1,16 @@
-//
-// TypeForwarders.cs
-//
-// Author:
-//       Martin Baulig <martin.baulig@xamarin.com>
-//
+// 
 // Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)
-//
+// 
 // Permission is hereby granted, free of charge, to any person obtaining a copy
 // of this software and associated documentation files (the "Software"), to deal
 // in the Software without restriction, including without limitation the rights
 // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 // copies of the Software, and to permit persons to whom the Software is
 // furnished to do so, subject to the following conditions:
-//
+// 
 // The above copyright notice and this permission notice shall be included in
 // all copies or substantial portions of the Software.
-//
+// 
 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
@@ -23,6 +18,7 @@
 // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 // THE SOFTWARE.
+// 
 
 using System;
 using System.Reflection;
@@ -31,10 +27,9 @@ using System.Runtime.CompilerServices;
 [assembly: AssemblyTitle ("System.IO.dll")]
 [assembly: AssemblyDescription ("System.IO.dll")]
 [assembly: AssemblyDefaultAlias ("System.IO.dll")]
-
-[assembly: AssemblyCompany (Consts.MonoCompany)]
-[assembly: AssemblyProduct (Consts.MonoProduct)]
-[assembly: AssemblyCopyright (Consts.MonoCopyright)]
+[assembly: AssemblyCompany ("Xamarin, Inc.")]
+[assembly: AssemblyProduct ("Mono Common Language Infrastructure")]
+[assembly: AssemblyCopyright ("Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)")]
 [assembly: AssemblyVersion ("4.0.0.0")]
 [assembly: AssemblyInformationalVersion ("4.0.0.0")]
 [assembly: AssemblyFileVersion ("4.0.0.0")]
@@ -42,3 +37,5 @@ using System.Runtime.CompilerServices;
 [assembly: AssemblyKeyFile ("../../msfinal.pub")]
 
 [assembly: ReferenceAssembly]
+
+
index a59d44828f97e693e0aa26ac3b3cb1b31f8e18ba..221291d4c52ea097031dd5ccb80e93c4fb0f44f2 100644 (file)
@@ -1,15 +1,22 @@
+MCS_BUILD_DIR = ../../../build
+
 thisdir = class/Facades/System.IO
 SUBDIRS = 
-include ../../../build/rules.make
+include $(MCS_BUILD_DIR)/rules.make
 
 LIBRARY_SUBDIR = Facades
 LIBRARY_INSTALL_DIR = $(mono_libdir)/mono/$(FRAMEWORK_VERSION)/Facades
 
 LIBRARY = System.IO.dll
-LIB_MCS_FLAGS = /r:System
+
+KEY_FILE = ../../msfinal.pub
+SIGN_FLAGS = /delaysign /keyfile:$(KEY_FILE) /nowarn:1616,1699
+LIB_MCS_FLAGS = $(SIGN_FLAGS) /r:mscorlib /r:System
 
 PLATFORM_DEBUG_FLAGS =
 
 NO_TEST = yes
 
-include ../../../build/library.make
+include $(MCS_BUILD_DIR)/library.make
+
+
index 74532efb2ea75c271c00a4aeafcc07fa77ce69de..8e33d4ddeae92bde7aa8afd994db5d90d6af18d9 100644 (file)
@@ -1,3 +1,3 @@
-AssemblyInfo.cs
 TypeForwarders.cs
-../../../build/common/Consts.cs
+AssemblyInfo.cs
+
index 1a3d86656f599143bcffe4210ac74cae11fa8490..ea526e77de476e7db02c11eedf2a25c82cc9d0fe 100644 (file)
@@ -1,21 +1,16 @@
-//
-// TypeForwarders.cs
-//
-// Author:
-//       Martin Baulig <martin.baulig@xamarin.com>
-//
+// 
 // Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)
-//
+// 
 // Permission is hereby granted, free of charge, to any person obtaining a copy
 // of this software and associated documentation files (the "Software"), to deal
 // in the Software without restriction, including without limitation the rights
 // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 // copies of the Software, and to permit persons to whom the Software is
 // furnished to do so, subject to the following conditions:
-//
+// 
 // The above copyright notice and this permission notice shall be included in
 // all copies or substantial portions of the Software.
-//
+// 
 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
 // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 // THE SOFTWARE.
+// 
 
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.IO.BinaryReader))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.IO.BinaryWriter))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.IO.IOException))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.IO.EndOfStreamException))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.IO.FileNotFoundException))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.IO.Stream))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.IO.InvalidDataException))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.IO.IOException))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.IO.MemoryStream))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.IO.SeekOrigin))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.IO.TextReader))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.IO.Stream))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.IO.StreamReader))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.IO.TextWriter))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.IO.StreamWriter))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.IO.StringReader))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.IO.StringWriter))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.IO.InvalidDataException))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.IO.TextReader))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.IO.TextWriter))]
 
index 6f25c833312d19c00c64d4d1de03a3e555f3e115..de01cb447b621dc50a27d4785d15327ca771679a 100644 (file)
@@ -1,21 +1,16 @@
-//
-// TypeForwarders.cs
-//
-// Author:
-//       Martin Baulig <martin.baulig@xamarin.com>
-//
+// 
 // Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)
-//
+// 
 // Permission is hereby granted, free of charge, to any person obtaining a copy
 // of this software and associated documentation files (the "Software"), to deal
 // in the Software without restriction, including without limitation the rights
 // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 // copies of the Software, and to permit persons to whom the Software is
 // furnished to do so, subject to the following conditions:
-//
+// 
 // The above copyright notice and this permission notice shall be included in
 // all copies or substantial portions of the Software.
-//
+// 
 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
@@ -23,6 +18,7 @@
 // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 // THE SOFTWARE.
+// 
 
 using System;
 using System.Reflection;
@@ -31,10 +27,9 @@ using System.Runtime.CompilerServices;
 [assembly: AssemblyTitle ("System.Linq.Expressions.dll")]
 [assembly: AssemblyDescription ("System.Linq.Expressions.dll")]
 [assembly: AssemblyDefaultAlias ("System.Linq.Expressions.dll")]
-
-[assembly: AssemblyCompany (Consts.MonoCompany)]
-[assembly: AssemblyProduct (Consts.MonoProduct)]
-[assembly: AssemblyCopyright (Consts.MonoCopyright)]
+[assembly: AssemblyCompany ("Xamarin, Inc.")]
+[assembly: AssemblyProduct ("Mono Common Language Infrastructure")]
+[assembly: AssemblyCopyright ("Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)")]
 [assembly: AssemblyVersion ("4.0.0.0")]
 [assembly: AssemblyInformationalVersion ("4.0.0.0")]
 [assembly: AssemblyFileVersion ("4.0.0.0")]
@@ -42,3 +37,5 @@ using System.Runtime.CompilerServices;
 [assembly: AssemblyKeyFile ("../../msfinal.pub")]
 
 [assembly: ReferenceAssembly]
+
+
index 1883c9107a9b5439723710fb3de14fcb6b024e71..60b5140e37bd2c03fd37656f441665a5e9bbb6ee 100644 (file)
@@ -1,15 +1,22 @@
+MCS_BUILD_DIR = ../../../build
+
 thisdir = class/Facades/System.Linq.Expressions
 SUBDIRS = 
-include ../../../build/rules.make
+include $(MCS_BUILD_DIR)/rules.make
 
 LIBRARY_SUBDIR = Facades
 LIBRARY_INSTALL_DIR = $(mono_libdir)/mono/$(FRAMEWORK_VERSION)/Facades
 
 LIBRARY = System.Linq.Expressions.dll
-LIB_MCS_FLAGS = /r:System.Core /r:System
+
+KEY_FILE = ../../msfinal.pub
+SIGN_FLAGS = /delaysign /keyfile:$(KEY_FILE) /nowarn:1616,1699
+LIB_MCS_FLAGS = $(SIGN_FLAGS) /r:mscorlib /r:System.Core
 
 PLATFORM_DEBUG_FLAGS =
 
 NO_TEST = yes
 
-include ../../../build/library.make
+include $(MCS_BUILD_DIR)/library.make
+
+
index 74532efb2ea75c271c00a4aeafcc07fa77ce69de..8e33d4ddeae92bde7aa8afd994db5d90d6af18d9 100644 (file)
@@ -1,3 +1,3 @@
-AssemblyInfo.cs
 TypeForwarders.cs
-../../../build/common/Consts.cs
+AssemblyInfo.cs
+
index 1f5818bde9bcb24d4348a8259aebb0d27954de57..ca35ff1a1b24a92862addaf84c86b25565818dc5 100644 (file)
@@ -1,21 +1,16 @@
-//
-// TypeForwarders.cs
-//
-// Author:
-//       Martin Baulig <martin.baulig@xamarin.com>
-//
+// 
 // Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)
-//
+// 
 // Permission is hereby granted, free of charge, to any person obtaining a copy
 // of this software and associated documentation files (the "Software"), to deal
 // in the Software without restriction, including without limitation the rights
 // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 // copies of the Software, and to permit persons to whom the Software is
 // furnished to do so, subject to the following conditions:
-//
+// 
 // The above copyright notice and this permission notice shall be included in
 // all copies or substantial portions of the Software.
-//
+// 
 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
 // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 // THE SOFTWARE.
+// 
 
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Linq.IQueryable))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Linq.IOrderedQueryable))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Linq.IQueryable<>))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Linq.IOrderedQueryable<>))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Linq.IQueryProvider))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Linq.Expressions.Expression))]
+#if !MONOTOUCH
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Linq.Expressions.BlockExpression))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Linq.Expressions.CatchBlock))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Linq.Expressions.DebugInfoExpression))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Linq.Expressions.DefaultExpression))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Linq.Expressions.GotoExpression))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Linq.Expressions.GotoExpressionKind))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Linq.Expressions.IndexExpression))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Linq.Expressions.LabelExpression))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Linq.Expressions.LabelTarget))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Linq.Expressions.LoopExpression))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Linq.Expressions.RuntimeVariablesExpression))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Linq.Expressions.SwitchCase))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Linq.Expressions.SwitchExpression))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Linq.Expressions.SymbolDocumentInfo))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Linq.Expressions.TryExpression))]
+#endif
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Linq.Expressions.BinaryExpression))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Linq.Expressions.ConditionalExpression))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Linq.Expressions.ConstantExpression))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Linq.Expressions.ElementInit))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Linq.Expressions.LambdaExpression))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Linq.Expressions.Expression))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Linq.Expressions.Expression<>))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Linq.Expressions.ExpressionType))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Linq.Expressions.ExpressionVisitor))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Linq.Expressions.InvocationExpression))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Linq.Expressions.LambdaExpression))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Linq.Expressions.ListInitExpression))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Linq.Expressions.MemberBinding))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Linq.Expressions.MemberAssignment))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Linq.Expressions.MemberBinding))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Linq.Expressions.MemberBindingType))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Linq.Expressions.MemberExpression))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Linq.Expressions.MemberInitExpression))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Linq.Expressions.ParameterExpression))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Linq.Expressions.TypeBinaryExpression))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Linq.Expressions.UnaryExpression))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Linq.IOrderedQueryable))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Linq.IOrderedQueryable<>))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Linq.IQueryable))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Linq.IQueryable<>))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Linq.IQueryProvider))]
 
-#if !FULL_AOT_RUNTIME
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Linq.Expressions.BlockExpression))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Linq.Expressions.CatchBlock))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Linq.Expressions.DebugInfoExpression))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Linq.Expressions.DefaultExpression))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Linq.Expressions.GotoExpression))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Linq.Expressions.GotoExpressionKind))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Linq.Expressions.IndexExpression))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Linq.Expressions.LabelExpression))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Linq.Expressions.LabelTarget))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Linq.Expressions.LoopExpression))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Linq.Expressions.RuntimeVariablesExpression))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Linq.Expressions.SwitchCase))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Linq.Expressions.SwitchExpression))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Linq.Expressions.SymbolDocumentInfo))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Linq.Expressions.TryExpression))]
-#endif
index 5824fc0e7c114e00a9f89917495c4ca9768d27e8..b3d86f59f9d5a86c64264cb6b50df0bb5c0727df 100644 (file)
@@ -1,21 +1,16 @@
-//
-// TypeForwarders.cs
-//
-// Author:
-//       Martin Baulig <martin.baulig@xamarin.com>
-//
+// 
 // Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)
-//
+// 
 // Permission is hereby granted, free of charge, to any person obtaining a copy
 // of this software and associated documentation files (the "Software"), to deal
 // in the Software without restriction, including without limitation the rights
 // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 // copies of the Software, and to permit persons to whom the Software is
 // furnished to do so, subject to the following conditions:
-//
+// 
 // The above copyright notice and this permission notice shall be included in
 // all copies or substantial portions of the Software.
-//
+// 
 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
@@ -23,6 +18,7 @@
 // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 // THE SOFTWARE.
+// 
 
 using System;
 using System.Reflection;
@@ -31,10 +27,9 @@ using System.Runtime.CompilerServices;
 [assembly: AssemblyTitle ("System.Linq.Parallel.dll")]
 [assembly: AssemblyDescription ("System.Linq.Parallel.dll")]
 [assembly: AssemblyDefaultAlias ("System.Linq.Parallel.dll")]
-
-[assembly: AssemblyCompany (Consts.MonoCompany)]
-[assembly: AssemblyProduct (Consts.MonoProduct)]
-[assembly: AssemblyCopyright (Consts.MonoCopyright)]
+[assembly: AssemblyCompany ("Xamarin, Inc.")]
+[assembly: AssemblyProduct ("Mono Common Language Infrastructure")]
+[assembly: AssemblyCopyright ("Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)")]
 [assembly: AssemblyVersion ("4.0.0.0")]
 [assembly: AssemblyInformationalVersion ("4.0.0.0")]
 [assembly: AssemblyFileVersion ("4.0.0.0")]
@@ -42,3 +37,5 @@ using System.Runtime.CompilerServices;
 [assembly: AssemblyKeyFile ("../../msfinal.pub")]
 
 [assembly: ReferenceAssembly]
+
+
index bf9069a77be19e8a50df7a6d0a45fb4da90c6b14..54a937f7ed1b4abe540baa502b9fbcacd2b4d1ea 100644 (file)
@@ -1,15 +1,22 @@
+MCS_BUILD_DIR = ../../../build
+
 thisdir = class/Facades/System.Linq.Parallel
 SUBDIRS = 
-include ../../../build/rules.make
+include $(MCS_BUILD_DIR)/rules.make
 
 LIBRARY_SUBDIR = Facades
 LIBRARY_INSTALL_DIR = $(mono_libdir)/mono/$(FRAMEWORK_VERSION)/Facades
 
 LIBRARY = System.Linq.Parallel.dll
-LIB_MCS_FLAGS = /r:System.Core /r:System
+
+KEY_FILE = ../../msfinal.pub
+SIGN_FLAGS = /delaysign /keyfile:$(KEY_FILE) /nowarn:1616,1699
+LIB_MCS_FLAGS = $(SIGN_FLAGS) /r:mscorlib /r:System.Core
 
 PLATFORM_DEBUG_FLAGS =
 
 NO_TEST = yes
 
-include ../../../build/library.make
+include $(MCS_BUILD_DIR)/library.make
+
+
index 74532efb2ea75c271c00a4aeafcc07fa77ce69de..8e33d4ddeae92bde7aa8afd994db5d90d6af18d9 100644 (file)
@@ -1,3 +1,3 @@
-AssemblyInfo.cs
 TypeForwarders.cs
-../../../build/common/Consts.cs
+AssemblyInfo.cs
+
index 8fab8b6f07fb625f3d44a8a40befd1277b7f945c..00445f24a38dce3bebb1345304d3d73e54b1e910 100644 (file)
@@ -1,21 +1,16 @@
-//
-// TypeForwarders.cs
-//
-// Author:
-//       Martin Baulig <martin.baulig@xamarin.com>
-//
+// 
 // Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)
-//
+// 
 // Permission is hereby granted, free of charge, to any person obtaining a copy
 // of this software and associated documentation files (the "Software"), to deal
 // in the Software without restriction, including without limitation the rights
 // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 // copies of the Software, and to permit persons to whom the Software is
 // furnished to do so, subject to the following conditions:
-//
+// 
 // The above copyright notice and this permission notice shall be included in
 // all copies or substantial portions of the Software.
-//
+// 
 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
 // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 // THE SOFTWARE.
+// 
 
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Linq.ParallelQuery))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Linq.ParallelQuery<>))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Linq.OrderedParallelQuery<>))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Linq.ParallelEnumerable))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Linq.ParallelExecutionMode))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Linq.ParallelMergeOptions))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Linq.ParallelQuery))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Linq.ParallelQuery<>))]
 
index 5c425d1487056f22ff38f6b75ad48818cdddad86..ec77afbfebb44594f48e273119e4561e3e8c6084 100644 (file)
@@ -1,21 +1,16 @@
-//
-// TypeForwarders.cs
-//
-// Author:
-//       Martin Baulig <martin.baulig@xamarin.com>
-//
+// 
 // Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)
-//
+// 
 // Permission is hereby granted, free of charge, to any person obtaining a copy
 // of this software and associated documentation files (the "Software"), to deal
 // in the Software without restriction, including without limitation the rights
 // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 // copies of the Software, and to permit persons to whom the Software is
 // furnished to do so, subject to the following conditions:
-//
+// 
 // The above copyright notice and this permission notice shall be included in
 // all copies or substantial portions of the Software.
-//
+// 
 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
@@ -23,6 +18,7 @@
 // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 // THE SOFTWARE.
+// 
 
 using System;
 using System.Reflection;
@@ -31,10 +27,9 @@ using System.Runtime.CompilerServices;
 [assembly: AssemblyTitle ("System.Linq.Queryable.dll")]
 [assembly: AssemblyDescription ("System.Linq.Queryable.dll")]
 [assembly: AssemblyDefaultAlias ("System.Linq.Queryable.dll")]
-
-[assembly: AssemblyCompany (Consts.MonoCompany)]
-[assembly: AssemblyProduct (Consts.MonoProduct)]
-[assembly: AssemblyCopyright (Consts.MonoCopyright)]
+[assembly: AssemblyCompany ("Xamarin, Inc.")]
+[assembly: AssemblyProduct ("Mono Common Language Infrastructure")]
+[assembly: AssemblyCopyright ("Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)")]
 [assembly: AssemblyVersion ("4.0.0.0")]
 [assembly: AssemblyInformationalVersion ("4.0.0.0")]
 [assembly: AssemblyFileVersion ("4.0.0.0")]
@@ -42,3 +37,5 @@ using System.Runtime.CompilerServices;
 [assembly: AssemblyKeyFile ("../../msfinal.pub")]
 
 [assembly: ReferenceAssembly]
+
+
index 3bed035956b9905e06c535d0b371e310b234e78b..270601149d50b57e126b1fe1bf7e02c532b8c5a3 100644 (file)
@@ -1,15 +1,22 @@
+MCS_BUILD_DIR = ../../../build
+
 thisdir = class/Facades/System.Linq.Queryable
 SUBDIRS = 
-include ../../../build/rules.make
+include $(MCS_BUILD_DIR)/rules.make
 
 LIBRARY_SUBDIR = Facades
 LIBRARY_INSTALL_DIR = $(mono_libdir)/mono/$(FRAMEWORK_VERSION)/Facades
 
 LIBRARY = System.Linq.Queryable.dll
-LIB_MCS_FLAGS = /r:System.Core /r:System
+
+KEY_FILE = ../../msfinal.pub
+SIGN_FLAGS = /delaysign /keyfile:$(KEY_FILE) /nowarn:1616,1699
+LIB_MCS_FLAGS = $(SIGN_FLAGS) /r:mscorlib /r:System.Core
 
 PLATFORM_DEBUG_FLAGS =
 
 NO_TEST = yes
 
-include ../../../build/library.make
+include $(MCS_BUILD_DIR)/library.make
+
+
index 74532efb2ea75c271c00a4aeafcc07fa77ce69de..8e33d4ddeae92bde7aa8afd994db5d90d6af18d9 100644 (file)
@@ -1,3 +1,3 @@
-AssemblyInfo.cs
 TypeForwarders.cs
-../../../build/common/Consts.cs
+AssemblyInfo.cs
+
index 0d20080e20b49803d47845e99f1a4a89a6cc5859..a8f9ee444ee02307aaaf9487c39cb5a0c155e85d 100644 (file)
@@ -1,21 +1,16 @@
-//
-// TypeForwarders.cs
-//
-// Author:
-//       Martin Baulig <martin.baulig@xamarin.com>
-//
+// 
 // Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)
-//
+// 
 // Permission is hereby granted, free of charge, to any person obtaining a copy
 // of this software and associated documentation files (the "Software"), to deal
 // in the Software without restriction, including without limitation the rights
 // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 // copies of the Software, and to permit persons to whom the Software is
 // furnished to do so, subject to the following conditions:
-//
+// 
 // The above copyright notice and this permission notice shall be included in
 // all copies or substantial portions of the Software.
-//
+// 
 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
@@ -23,6 +18,7 @@
 // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 // THE SOFTWARE.
+// 
 
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Linq.EnumerableExecutor))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Linq.EnumerableExecutor<>))]
index 0c3c697408b35198796bc706962708e5a4158d22..e654d85a44b9de331356f73a62c1ddcfdaac9a02 100644 (file)
@@ -1,21 +1,16 @@
-//
-// TypeForwarders.cs
-//
-// Author:
-//       Martin Baulig <martin.baulig@xamarin.com>
-//
+// 
 // Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)
-//
+// 
 // Permission is hereby granted, free of charge, to any person obtaining a copy
 // of this software and associated documentation files (the "Software"), to deal
 // in the Software without restriction, including without limitation the rights
 // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 // copies of the Software, and to permit persons to whom the Software is
 // furnished to do so, subject to the following conditions:
-//
+// 
 // The above copyright notice and this permission notice shall be included in
 // all copies or substantial portions of the Software.
-//
+// 
 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
@@ -23,6 +18,7 @@
 // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 // THE SOFTWARE.
+// 
 
 using System;
 using System.Reflection;
@@ -31,10 +27,9 @@ using System.Runtime.CompilerServices;
 [assembly: AssemblyTitle ("System.Linq.dll")]
 [assembly: AssemblyDescription ("System.Linq.dll")]
 [assembly: AssemblyDefaultAlias ("System.Linq.dll")]
-
-[assembly: AssemblyCompany (Consts.MonoCompany)]
-[assembly: AssemblyProduct (Consts.MonoProduct)]
-[assembly: AssemblyCopyright (Consts.MonoCopyright)]
+[assembly: AssemblyCompany ("Xamarin, Inc.")]
+[assembly: AssemblyProduct ("Mono Common Language Infrastructure")]
+[assembly: AssemblyCopyright ("Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)")]
 [assembly: AssemblyVersion ("4.0.0.0")]
 [assembly: AssemblyInformationalVersion ("4.0.0.0")]
 [assembly: AssemblyFileVersion ("4.0.0.0")]
@@ -42,3 +37,5 @@ using System.Runtime.CompilerServices;
 [assembly: AssemblyKeyFile ("../../msfinal.pub")]
 
 [assembly: ReferenceAssembly]
+
+
index cca44b1499c691fdd6dd8be30937762b662f875b..b08a8a3798c28458495ed3b7962c9f6d5673c275 100644 (file)
@@ -1,15 +1,22 @@
+MCS_BUILD_DIR = ../../../build
+
 thisdir = class/Facades/System.Linq
 SUBDIRS = 
-include ../../../build/rules.make
+include $(MCS_BUILD_DIR)/rules.make
 
 LIBRARY_SUBDIR = Facades
 LIBRARY_INSTALL_DIR = $(mono_libdir)/mono/$(FRAMEWORK_VERSION)/Facades
 
 LIBRARY = System.Linq.dll
-LIB_MCS_FLAGS = /r:System.Core /r:System
+
+KEY_FILE = ../../msfinal.pub
+SIGN_FLAGS = /delaysign /keyfile:$(KEY_FILE) /nowarn:1616,1699
+LIB_MCS_FLAGS = $(SIGN_FLAGS) /r:mscorlib /r:System.Core
 
 PLATFORM_DEBUG_FLAGS =
 
 NO_TEST = yes
 
-include ../../../build/library.make
+include $(MCS_BUILD_DIR)/library.make
+
+
index 74532efb2ea75c271c00a4aeafcc07fa77ce69de..8e33d4ddeae92bde7aa8afd994db5d90d6af18d9 100644 (file)
@@ -1,3 +1,3 @@
-AssemblyInfo.cs
 TypeForwarders.cs
-../../../build/common/Consts.cs
+AssemblyInfo.cs
+
index b5cd612a2b426903dd07383332927e2768b579e0..5ae7fa03f46c5aff7e3609cf76ea0ed55147e3e0 100644 (file)
@@ -1,21 +1,16 @@
-//
-// TypeForwarders.cs
-//
-// Author:
-//       Martin Baulig <martin.baulig@xamarin.com>
-//
+// 
 // Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)
-//
+// 
 // Permission is hereby granted, free of charge, to any person obtaining a copy
 // of this software and associated documentation files (the "Software"), to deal
 // in the Software without restriction, including without limitation the rights
 // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 // copies of the Software, and to permit persons to whom the Software is
 // furnished to do so, subject to the following conditions:
-//
+// 
 // The above copyright notice and this permission notice shall be included in
 // all copies or substantial portions of the Software.
-//
+// 
 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
@@ -23,6 +18,7 @@
 // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 // THE SOFTWARE.
+// 
 
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Linq.Enumerable))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Linq.IGrouping<,>))]
index 62f55c568473553db0ad200ae3b48e30cf1a4484..4f5c9c1b6d021ee98a69a781a30ac1957dbf6ab3 100644 (file)
@@ -1,21 +1,16 @@
-//
-// TypeForwarders.cs
-//
-// Author:
-//       Martin Baulig <martin.baulig@xamarin.com>
-//
+// 
 // Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)
-//
+// 
 // Permission is hereby granted, free of charge, to any person obtaining a copy
 // of this software and associated documentation files (the "Software"), to deal
 // in the Software without restriction, including without limitation the rights
 // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 // copies of the Software, and to permit persons to whom the Software is
 // furnished to do so, subject to the following conditions:
-//
+// 
 // The above copyright notice and this permission notice shall be included in
 // all copies or substantial portions of the Software.
-//
+// 
 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
@@ -23,6 +18,7 @@
 // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 // THE SOFTWARE.
+// 
 
 using System;
 using System.Reflection;
@@ -31,10 +27,9 @@ using System.Runtime.CompilerServices;
 [assembly: AssemblyTitle ("System.Net.NetworkInformation.dll")]
 [assembly: AssemblyDescription ("System.Net.NetworkInformation.dll")]
 [assembly: AssemblyDefaultAlias ("System.Net.NetworkInformation.dll")]
-
-[assembly: AssemblyCompany (Consts.MonoCompany)]
-[assembly: AssemblyProduct (Consts.MonoProduct)]
-[assembly: AssemblyCopyright (Consts.MonoCopyright)]
+[assembly: AssemblyCompany ("Xamarin, Inc.")]
+[assembly: AssemblyProduct ("Mono Common Language Infrastructure")]
+[assembly: AssemblyCopyright ("Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)")]
 [assembly: AssemblyVersion ("4.0.0.0")]
 [assembly: AssemblyInformationalVersion ("4.0.0.0")]
 [assembly: AssemblyFileVersion ("4.0.0.0")]
@@ -42,3 +37,5 @@ using System.Runtime.CompilerServices;
 [assembly: AssemblyKeyFile ("../../msfinal.pub")]
 
 [assembly: ReferenceAssembly]
+
+
index 6c24f13694847593beaecb62285d2aef4d28fc10..2168babf3905d842a6d1f35479821cd666527c1b 100644 (file)
@@ -1,15 +1,22 @@
+MCS_BUILD_DIR = ../../../build
+
 thisdir = class/Facades/System.Net.NetworkInformation
 SUBDIRS = 
-include ../../../build/rules.make
+include $(MCS_BUILD_DIR)/rules.make
 
 LIBRARY_SUBDIR = Facades
 LIBRARY_INSTALL_DIR = $(mono_libdir)/mono/$(FRAMEWORK_VERSION)/Facades
 
 LIBRARY = System.Net.NetworkInformation.dll
-LIB_MCS_FLAGS = /r:System
+
+KEY_FILE = ../../msfinal.pub
+SIGN_FLAGS = /delaysign /keyfile:$(KEY_FILE) /nowarn:1616,1699
+LIB_MCS_FLAGS = $(SIGN_FLAGS) /r:mscorlib /r:System
 
 PLATFORM_DEBUG_FLAGS =
 
 NO_TEST = yes
 
-include ../../../build/library.make
+include $(MCS_BUILD_DIR)/library.make
+
+
index 0cb15ff155de057b68ac38728ee67f27dddeb0fd..c16fa7fdaa4e632c971ede89d33d93e7d50828e0 100644 (file)
@@ -1,21 +1,16 @@
-//
-// TypeForwarders.cs
-//
-// Author:
-//       Martin Baulig <martin.baulig@xamarin.com>
-//
+// 
 // Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)
-//
+// 
 // Permission is hereby granted, free of charge, to any person obtaining a copy
 // of this software and associated documentation files (the "Software"), to deal
 // in the Software without restriction, including without limitation the rights
 // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 // copies of the Software, and to permit persons to whom the Software is
 // furnished to do so, subject to the following conditions:
-//
+// 
 // The above copyright notice and this permission notice shall be included in
 // all copies or substantial portions of the Software.
-//
+// 
 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
@@ -23,6 +18,7 @@
 // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 // THE SOFTWARE.
+// 
 
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Net.NetworkInformation.NetworkAddressChangedEventHandler))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Net.NetworkInformation.NetworkChange))]
index 7baa4d661146535c2998f8a3ad63814436147a13..43418d0fb7860847b3860039d439d2a511671530 100644 (file)
@@ -1,21 +1,16 @@
-//
-// TypeForwarders.cs
-//
-// Author:
-//       Martin Baulig <martin.baulig@xamarin.com>
-//
+// 
 // Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)
-//
+// 
 // Permission is hereby granted, free of charge, to any person obtaining a copy
 // of this software and associated documentation files (the "Software"), to deal
 // in the Software without restriction, including without limitation the rights
 // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 // copies of the Software, and to permit persons to whom the Software is
 // furnished to do so, subject to the following conditions:
-//
+// 
 // The above copyright notice and this permission notice shall be included in
 // all copies or substantial portions of the Software.
-//
+// 
 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
@@ -23,6 +18,7 @@
 // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 // THE SOFTWARE.
+// 
 
 using System;
 using System.Reflection;
@@ -31,10 +27,9 @@ using System.Runtime.CompilerServices;
 [assembly: AssemblyTitle ("System.Net.Primitives.dll")]
 [assembly: AssemblyDescription ("System.Net.Primitives.dll")]
 [assembly: AssemblyDefaultAlias ("System.Net.Primitives.dll")]
-
-[assembly: AssemblyCompany (Consts.MonoCompany)]
-[assembly: AssemblyProduct (Consts.MonoProduct)]
-[assembly: AssemblyCopyright (Consts.MonoCopyright)]
+[assembly: AssemblyCompany ("Xamarin, Inc.")]
+[assembly: AssemblyProduct ("Mono Common Language Infrastructure")]
+[assembly: AssemblyCopyright ("Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)")]
 [assembly: AssemblyVersion ("4.0.0.0")]
 [assembly: AssemblyInformationalVersion ("4.0.0.0")]
 [assembly: AssemblyFileVersion ("4.0.0.0")]
@@ -42,3 +37,5 @@ using System.Runtime.CompilerServices;
 [assembly: AssemblyKeyFile ("../../msfinal.pub")]
 
 [assembly: ReferenceAssembly]
+
+
index 6307ee11c0d0bad63bdbdea2cc839c16b32d4242..db960f49310d8d4db1f64ba1ef3db833a6156d79 100644 (file)
@@ -1,15 +1,22 @@
+MCS_BUILD_DIR = ../../../build
+
 thisdir = class/Facades/System.Net.Primitives
 SUBDIRS = 
-include ../../../build/rules.make
+include $(MCS_BUILD_DIR)/rules.make
 
 LIBRARY_SUBDIR = Facades
 LIBRARY_INSTALL_DIR = $(mono_libdir)/mono/$(FRAMEWORK_VERSION)/Facades
 
 LIBRARY = System.Net.Primitives.dll
-LIB_MCS_FLAGS = /r:System
+
+KEY_FILE = ../../msfinal.pub
+SIGN_FLAGS = /delaysign /keyfile:$(KEY_FILE) /nowarn:1616,1699
+LIB_MCS_FLAGS = $(SIGN_FLAGS) /r:mscorlib /r:System
 
 PLATFORM_DEBUG_FLAGS =
 
 NO_TEST = yes
 
-include ../../../build/library.make
+include $(MCS_BUILD_DIR)/library.make
+
+
index 74532efb2ea75c271c00a4aeafcc07fa77ce69de..8e33d4ddeae92bde7aa8afd994db5d90d6af18d9 100644 (file)
@@ -1,3 +1,3 @@
-AssemblyInfo.cs
 TypeForwarders.cs
-../../../build/common/Consts.cs
+AssemblyInfo.cs
+
index 9227c4614f4feb71469982d0429452efc1b46d9b..1d78a8dbaa5fada2690a08bbd1550bafc1ab84dd 100644 (file)
@@ -1,21 +1,16 @@
-//
-// TypeForwarders.cs
-//
-// Author:
-//       Martin Baulig <martin.baulig@xamarin.com>
-//
+// 
 // Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)
-//
+// 
 // Permission is hereby granted, free of charge, to any person obtaining a copy
 // of this software and associated documentation files (the "Software"), to deal
 // in the Software without restriction, including without limitation the rights
 // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 // copies of the Software, and to permit persons to whom the Software is
 // furnished to do so, subject to the following conditions:
-//
+// 
 // The above copyright notice and this permission notice shall be included in
 // all copies or substantial portions of the Software.
-//
+// 
 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
 // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 // THE SOFTWARE.
+// 
 
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Net.AuthenticationSchemes))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Net.Cookie))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Net.CookieCollection))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Net.CookieContainer))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Net.CookieException))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Net.CredentialCache))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Net.DecompressionMethods))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Net.HttpStatusCode))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Net.ICredentials))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Net.NetworkCredential))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Net.AuthenticationSchemes))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Net.ICredentialsByHost))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Net.CredentialCache))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Net.DecompressionMethods))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Net.IWebProxy))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Net.NetworkCredential))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Net.TransportContext))]
 
index d75c389c82000c631aca5d2f77fc4e52ee13e604..771473695cc1ef24e3d80ff717dad09594ed89bd 100644 (file)
@@ -1,21 +1,16 @@
-//
-// TypeForwarders.cs
-//
-// Author:
-//       Martin Baulig <martin.baulig@xamarin.com>
-//
+// 
 // Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)
-//
+// 
 // Permission is hereby granted, free of charge, to any person obtaining a copy
 // of this software and associated documentation files (the "Software"), to deal
 // in the Software without restriction, including without limitation the rights
 // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 // copies of the Software, and to permit persons to whom the Software is
 // furnished to do so, subject to the following conditions:
-//
+// 
 // The above copyright notice and this permission notice shall be included in
 // all copies or substantial portions of the Software.
-//
+// 
 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
@@ -23,6 +18,7 @@
 // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 // THE SOFTWARE.
+// 
 
 using System;
 using System.Reflection;
@@ -31,10 +27,9 @@ using System.Runtime.CompilerServices;
 [assembly: AssemblyTitle ("System.Net.Requests.dll")]
 [assembly: AssemblyDescription ("System.Net.Requests.dll")]
 [assembly: AssemblyDefaultAlias ("System.Net.Requests.dll")]
-
-[assembly: AssemblyCompany (Consts.MonoCompany)]
-[assembly: AssemblyProduct (Consts.MonoProduct)]
-[assembly: AssemblyCopyright (Consts.MonoCopyright)]
+[assembly: AssemblyCompany ("Xamarin, Inc.")]
+[assembly: AssemblyProduct ("Mono Common Language Infrastructure")]
+[assembly: AssemblyCopyright ("Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)")]
 [assembly: AssemblyVersion ("4.0.0.0")]
 [assembly: AssemblyInformationalVersion ("4.0.0.0")]
 [assembly: AssemblyFileVersion ("4.0.0.0")]
@@ -42,3 +37,5 @@ using System.Runtime.CompilerServices;
 [assembly: AssemblyKeyFile ("../../msfinal.pub")]
 
 [assembly: ReferenceAssembly]
+
+
index f3c942ef6f967ba684b9aeb2bd4bc6f51e93c560..35d7d842f60f3fa13e9530c51a953a3dbdb69355 100644 (file)
@@ -1,15 +1,22 @@
+MCS_BUILD_DIR = ../../../build
+
 thisdir = class/Facades/System.Net.Requests
 SUBDIRS = 
-include ../../../build/rules.make
+include $(MCS_BUILD_DIR)/rules.make
 
 LIBRARY_SUBDIR = Facades
 LIBRARY_INSTALL_DIR = $(mono_libdir)/mono/$(FRAMEWORK_VERSION)/Facades
 
 LIBRARY = System.Net.Requests.dll
-LIB_MCS_FLAGS = /r:System
+
+KEY_FILE = ../../msfinal.pub
+SIGN_FLAGS = /delaysign /keyfile:$(KEY_FILE) /nowarn:1616,1699
+LIB_MCS_FLAGS = $(SIGN_FLAGS) /r:mscorlib /r:System
 
 PLATFORM_DEBUG_FLAGS =
 
 NO_TEST = yes
 
-include ../../../build/library.make
+include $(MCS_BUILD_DIR)/library.make
+
+
index 74532efb2ea75c271c00a4aeafcc07fa77ce69de..8e33d4ddeae92bde7aa8afd994db5d90d6af18d9 100644 (file)
@@ -1,3 +1,3 @@
-AssemblyInfo.cs
 TypeForwarders.cs
-../../../build/common/Consts.cs
+AssemblyInfo.cs
+
index 9730eaec3d45fc5241b4f17746f3acc7ac1d9f60..2d4e79f6f080afec570f23461b76f41b5cf72db8 100644 (file)
@@ -1,21 +1,16 @@
-//
-// TypeForwarders.cs
-//
-// Author:
-//       Martin Baulig <martin.baulig@xamarin.com>
-//
+// 
 // Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)
-//
+// 
 // Permission is hereby granted, free of charge, to any person obtaining a copy
 // of this software and associated documentation files (the "Software"), to deal
 // in the Software without restriction, including without limitation the rights
 // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 // copies of the Software, and to permit persons to whom the Software is
 // furnished to do so, subject to the following conditions:
-//
+// 
 // The above copyright notice and this permission notice shall be included in
 // all copies or substantial portions of the Software.
-//
+// 
 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
 // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 // THE SOFTWARE.
+// 
 
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Net.HttpRequestHeader))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Net.WebRequest))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Net.HttpWebRequest))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Net.WebResponse))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Net.HttpWebResponse))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Net.IWebRequestCreate))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Net.ProtocolViolationException))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Net.WebException))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Net.WebExceptionStatus))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Net.WebHeaderCollection))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Net.WebRequest))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Net.WebResponse))]
 
index a7f198c67bf2c512ade2a1308d60a1d2acad89a7..1eac48ac27c9c0a54e35467927ac40d58ad4a110 100644 (file)
@@ -1,21 +1,16 @@
-//
-// TypeForwarders.cs
-//
-// Author:
-//       Martin Baulig <martin.baulig@xamarin.com>
-//
+// 
 // Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)
-//
+// 
 // Permission is hereby granted, free of charge, to any person obtaining a copy
 // of this software and associated documentation files (the "Software"), to deal
 // in the Software without restriction, including without limitation the rights
 // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 // copies of the Software, and to permit persons to whom the Software is
 // furnished to do so, subject to the following conditions:
-//
+// 
 // The above copyright notice and this permission notice shall be included in
 // all copies or substantial portions of the Software.
-//
+// 
 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
@@ -23,6 +18,7 @@
 // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 // THE SOFTWARE.
+// 
 
 using System;
 using System.Reflection;
@@ -31,10 +27,9 @@ using System.Runtime.CompilerServices;
 [assembly: AssemblyTitle ("System.ObjectModel.dll")]
 [assembly: AssemblyDescription ("System.ObjectModel.dll")]
 [assembly: AssemblyDefaultAlias ("System.ObjectModel.dll")]
-
-[assembly: AssemblyCompany (Consts.MonoCompany)]
-[assembly: AssemblyProduct (Consts.MonoProduct)]
-[assembly: AssemblyCopyright (Consts.MonoCopyright)]
+[assembly: AssemblyCompany ("Xamarin, Inc.")]
+[assembly: AssemblyProduct ("Mono Common Language Infrastructure")]
+[assembly: AssemblyCopyright ("Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)")]
 [assembly: AssemblyVersion ("4.0.0.0")]
 [assembly: AssemblyInformationalVersion ("4.0.0.0")]
 [assembly: AssemblyFileVersion ("4.0.0.0")]
@@ -42,3 +37,5 @@ using System.Runtime.CompilerServices;
 [assembly: AssemblyKeyFile ("../../msfinal.pub")]
 
 [assembly: ReferenceAssembly]
+
+
index 0a6e2a51183315c31ae6128bd5b5ece0c37e8c96..6f9294289b05e7b15b955d64413116c8f5773446 100644 (file)
@@ -1,15 +1,22 @@
+MCS_BUILD_DIR = ../../../build
+
 thisdir = class/Facades/System.ObjectModel
 SUBDIRS = 
-include ../../../build/rules.make
+include $(MCS_BUILD_DIR)/rules.make
 
 LIBRARY_SUBDIR = Facades
 LIBRARY_INSTALL_DIR = $(mono_libdir)/mono/$(FRAMEWORK_VERSION)/Facades
 
 LIBRARY = System.ObjectModel.dll
-LIB_MCS_FLAGS = /r:System
+
+KEY_FILE = ../../msfinal.pub
+SIGN_FLAGS = /delaysign /keyfile:$(KEY_FILE) /nowarn:1616,1699
+LIB_MCS_FLAGS = $(SIGN_FLAGS) /r:mscorlib /r:System
 
 PLATFORM_DEBUG_FLAGS =
 
 NO_TEST = yes
 
-include ../../../build/library.make
+include $(MCS_BUILD_DIR)/library.make
+
+
index 74532efb2ea75c271c00a4aeafcc07fa77ce69de..8e33d4ddeae92bde7aa8afd994db5d90d6af18d9 100644 (file)
@@ -1,3 +1,3 @@
-AssemblyInfo.cs
 TypeForwarders.cs
-../../../build/common/Consts.cs
+AssemblyInfo.cs
+
index 8737de0adc5f36a3c02e15a0f058ddb31d236ca8..2679bd038c5f09abde767c1171ff232b7e23e487 100644 (file)
@@ -1,21 +1,16 @@
-//
-// TypeForwarders.cs
-//
-// Author:
-//       Martin Baulig <martin.baulig@xamarin.com>
-//
+// 
 // Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)
-//
+// 
 // Permission is hereby granted, free of charge, to any person obtaining a copy
 // of this software and associated documentation files (the "Software"), to deal
 // in the Software without restriction, including without limitation the rights
 // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 // copies of the Software, and to permit persons to whom the Software is
 // furnished to do so, subject to the following conditions:
-//
+// 
 // The above copyright notice and this permission notice shall be included in
 // all copies or substantial portions of the Software.
-//
+// 
 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
 // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 // THE SOFTWARE.
+// 
 
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ComponentModel.INotifyPropertyChanged))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ComponentModel.PropertyChangedEventArgs))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ComponentModel.PropertyChangedEventHandler))]
+#if !MONOTOUCH
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Collections.ObjectModel.ReadOnlyDictionary<,>))]
+#endif
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Collections.ObjectModel.KeyedCollection<,>))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Collections.Specialized.INotifyCollectionChanged))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Collections.ObjectModel.ObservableCollection<>))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Collections.ObjectModel.ReadOnlyObservableCollection<>))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Collections.Specialized.INotifyCollectionChanged))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Collections.Specialized.NotifyCollectionChangedAction))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Collections.Specialized.NotifyCollectionChangedEventArgs))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Collections.Specialized.NotifyCollectionChangedEventHandler))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Windows.Input.ICommand))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ComponentModel.INotifyDataErrorInfo))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ComponentModel.DataErrorsChangedEventArgs))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ComponentModel.INotifyDataErrorInfo))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ComponentModel.INotifyPropertyChanged))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ComponentModel.PropertyChangedEventArgs))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ComponentModel.PropertyChangedEventHandler))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Windows.Input.ICommand))]
 
diff --git a/mcs/class/Facades/System.Reflection.Emit.ILGeneration/AssemblyInfo.cs b/mcs/class/Facades/System.Reflection.Emit.ILGeneration/AssemblyInfo.cs
new file mode 100644 (file)
index 0000000..43035ee
--- /dev/null
@@ -0,0 +1,41 @@
+// 
+// Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)
+// 
+// Permission is hereby granted, free of charge, to any person obtaining a copy
+// of this software and associated documentation files (the "Software"), to deal
+// in the Software without restriction, including without limitation the rights
+// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+// copies of the Software, and to permit persons to whom the Software is
+// furnished to do so, subject to the following conditions:
+// 
+// The above copyright notice and this permission notice shall be included in
+// all copies or substantial portions of the Software.
+// 
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+// THE SOFTWARE.
+// 
+
+using System;
+using System.Reflection;
+using System.Runtime.CompilerServices;
+
+[assembly: AssemblyTitle ("System.Reflection.Emit.ILGeneration.dll")]
+[assembly: AssemblyDescription ("System.Reflection.Emit.ILGeneration.dll")]
+[assembly: AssemblyDefaultAlias ("System.Reflection.Emit.ILGeneration.dll")]
+[assembly: AssemblyCompany ("Xamarin, Inc.")]
+[assembly: AssemblyProduct ("Mono Common Language Infrastructure")]
+[assembly: AssemblyCopyright ("Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)")]
+[assembly: AssemblyVersion ("4.0.0.0")]
+[assembly: AssemblyInformationalVersion ("4.0.0.0")]
+[assembly: AssemblyFileVersion ("4.0.0.0")]
+[assembly: AssemblyDelaySign (true)]
+[assembly: AssemblyKeyFile ("../../msfinal.pub")]
+
+[assembly: ReferenceAssembly]
+
+
diff --git a/mcs/class/Facades/System.Reflection.Emit.ILGeneration/Makefile b/mcs/class/Facades/System.Reflection.Emit.ILGeneration/Makefile
new file mode 100644 (file)
index 0000000..d1c857b
--- /dev/null
@@ -0,0 +1,22 @@
+MCS_BUILD_DIR = ../../../build
+
+thisdir = class/Facades/System.Reflection.Emit.ILGeneration
+SUBDIRS = 
+include $(MCS_BUILD_DIR)/rules.make
+
+LIBRARY_SUBDIR = Facades
+LIBRARY_INSTALL_DIR = $(mono_libdir)/mono/$(FRAMEWORK_VERSION)/Facades
+
+LIBRARY = System.Reflection.Emit.ILGeneration.dll
+
+KEY_FILE = ../../msfinal.pub
+SIGN_FLAGS = /delaysign /keyfile:$(KEY_FILE) /nowarn:1616,1699
+LIB_MCS_FLAGS = $(SIGN_FLAGS) /r:mscorlib
+
+PLATFORM_DEBUG_FLAGS =
+
+NO_TEST = yes
+
+include $(MCS_BUILD_DIR)/library.make
+
+
diff --git a/mcs/class/Facades/System.Reflection.Emit.ILGeneration/System.Reflection.Emit.ILGeneration.dll.sources b/mcs/class/Facades/System.Reflection.Emit.ILGeneration/System.Reflection.Emit.ILGeneration.dll.sources
new file mode 100644 (file)
index 0000000..8e33d4d
--- /dev/null
@@ -0,0 +1,3 @@
+TypeForwarders.cs
+AssemblyInfo.cs
+
diff --git a/mcs/class/Facades/System.Reflection.Emit.ILGeneration/TypeForwarders.cs b/mcs/class/Facades/System.Reflection.Emit.ILGeneration/TypeForwarders.cs
new file mode 100644 (file)
index 0000000..3547d6d
--- /dev/null
@@ -0,0 +1,29 @@
+// 
+// Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)
+// 
+// Permission is hereby granted, free of charge, to any person obtaining a copy
+// of this software and associated documentation files (the "Software"), to deal
+// in the Software without restriction, including without limitation the rights
+// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+// copies of the Software, and to permit persons to whom the Software is
+// furnished to do so, subject to the following conditions:
+// 
+// The above copyright notice and this permission notice shall be included in
+// all copies or substantial portions of the Software.
+// 
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+// THE SOFTWARE.
+// 
+
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Reflection.Emit.CustomAttributeBuilder))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Reflection.Emit.ILGenerator))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Reflection.Emit.Label))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Reflection.Emit.LocalBuilder))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Reflection.Emit.ParameterBuilder))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Reflection.Emit.SignatureHelper))]
+
diff --git a/mcs/class/Facades/System.Reflection.Emit.Lightweight/AssemblyInfo.cs b/mcs/class/Facades/System.Reflection.Emit.Lightweight/AssemblyInfo.cs
new file mode 100644 (file)
index 0000000..521dee7
--- /dev/null
@@ -0,0 +1,41 @@
+// 
+// Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)
+// 
+// Permission is hereby granted, free of charge, to any person obtaining a copy
+// of this software and associated documentation files (the "Software"), to deal
+// in the Software without restriction, including without limitation the rights
+// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+// copies of the Software, and to permit persons to whom the Software is
+// furnished to do so, subject to the following conditions:
+// 
+// The above copyright notice and this permission notice shall be included in
+// all copies or substantial portions of the Software.
+// 
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+// THE SOFTWARE.
+// 
+
+using System;
+using System.Reflection;
+using System.Runtime.CompilerServices;
+
+[assembly: AssemblyTitle ("System.Reflection.Emit.Lightweight.dll")]
+[assembly: AssemblyDescription ("System.Reflection.Emit.Lightweight.dll")]
+[assembly: AssemblyDefaultAlias ("System.Reflection.Emit.Lightweight.dll")]
+[assembly: AssemblyCompany ("Xamarin, Inc.")]
+[assembly: AssemblyProduct ("Mono Common Language Infrastructure")]
+[assembly: AssemblyCopyright ("Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)")]
+[assembly: AssemblyVersion ("4.0.0.0")]
+[assembly: AssemblyInformationalVersion ("4.0.0.0")]
+[assembly: AssemblyFileVersion ("4.0.0.0")]
+[assembly: AssemblyDelaySign (true)]
+[assembly: AssemblyKeyFile ("../../msfinal.pub")]
+
+[assembly: ReferenceAssembly]
+
+
diff --git a/mcs/class/Facades/System.Reflection.Emit.Lightweight/Makefile b/mcs/class/Facades/System.Reflection.Emit.Lightweight/Makefile
new file mode 100644 (file)
index 0000000..751a8ec
--- /dev/null
@@ -0,0 +1,22 @@
+MCS_BUILD_DIR = ../../../build
+
+thisdir = class/Facades/System.Reflection.Emit.Lightweight
+SUBDIRS = 
+include $(MCS_BUILD_DIR)/rules.make
+
+LIBRARY_SUBDIR = Facades
+LIBRARY_INSTALL_DIR = $(mono_libdir)/mono/$(FRAMEWORK_VERSION)/Facades
+
+LIBRARY = System.Reflection.Emit.Lightweight.dll
+
+KEY_FILE = ../../msfinal.pub
+SIGN_FLAGS = /delaysign /keyfile:$(KEY_FILE) /nowarn:1616,1699
+LIB_MCS_FLAGS = $(SIGN_FLAGS) /r:mscorlib
+
+PLATFORM_DEBUG_FLAGS =
+
+NO_TEST = yes
+
+include $(MCS_BUILD_DIR)/library.make
+
+
diff --git a/mcs/class/Facades/System.Reflection.Emit.Lightweight/System.Reflection.Emit.Lightweight.dll.sources b/mcs/class/Facades/System.Reflection.Emit.Lightweight/System.Reflection.Emit.Lightweight.dll.sources
new file mode 100644 (file)
index 0000000..8e33d4d
--- /dev/null
@@ -0,0 +1,3 @@
+TypeForwarders.cs
+AssemblyInfo.cs
+
diff --git a/mcs/class/Facades/System.Reflection.Emit.Lightweight/TypeForwarders.cs b/mcs/class/Facades/System.Reflection.Emit.Lightweight/TypeForwarders.cs
new file mode 100644 (file)
index 0000000..7cd359e
--- /dev/null
@@ -0,0 +1,24 @@
+// 
+// Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)
+// 
+// Permission is hereby granted, free of charge, to any person obtaining a copy
+// of this software and associated documentation files (the "Software"), to deal
+// in the Software without restriction, including without limitation the rights
+// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+// copies of the Software, and to permit persons to whom the Software is
+// furnished to do so, subject to the following conditions:
+// 
+// The above copyright notice and this permission notice shall be included in
+// all copies or substantial portions of the Software.
+// 
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+// THE SOFTWARE.
+// 
+
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Reflection.Emit.DynamicMethod))]
+
diff --git a/mcs/class/Facades/System.Reflection.Emit/AssemblyInfo.cs b/mcs/class/Facades/System.Reflection.Emit/AssemblyInfo.cs
new file mode 100644 (file)
index 0000000..656df0b
--- /dev/null
@@ -0,0 +1,41 @@
+// 
+// Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)
+// 
+// Permission is hereby granted, free of charge, to any person obtaining a copy
+// of this software and associated documentation files (the "Software"), to deal
+// in the Software without restriction, including without limitation the rights
+// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+// copies of the Software, and to permit persons to whom the Software is
+// furnished to do so, subject to the following conditions:
+// 
+// The above copyright notice and this permission notice shall be included in
+// all copies or substantial portions of the Software.
+// 
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+// THE SOFTWARE.
+// 
+
+using System;
+using System.Reflection;
+using System.Runtime.CompilerServices;
+
+[assembly: AssemblyTitle ("System.Reflection.Emit.dll")]
+[assembly: AssemblyDescription ("System.Reflection.Emit.dll")]
+[assembly: AssemblyDefaultAlias ("System.Reflection.Emit.dll")]
+[assembly: AssemblyCompany ("Xamarin, Inc.")]
+[assembly: AssemblyProduct ("Mono Common Language Infrastructure")]
+[assembly: AssemblyCopyright ("Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)")]
+[assembly: AssemblyVersion ("4.0.0.0")]
+[assembly: AssemblyInformationalVersion ("4.0.0.0")]
+[assembly: AssemblyFileVersion ("4.0.0.0")]
+[assembly: AssemblyDelaySign (true)]
+[assembly: AssemblyKeyFile ("../../msfinal.pub")]
+
+[assembly: ReferenceAssembly]
+
+
diff --git a/mcs/class/Facades/System.Reflection.Emit/Makefile b/mcs/class/Facades/System.Reflection.Emit/Makefile
new file mode 100644 (file)
index 0000000..43659a9
--- /dev/null
@@ -0,0 +1,22 @@
+MCS_BUILD_DIR = ../../../build
+
+thisdir = class/Facades/System.Reflection.Emit
+SUBDIRS = 
+include $(MCS_BUILD_DIR)/rules.make
+
+LIBRARY_SUBDIR = Facades
+LIBRARY_INSTALL_DIR = $(mono_libdir)/mono/$(FRAMEWORK_VERSION)/Facades
+
+LIBRARY = System.Reflection.Emit.dll
+
+KEY_FILE = ../../msfinal.pub
+SIGN_FLAGS = /delaysign /keyfile:$(KEY_FILE) /nowarn:1616,1699
+LIB_MCS_FLAGS = $(SIGN_FLAGS) /r:mscorlib
+
+PLATFORM_DEBUG_FLAGS =
+
+NO_TEST = yes
+
+include $(MCS_BUILD_DIR)/library.make
+
+
diff --git a/mcs/class/Facades/System.Reflection.Emit/System.Reflection.Emit.dll.sources b/mcs/class/Facades/System.Reflection.Emit/System.Reflection.Emit.dll.sources
new file mode 100644 (file)
index 0000000..8e33d4d
--- /dev/null
@@ -0,0 +1,3 @@
+TypeForwarders.cs
+AssemblyInfo.cs
+
diff --git a/mcs/class/Facades/System.Reflection.Emit/TypeForwarders.cs b/mcs/class/Facades/System.Reflection.Emit/TypeForwarders.cs
new file mode 100644 (file)
index 0000000..c00424d
--- /dev/null
@@ -0,0 +1,34 @@
+// 
+// Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)
+// 
+// Permission is hereby granted, free of charge, to any person obtaining a copy
+// of this software and associated documentation files (the "Software"), to deal
+// in the Software without restriction, including without limitation the rights
+// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+// copies of the Software, and to permit persons to whom the Software is
+// furnished to do so, subject to the following conditions:
+// 
+// The above copyright notice and this permission notice shall be included in
+// all copies or substantial portions of the Software.
+// 
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+// THE SOFTWARE.
+// 
+
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Reflection.Emit.AssemblyBuilder))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Reflection.Emit.AssemblyBuilderAccess))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Reflection.Emit.ConstructorBuilder))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Reflection.Emit.EnumBuilder))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Reflection.Emit.EventBuilder))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Reflection.Emit.FieldBuilder))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Reflection.Emit.GenericTypeParameterBuilder))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Reflection.Emit.MethodBuilder))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Reflection.Emit.ModuleBuilder))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Reflection.Emit.PropertyBuilder))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Reflection.Emit.TypeBuilder))]
+
index 9124e1b2b5e6a39e339ba9acc8de9c18ef050dd2..7b9237816ec909a737368aa2c5c8033c9e1e0bcf 100644 (file)
@@ -1,21 +1,16 @@
-//
-// TypeForwarders.cs
-//
-// Author:
-//       Martin Baulig <martin.baulig@xamarin.com>
-//
+// 
 // Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)
-//
+// 
 // Permission is hereby granted, free of charge, to any person obtaining a copy
 // of this software and associated documentation files (the "Software"), to deal
 // in the Software without restriction, including without limitation the rights
 // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 // copies of the Software, and to permit persons to whom the Software is
 // furnished to do so, subject to the following conditions:
-//
+// 
 // The above copyright notice and this permission notice shall be included in
 // all copies or substantial portions of the Software.
-//
+// 
 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
@@ -23,6 +18,7 @@
 // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 // THE SOFTWARE.
+// 
 
 using System;
 using System.Reflection;
@@ -31,10 +27,9 @@ using System.Runtime.CompilerServices;
 [assembly: AssemblyTitle ("System.Reflection.Extensions.dll")]
 [assembly: AssemblyDescription ("System.Reflection.Extensions.dll")]
 [assembly: AssemblyDefaultAlias ("System.Reflection.Extensions.dll")]
-
-[assembly: AssemblyCompany (Consts.MonoCompany)]
-[assembly: AssemblyProduct (Consts.MonoProduct)]
-[assembly: AssemblyCopyright (Consts.MonoCopyright)]
+[assembly: AssemblyCompany ("Xamarin, Inc.")]
+[assembly: AssemblyProduct ("Mono Common Language Infrastructure")]
+[assembly: AssemblyCopyright ("Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)")]
 [assembly: AssemblyVersion ("4.0.0.0")]
 [assembly: AssemblyInformationalVersion ("4.0.0.0")]
 [assembly: AssemblyFileVersion ("4.0.0.0")]
@@ -42,3 +37,5 @@ using System.Runtime.CompilerServices;
 [assembly: AssemblyKeyFile ("../../msfinal.pub")]
 
 [assembly: ReferenceAssembly]
+
+
index aaf20facb06708123d642f67fa8736eabd2a59c3..ff09a4df7512110aa1dfd08c12ee2efd472c70d5 100644 (file)
@@ -1,15 +1,22 @@
+MCS_BUILD_DIR = ../../../build
+
 thisdir = class/Facades/System.Reflection.Extensions
 SUBDIRS = 
-include ../../../build/rules.make
+include $(MCS_BUILD_DIR)/rules.make
 
 LIBRARY_SUBDIR = Facades
 LIBRARY_INSTALL_DIR = $(mono_libdir)/mono/$(FRAMEWORK_VERSION)/Facades
 
 LIBRARY = System.Reflection.Extensions.dll
-LIB_MCS_FLAGS =
+
+KEY_FILE = ../../msfinal.pub
+SIGN_FLAGS = /delaysign /keyfile:$(KEY_FILE) /nowarn:1616,1699
+LIB_MCS_FLAGS = $(SIGN_FLAGS) /r:mscorlib
 
 PLATFORM_DEBUG_FLAGS =
 
 NO_TEST = yes
 
-include ../../../build/library.make
+include $(MCS_BUILD_DIR)/library.make
+
+
index 3ed6cd94c08745916b45812e225f10c670bcab77..0bb74c4e2cdf0fb8967b703b2a5ddbc6806701ba 100644 (file)
@@ -1,21 +1,16 @@
-//
-// TypeForwarders.cs
-//
-// Author:
-//       Martin Baulig <martin.baulig@xamarin.com>
-//
+// 
 // Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)
-//
+// 
 // Permission is hereby granted, free of charge, to any person obtaining a copy
 // of this software and associated documentation files (the "Software"), to deal
 // in the Software without restriction, including without limitation the rights
 // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 // copies of the Software, and to permit persons to whom the Software is
 // furnished to do so, subject to the following conditions:
-//
+// 
 // The above copyright notice and this permission notice shall be included in
 // all copies or substantial portions of the Software.
-//
+// 
 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
@@ -23,6 +18,7 @@
 // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 // THE SOFTWARE.
+// 
 
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Reflection.CustomAttributeExtensions))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Reflection.InterfaceMapping))]
index 0141d30c0ee1da43673c2a06a5efa233c64268ed..260b4584c69bd991a449844adebc823dc9208791 100644 (file)
@@ -1,21 +1,16 @@
-//
-// TypeForwarders.cs
-//
-// Author:
-//       Martin Baulig <martin.baulig@xamarin.com>
-//
+// 
 // Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)
-//
+// 
 // Permission is hereby granted, free of charge, to any person obtaining a copy
 // of this software and associated documentation files (the "Software"), to deal
 // in the Software without restriction, including without limitation the rights
 // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 // copies of the Software, and to permit persons to whom the Software is
 // furnished to do so, subject to the following conditions:
-//
+// 
 // The above copyright notice and this permission notice shall be included in
 // all copies or substantial portions of the Software.
-//
+// 
 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
@@ -23,6 +18,7 @@
 // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 // THE SOFTWARE.
+// 
 
 using System;
 using System.Reflection;
@@ -31,10 +27,9 @@ using System.Runtime.CompilerServices;
 [assembly: AssemblyTitle ("System.Reflection.Primitives.dll")]
 [assembly: AssemblyDescription ("System.Reflection.Primitives.dll")]
 [assembly: AssemblyDefaultAlias ("System.Reflection.Primitives.dll")]
-
-[assembly: AssemblyCompany (Consts.MonoCompany)]
-[assembly: AssemblyProduct (Consts.MonoProduct)]
-[assembly: AssemblyCopyright (Consts.MonoCopyright)]
+[assembly: AssemblyCompany ("Xamarin, Inc.")]
+[assembly: AssemblyProduct ("Mono Common Language Infrastructure")]
+[assembly: AssemblyCopyright ("Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)")]
 [assembly: AssemblyVersion ("4.0.0.0")]
 [assembly: AssemblyInformationalVersion ("4.0.0.0")]
 [assembly: AssemblyFileVersion ("4.0.0.0")]
@@ -42,3 +37,5 @@ using System.Runtime.CompilerServices;
 [assembly: AssemblyKeyFile ("../../msfinal.pub")]
 
 [assembly: ReferenceAssembly]
+
+
index 602815ba56c2cb8b84cf1406b473454c8a9b5017..6d1d422f0fa56c363c2a35e5b837172746bada31 100644 (file)
@@ -1,15 +1,22 @@
+MCS_BUILD_DIR = ../../../build
+
 thisdir = class/Facades/System.Reflection.Primitives
 SUBDIRS = 
-include ../../../build/rules.make
+include $(MCS_BUILD_DIR)/rules.make
 
 LIBRARY_SUBDIR = Facades
 LIBRARY_INSTALL_DIR = $(mono_libdir)/mono/$(FRAMEWORK_VERSION)/Facades
 
 LIBRARY = System.Reflection.Primitives.dll
-LIB_MCS_FLAGS =
+
+KEY_FILE = ../../msfinal.pub
+SIGN_FLAGS = /delaysign /keyfile:$(KEY_FILE) /nowarn:1616,1699
+LIB_MCS_FLAGS = $(SIGN_FLAGS) /r:mscorlib
 
 PLATFORM_DEBUG_FLAGS =
 
 NO_TEST = yes
 
-include ../../../build/library.make
+include $(MCS_BUILD_DIR)/library.make
+
+
index 8dfe9b4b95061ac9077fb2f874b201948f4a465d..d19ab64febc11b05c64c1faae970e4bed2829469 100644 (file)
@@ -1,21 +1,16 @@
-//
-// TypeForwarders.cs
-//
-// Author:
-//       Martin Baulig <martin.baulig@xamarin.com>
-//
+// 
 // Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)
-//
+// 
 // Permission is hereby granted, free of charge, to any person obtaining a copy
 // of this software and associated documentation files (the "Software"), to deal
 // in the Software without restriction, including without limitation the rights
 // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 // copies of the Software, and to permit persons to whom the Software is
 // furnished to do so, subject to the following conditions:
-//
+// 
 // The above copyright notice and this permission notice shall be included in
 // all copies or substantial portions of the Software.
-//
+// 
 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
 // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 // THE SOFTWARE.
+// 
 
+#if !MONOTOUCH
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Reflection.Emit.FlowControl))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Reflection.Emit.OpCode))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Reflection.Emit.OpCodes))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Reflection.Emit.OpCodeType))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Reflection.Emit.OperandType))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Reflection.Emit.PackingSize))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Reflection.Emit.StackBehaviour))]
+#endif
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Reflection.CallingConventions))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Reflection.EventAttributes))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Reflection.FieldAttributes))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Reflection.GenericParameterAttributes))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Reflection.MethodAttributes))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Reflection.MethodImplAttributes))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Reflection.ParameterAttributes))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Reflection.PropertyAttributes))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Reflection.TypeAttributes))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Reflection.MethodImplAttributes))]
 
index 6c614cdb54909d3ec52a46e8748eb5e6211c8a7a..36520e0b758e7a229c37649a4aa0311d33565154 100644 (file)
@@ -1,21 +1,16 @@
-//
-// TypeForwarders.cs
-//
-// Author:
-//       Martin Baulig <martin.baulig@xamarin.com>
-//
+// 
 // Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)
-//
+// 
 // Permission is hereby granted, free of charge, to any person obtaining a copy
 // of this software and associated documentation files (the "Software"), to deal
 // in the Software without restriction, including without limitation the rights
 // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 // copies of the Software, and to permit persons to whom the Software is
 // furnished to do so, subject to the following conditions:
-//
+// 
 // The above copyright notice and this permission notice shall be included in
 // all copies or substantial portions of the Software.
-//
+// 
 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
@@ -23,6 +18,7 @@
 // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 // THE SOFTWARE.
+// 
 
 using System;
 using System.Reflection;
@@ -31,10 +27,9 @@ using System.Runtime.CompilerServices;
 [assembly: AssemblyTitle ("System.Reflection.dll")]
 [assembly: AssemblyDescription ("System.Reflection.dll")]
 [assembly: AssemblyDefaultAlias ("System.Reflection.dll")]
-
-[assembly: AssemblyCompany (Consts.MonoCompany)]
-[assembly: AssemblyProduct (Consts.MonoProduct)]
-[assembly: AssemblyCopyright (Consts.MonoCopyright)]
+[assembly: AssemblyCompany ("Xamarin, Inc.")]
+[assembly: AssemblyProduct ("Mono Common Language Infrastructure")]
+[assembly: AssemblyCopyright ("Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)")]
 [assembly: AssemblyVersion ("4.0.0.0")]
 [assembly: AssemblyInformationalVersion ("4.0.0.0")]
 [assembly: AssemblyFileVersion ("4.0.0.0")]
@@ -42,3 +37,5 @@ using System.Runtime.CompilerServices;
 [assembly: AssemblyKeyFile ("../../msfinal.pub")]
 
 [assembly: ReferenceAssembly]
+
+
index 85c5ac89f13454b7df8a764b5cc9ed031e244702..12e2a5f649ef3620014991794aa4fc218d62f355 100644 (file)
@@ -1,15 +1,22 @@
+MCS_BUILD_DIR = ../../../build
+
 thisdir = class/Facades/System.Reflection
 SUBDIRS = 
-include ../../../build/rules.make
+include $(MCS_BUILD_DIR)/rules.make
 
 LIBRARY_SUBDIR = Facades
 LIBRARY_INSTALL_DIR = $(mono_libdir)/mono/$(FRAMEWORK_VERSION)/Facades
 
 LIBRARY = System.Reflection.dll
-LIB_MCS_FLAGS =
+
+KEY_FILE = ../../msfinal.pub
+SIGN_FLAGS = /delaysign /keyfile:$(KEY_FILE) /nowarn:1616,1699
+LIB_MCS_FLAGS = $(SIGN_FLAGS) /r:mscorlib
 
 PLATFORM_DEBUG_FLAGS =
 
 NO_TEST = yes
 
-include ../../../build/library.make
+include $(MCS_BUILD_DIR)/library.make
+
+
index 74532efb2ea75c271c00a4aeafcc07fa77ce69de..8e33d4ddeae92bde7aa8afd994db5d90d6af18d9 100644 (file)
@@ -1,3 +1,3 @@
-AssemblyInfo.cs
 TypeForwarders.cs
-../../../build/common/Consts.cs
+AssemblyInfo.cs
+
index 5e5d09de03ed92a4765f22493ba54ef087691948..511c1fe2ed3af0233af458fa162b98c6263d916d 100644 (file)
@@ -1,21 +1,16 @@
-//
-// TypeForwarders.cs
-//
-// Author:
-//       Martin Baulig <martin.baulig@xamarin.com>
-//
+// 
 // Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)
-//
+// 
 // Permission is hereby granted, free of charge, to any person obtaining a copy
 // of this software and associated documentation files (the "Software"), to deal
 // in the Software without restriction, including without limitation the rights
 // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 // copies of the Software, and to permit persons to whom the Software is
 // furnished to do so, subject to the following conditions:
-//
+// 
 // The above copyright notice and this permission notice shall be included in
 // all copies or substantial portions of the Software.
-//
+// 
 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
 // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 // THE SOFTWARE.
+// 
 
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Reflection.MemberInfo))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Reflection.AmbiguousMatchException))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Reflection.Assembly))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Reflection.AssemblyContentType))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Reflection.AssemblyName))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Reflection.MethodBase))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Reflection.ConstructorInfo))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Reflection.CustomAttributeData))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Reflection.CustomAttributeNamedArgument))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Reflection.CustomAttributeTypedArgument))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Reflection.EventInfo))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Reflection.FieldInfo))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Reflection.IntrospectionExtensions))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Reflection.IReflectableType))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Reflection.LocalVariableInfo))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Reflection.ManifestResourceInfo))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Reflection.MemberInfo))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Reflection.MethodBase))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Reflection.MethodInfo))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Reflection.Module))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Reflection.ParameterInfo))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Reflection.PropertyInfo))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Reflection.ReflectionContext))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Reflection.ReflectionTypeLoadException))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Reflection.ResourceLocation))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Reflection.TargetInvocationException))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Reflection.TargetParameterCountException))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Reflection.ManifestResourceInfo))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Reflection.ResourceLocation))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Reflection.AssemblyContentType))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Reflection.CustomAttributeData))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Reflection.CustomAttributeNamedArgument))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Reflection.CustomAttributeTypedArgument))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Reflection.IntrospectionExtensions))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Reflection.IReflectableType))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Reflection.LocalVariableInfo))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Reflection.ReflectionContext))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Reflection.TypeInfo))]
 
index 97c869f804d848e170b673e9b76b68c492c1c210..067874f4f03e3d9872033ab694e71f4614f10780 100644 (file)
@@ -1,21 +1,16 @@
-//
-// TypeForwarders.cs
-//
-// Author:
-//       Martin Baulig <martin.baulig@xamarin.com>
-//
+// 
 // Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)
-//
+// 
 // Permission is hereby granted, free of charge, to any person obtaining a copy
 // of this software and associated documentation files (the "Software"), to deal
 // in the Software without restriction, including without limitation the rights
 // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 // copies of the Software, and to permit persons to whom the Software is
 // furnished to do so, subject to the following conditions:
-//
+// 
 // The above copyright notice and this permission notice shall be included in
 // all copies or substantial portions of the Software.
-//
+// 
 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
@@ -23,6 +18,7 @@
 // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 // THE SOFTWARE.
+// 
 
 using System;
 using System.Reflection;
@@ -31,10 +27,9 @@ using System.Runtime.CompilerServices;
 [assembly: AssemblyTitle ("System.Resources.ResourceManager.dll")]
 [assembly: AssemblyDescription ("System.Resources.ResourceManager.dll")]
 [assembly: AssemblyDefaultAlias ("System.Resources.ResourceManager.dll")]
-
-[assembly: AssemblyCompany (Consts.MonoCompany)]
-[assembly: AssemblyProduct (Consts.MonoProduct)]
-[assembly: AssemblyCopyright (Consts.MonoCopyright)]
+[assembly: AssemblyCompany ("Xamarin, Inc.")]
+[assembly: AssemblyProduct ("Mono Common Language Infrastructure")]
+[assembly: AssemblyCopyright ("Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)")]
 [assembly: AssemblyVersion ("4.0.0.0")]
 [assembly: AssemblyInformationalVersion ("4.0.0.0")]
 [assembly: AssemblyFileVersion ("4.0.0.0")]
@@ -42,3 +37,5 @@ using System.Runtime.CompilerServices;
 [assembly: AssemblyKeyFile ("../../msfinal.pub")]
 
 [assembly: ReferenceAssembly]
+
+
index 0a3cf9d3479ea0c3f272da0e58136219ab47fd8a..018d07790580c150ad0e71a517a53f57fb6b9d2d 100644 (file)
@@ -1,15 +1,22 @@
+MCS_BUILD_DIR = ../../../build
+
 thisdir = class/Facades/System.Resources.ResourceManager
 SUBDIRS = 
-include ../../../build/rules.make
+include $(MCS_BUILD_DIR)/rules.make
 
 LIBRARY_SUBDIR = Facades
 LIBRARY_INSTALL_DIR = $(mono_libdir)/mono/$(FRAMEWORK_VERSION)/Facades
 
 LIBRARY = System.Resources.ResourceManager.dll
-LIB_MCS_FLAGS =
+
+KEY_FILE = ../../msfinal.pub
+SIGN_FLAGS = /delaysign /keyfile:$(KEY_FILE) /nowarn:1616,1699
+LIB_MCS_FLAGS = $(SIGN_FLAGS) /r:mscorlib
 
 PLATFORM_DEBUG_FLAGS =
 
 NO_TEST = yes
 
-include ../../../build/library.make
+include $(MCS_BUILD_DIR)/library.make
+
+
index 349023f6cc6dfdd6aa33612fea4eb68b9a814995..bea32f418ed2635d49141b252dc89e761432f44b 100644 (file)
@@ -1,21 +1,16 @@
-//
-// TypeForwarders.cs
-//
-// Author:
-//       Martin Baulig <martin.baulig@xamarin.com>
-//
+// 
 // Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)
-//
+// 
 // Permission is hereby granted, free of charge, to any person obtaining a copy
 // of this software and associated documentation files (the "Software"), to deal
 // in the Software without restriction, including without limitation the rights
 // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 // copies of the Software, and to permit persons to whom the Software is
 // furnished to do so, subject to the following conditions:
-//
+// 
 // The above copyright notice and this permission notice shall be included in
 // all copies or substantial portions of the Software.
-//
+// 
 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
@@ -23,6 +18,7 @@
 // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 // THE SOFTWARE.
+// 
 
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Resources.MissingManifestResourceException))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Resources.NeutralResourcesLanguageAttribute))]
index 8d2517ab53f5d5f7782f2562ccbb6c099627ed14..f3163e0d806175083fe3688a7546ff2b61997081 100644 (file)
@@ -1,21 +1,16 @@
-//
-// TypeForwarders.cs
-//
-// Author:
-//       Martin Baulig <martin.baulig@xamarin.com>
-//
+// 
 // Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)
-//
+// 
 // Permission is hereby granted, free of charge, to any person obtaining a copy
 // of this software and associated documentation files (the "Software"), to deal
 // in the Software without restriction, including without limitation the rights
 // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 // copies of the Software, and to permit persons to whom the Software is
 // furnished to do so, subject to the following conditions:
-//
+// 
 // The above copyright notice and this permission notice shall be included in
 // all copies or substantial portions of the Software.
-//
+// 
 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
@@ -23,6 +18,7 @@
 // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 // THE SOFTWARE.
+// 
 
 using System;
 using System.Reflection;
@@ -31,10 +27,9 @@ using System.Runtime.CompilerServices;
 [assembly: AssemblyTitle ("System.Runtime.Extensions.dll")]
 [assembly: AssemblyDescription ("System.Runtime.Extensions.dll")]
 [assembly: AssemblyDefaultAlias ("System.Runtime.Extensions.dll")]
-
-[assembly: AssemblyCompany (Consts.MonoCompany)]
-[assembly: AssemblyProduct (Consts.MonoProduct)]
-[assembly: AssemblyCopyright (Consts.MonoCopyright)]
+[assembly: AssemblyCompany ("Xamarin, Inc.")]
+[assembly: AssemblyProduct ("Mono Common Language Infrastructure")]
+[assembly: AssemblyCopyright ("Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)")]
 [assembly: AssemblyVersion ("4.0.0.0")]
 [assembly: AssemblyInformationalVersion ("4.0.0.0")]
 [assembly: AssemblyFileVersion ("4.0.0.0")]
@@ -42,3 +37,5 @@ using System.Runtime.CompilerServices;
 [assembly: AssemblyKeyFile ("../../msfinal.pub")]
 
 [assembly: ReferenceAssembly]
+
+
index 9c371e1bedfcf502ed84c72478ac13711bf58f6f..489c457dc9c1a5eb68220fa7a56c045e4f06ce43 100644 (file)
@@ -1,15 +1,22 @@
+MCS_BUILD_DIR = ../../../build
+
 thisdir = class/Facades/System.Runtime.Extensions
 SUBDIRS = 
-include ../../../build/rules.make
+include $(MCS_BUILD_DIR)/rules.make
 
 LIBRARY_SUBDIR = Facades
 LIBRARY_INSTALL_DIR = $(mono_libdir)/mono/$(FRAMEWORK_VERSION)/Facades
 
 LIBRARY = System.Runtime.Extensions.dll
-LIB_MCS_FLAGS = /r:System
+
+KEY_FILE = ../../msfinal.pub
+SIGN_FLAGS = /delaysign /keyfile:$(KEY_FILE) /nowarn:1616,1699
+LIB_MCS_FLAGS = $(SIGN_FLAGS) /r:mscorlib /r:System
 
 PLATFORM_DEBUG_FLAGS =
 
 NO_TEST = yes
 
-include ../../../build/library.make
+include $(MCS_BUILD_DIR)/library.make
+
+
index 74532efb2ea75c271c00a4aeafcc07fa77ce69de..8e33d4ddeae92bde7aa8afd994db5d90d6af18d9 100644 (file)
@@ -1,3 +1,3 @@
-AssemblyInfo.cs
 TypeForwarders.cs
-../../../build/common/Consts.cs
+AssemblyInfo.cs
+
index d0c05ecc0471762d03fa8fcbd93b397c1f41091c..a12987dbdc9a3f4f5499be921bce29b62c9eb4eb 100644 (file)
@@ -1,21 +1,16 @@
-//
-// TypeForwarders.cs
-//
-// Author:
-//       Martin Baulig <martin.baulig@xamarin.com>
-//
+// 
 // Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)
-//
+// 
 // Permission is hereby granted, free of charge, to any person obtaining a copy
 // of this software and associated documentation files (the "Software"), to deal
 // in the Software without restriction, including without limitation the rights
 // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 // copies of the Software, and to permit persons to whom the Software is
 // furnished to do so, subject to the following conditions:
-//
+// 
 // The above copyright notice and this permission notice shall be included in
 // all copies or substantial portions of the Software.
-//
+// 
 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
 // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 // THE SOFTWARE.
+// 
 
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.UriBuilder))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.BitConverter))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Convert))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Diagnostics.Stopwatch))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Environment))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.IO.Path))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Math))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Random))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.StringComparer))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Diagnostics.Stopwatch))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.MidpointRounding))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Progress<>))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.IO.Path))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Net.WebUtility))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Progress<>))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Random))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.StringComparer))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.UriBuilder))]
 
index fa299ae9c62bc9e792b1f33870cd8e53cce577ec..25b7d0a0538d62eca48b3064cc3caea26cd0f499 100644 (file)
@@ -1,21 +1,16 @@
-//
-// TypeForwarders.cs
-//
-// Author:
-//       Martin Baulig <martin.baulig@xamarin.com>
-//
+// 
 // Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)
-//
+// 
 // Permission is hereby granted, free of charge, to any person obtaining a copy
 // of this software and associated documentation files (the "Software"), to deal
 // in the Software without restriction, including without limitation the rights
 // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 // copies of the Software, and to permit persons to whom the Software is
 // furnished to do so, subject to the following conditions:
-//
+// 
 // The above copyright notice and this permission notice shall be included in
 // all copies or substantial portions of the Software.
-//
+// 
 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
@@ -23,6 +18,7 @@
 // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 // THE SOFTWARE.
+// 
 
 using System;
 using System.Reflection;
@@ -31,10 +27,9 @@ using System.Runtime.CompilerServices;
 [assembly: AssemblyTitle ("System.Runtime.InteropServices.dll")]
 [assembly: AssemblyDescription ("System.Runtime.InteropServices.dll")]
 [assembly: AssemblyDefaultAlias ("System.Runtime.InteropServices.dll")]
-
-[assembly: AssemblyCompany (Consts.MonoCompany)]
-[assembly: AssemblyProduct (Consts.MonoProduct)]
-[assembly: AssemblyCopyright (Consts.MonoCopyright)]
+[assembly: AssemblyCompany ("Xamarin, Inc.")]
+[assembly: AssemblyProduct ("Mono Common Language Infrastructure")]
+[assembly: AssemblyCopyright ("Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)")]
 [assembly: AssemblyVersion ("4.0.0.0")]
 [assembly: AssemblyInformationalVersion ("4.0.0.0")]
 [assembly: AssemblyFileVersion ("4.0.0.0")]
@@ -42,3 +37,5 @@ using System.Runtime.CompilerServices;
 [assembly: AssemblyKeyFile ("../../msfinal.pub")]
 
 [assembly: ReferenceAssembly]
+
+
index 133466068cd6cdd066c4ed59927d8a22a849d676..b3e4a41c80e9b3a025101a221ec17b7d35a856b7 100644 (file)
@@ -1,15 +1,22 @@
+MCS_BUILD_DIR = ../../../build
+
 thisdir = class/Facades/System.Runtime.InteropServices
 SUBDIRS = 
-include ../../../build/rules.make
+include $(MCS_BUILD_DIR)/rules.make
 
 LIBRARY_SUBDIR = Facades
 LIBRARY_INSTALL_DIR = $(mono_libdir)/mono/$(FRAMEWORK_VERSION)/Facades
 
 LIBRARY = System.Runtime.InteropServices.dll
-LIB_MCS_FLAGS = /r:System
+
+KEY_FILE = ../../msfinal.pub
+SIGN_FLAGS = /delaysign /keyfile:$(KEY_FILE) /nowarn:1616,1699
+LIB_MCS_FLAGS = $(SIGN_FLAGS) /r:mscorlib /r:System /r:System.Core
 
 PLATFORM_DEBUG_FLAGS =
 
 NO_TEST = yes
 
-include ../../../build/library.make
+include $(MCS_BUILD_DIR)/library.make
+
+
index 29d69ea40a18400da0485695519f10c5bb02e725..0c7e63a212e1b1006a613d33d1d4a84f4b7ea6b8 100644 (file)
@@ -1,21 +1,16 @@
-//
-// TypeForwarders.cs
-//
-// Author:
-//       Martin Baulig <martin.baulig@xamarin.com>
-//
+// 
 // Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)
-//
+// 
 // Permission is hereby granted, free of charge, to any person obtaining a copy
 // of this software and associated documentation files (the "Software"), to deal
 // in the Software without restriction, including without limitation the rights
 // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 // copies of the Software, and to permit persons to whom the Software is
 // furnished to do so, subject to the following conditions:
-//
+// 
 // The above copyright notice and this permission notice shall be included in
 // all copies or substantial portions of the Software.
-//
+// 
 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
 // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 // THE SOFTWARE.
+// 
 
+#if !MONOTOUCH
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.InteropServices.ComImportAttribute))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.InteropServices.DispatchWrapper))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.InteropServices.ErrorWrapper))]
+#endif
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.DataMisalignedException))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Reflection.Missing))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.DllNotFoundException))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Reflection.Missing))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.InteropServices.ArrayWithOffset))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.InteropServices.BestFitMappingAttribute))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.InteropServices.BStrWrapper))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.InteropServices.ComDefaultInterfaceAttribute))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.InteropServices.ComEventInterfaceAttribute))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.InteropServices.COMException))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.InteropServices.ComInterfaceType))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.InteropServices.ComMemberType))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.InteropServices.ComSourceInterfacesAttribute))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.InteropServices.CriticalHandle))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.InteropServices.CurrencyWrapper))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.InteropServices.DefaultCharSetAttribute))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.InteropServices.DispIdAttribute))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.InteropServices.GuidAttribute))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.InteropServices.ICustomAdapter))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.InteropServices.InAttribute))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.InteropServices.InterfaceTypeAttribute))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.InteropServices.InvalidComObjectException))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.InteropServices.InvalidOleVariantTypeException))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.InteropServices.MarshalAsAttribute))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.InteropServices.MarshalDirectiveException))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.InteropServices.OptionalAttribute))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.InteropServices.PreserveSigAttribute))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.InteropServices.SafeArrayRankMismatchException))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.InteropServices.SafeArrayTypeMismatchException))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.InteropServices.SafeHandle))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.InteropServices.SafeBuffer))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.InteropServices.SEHException))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.InteropServices.TypeIdentifierAttribute))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.InteropServices.UnknownWrapper))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.InteropServices.UnmanagedFunctionPointerAttribute))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.InteropServices.UnmanagedType))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.InteropServices.VarEnum))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.InteropServices.VariantWrapper))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.InteropServices.DefaultParameterValueAttribute))]
 
index 3a4e894f56bd61409853085078a4cb8492b568d4..00b01219c870dc95ab0ecd64cac85c045816cffb 100644 (file)
@@ -1,21 +1,16 @@
-//
-// TypeForwarders.cs
-//
-// Author:
-//       Martin Baulig <martin.baulig@xamarin.com>
-//
+// 
 // Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)
-//
+// 
 // Permission is hereby granted, free of charge, to any person obtaining a copy
 // of this software and associated documentation files (the "Software"), to deal
 // in the Software without restriction, including without limitation the rights
 // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 // copies of the Software, and to permit persons to whom the Software is
 // furnished to do so, subject to the following conditions:
-//
+// 
 // The above copyright notice and this permission notice shall be included in
 // all copies or substantial portions of the Software.
-//
+// 
 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
@@ -23,6 +18,7 @@
 // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 // THE SOFTWARE.
+// 
 
 using System;
 using System.Reflection;
@@ -31,10 +27,9 @@ using System.Runtime.CompilerServices;
 [assembly: AssemblyTitle ("System.Runtime.Numerics.dll")]
 [assembly: AssemblyDescription ("System.Runtime.Numerics.dll")]
 [assembly: AssemblyDefaultAlias ("System.Runtime.Numerics.dll")]
-
-[assembly: AssemblyCompany (Consts.MonoCompany)]
-[assembly: AssemblyProduct (Consts.MonoProduct)]
-[assembly: AssemblyCopyright (Consts.MonoCopyright)]
+[assembly: AssemblyCompany ("Xamarin, Inc.")]
+[assembly: AssemblyProduct ("Mono Common Language Infrastructure")]
+[assembly: AssemblyCopyright ("Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)")]
 [assembly: AssemblyVersion ("4.0.0.0")]
 [assembly: AssemblyInformationalVersion ("4.0.0.0")]
 [assembly: AssemblyFileVersion ("4.0.0.0")]
@@ -42,3 +37,5 @@ using System.Runtime.CompilerServices;
 [assembly: AssemblyKeyFile ("../../msfinal.pub")]
 
 [assembly: ReferenceAssembly]
+
+
index eb821c86566eee40846984d6d61526d210446877..b21abddbabe6970d1841b16dee3c0947d02cbb0c 100644 (file)
@@ -1,15 +1,22 @@
+MCS_BUILD_DIR = ../../../build
+
 thisdir = class/Facades/System.Runtime.Numerics
 SUBDIRS = 
-include ../../../build/rules.make
+include $(MCS_BUILD_DIR)/rules.make
 
 LIBRARY_SUBDIR = Facades
 LIBRARY_INSTALL_DIR = $(mono_libdir)/mono/$(FRAMEWORK_VERSION)/Facades
 
 LIBRARY = System.Runtime.Numerics.dll
-LIB_MCS_FLAGS = /r:System.Numerics
+
+KEY_FILE = ../../msfinal.pub
+SIGN_FLAGS = /delaysign /keyfile:$(KEY_FILE) /nowarn:1616,1699
+LIB_MCS_FLAGS = $(SIGN_FLAGS) /r:mscorlib /r:System.Numerics
 
 PLATFORM_DEBUG_FLAGS =
 
 NO_TEST = yes
 
-include ../../../build/library.make
+include $(MCS_BUILD_DIR)/library.make
+
+
index 74532efb2ea75c271c00a4aeafcc07fa77ce69de..8e33d4ddeae92bde7aa8afd994db5d90d6af18d9 100644 (file)
@@ -1,3 +1,3 @@
-AssemblyInfo.cs
 TypeForwarders.cs
-../../../build/common/Consts.cs
+AssemblyInfo.cs
+
index e937f327cdc828dad832fa166c33df425b122ebb..ac647df3d151841a3f39f5f8754767eff76215f6 100644 (file)
@@ -1,21 +1,16 @@
-//
-// TypeForwarders.cs
-//
-// Author:
-//       Martin Baulig <martin.baulig@xamarin.com>
-//
+// 
 // Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)
-//
+// 
 // Permission is hereby granted, free of charge, to any person obtaining a copy
 // of this software and associated documentation files (the "Software"), to deal
 // in the Software without restriction, including without limitation the rights
 // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 // copies of the Software, and to permit persons to whom the Software is
 // furnished to do so, subject to the following conditions:
-//
+// 
 // The above copyright notice and this permission notice shall be included in
 // all copies or substantial portions of the Software.
-//
+// 
 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
@@ -23,6 +18,7 @@
 // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 // THE SOFTWARE.
+// 
 
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Numerics.BigInteger))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Numerics.Complex))]
index 6eda657d09a31ac48013c18870ae1e108a0f2902..6710dca152ae0b2b8bcc78348a8ebd40a3b0b19a 100644 (file)
@@ -1,21 +1,16 @@
-//
-// TypeForwarders.cs
-//
-// Author:
-//       Martin Baulig <martin.baulig@xamarin.com>
-//
+// 
 // Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)
-//
+// 
 // Permission is hereby granted, free of charge, to any person obtaining a copy
 // of this software and associated documentation files (the "Software"), to deal
 // in the Software without restriction, including without limitation the rights
 // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 // copies of the Software, and to permit persons to whom the Software is
 // furnished to do so, subject to the following conditions:
-//
+// 
 // The above copyright notice and this permission notice shall be included in
 // all copies or substantial portions of the Software.
-//
+// 
 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
@@ -23,6 +18,7 @@
 // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 // THE SOFTWARE.
+// 
 
 using System;
 using System.Reflection;
@@ -31,10 +27,9 @@ using System.Runtime.CompilerServices;
 [assembly: AssemblyTitle ("System.Runtime.Serialization.Json.dll")]
 [assembly: AssemblyDescription ("System.Runtime.Serialization.Json.dll")]
 [assembly: AssemblyDefaultAlias ("System.Runtime.Serialization.Json.dll")]
-
-[assembly: AssemblyCompany (Consts.MonoCompany)]
-[assembly: AssemblyProduct (Consts.MonoProduct)]
-[assembly: AssemblyCopyright (Consts.MonoCopyright)]
+[assembly: AssemblyCompany ("Xamarin, Inc.")]
+[assembly: AssemblyProduct ("Mono Common Language Infrastructure")]
+[assembly: AssemblyCopyright ("Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)")]
 [assembly: AssemblyVersion ("4.0.0.0")]
 [assembly: AssemblyInformationalVersion ("4.0.0.0")]
 [assembly: AssemblyFileVersion ("4.0.0.0")]
@@ -42,3 +37,5 @@ using System.Runtime.CompilerServices;
 [assembly: AssemblyKeyFile ("../../msfinal.pub")]
 
 [assembly: ReferenceAssembly]
+
+
index 8997f73155fde0979d48e876e57bf276c4d4cfb2..30bc06f1d1910a14d403d8b101b97379864b9716 100644 (file)
@@ -1,15 +1,22 @@
+MCS_BUILD_DIR = ../../../build
+
 thisdir = class/Facades/System.Runtime.Serialization.Json
 SUBDIRS = 
-include ../../../build/rules.make
+include $(MCS_BUILD_DIR)/rules.make
 
 LIBRARY_SUBDIR = Facades
 LIBRARY_INSTALL_DIR = $(mono_libdir)/mono/$(FRAMEWORK_VERSION)/Facades
 
 LIBRARY = System.Runtime.Serialization.Json.dll
-LIB_MCS_FLAGS = /r:System.Runtime.Serialization /r:System.Xml
+
+KEY_FILE = ../../msfinal.pub
+SIGN_FLAGS = /delaysign /keyfile:$(KEY_FILE) /nowarn:1616,1699
+LIB_MCS_FLAGS = $(SIGN_FLAGS) /r:mscorlib /r:System.Runtime.Serialization
 
 PLATFORM_DEBUG_FLAGS =
 
 NO_TEST = yes
 
-include ../../../build/library.make
+include $(MCS_BUILD_DIR)/library.make
+
+
index 9ccfd6eba2a4bfa1961edb5c794f7c38a01e5428..57aeedd78ae00f106939c33d539deaf065989481 100644 (file)
@@ -1,21 +1,16 @@
-//
-// TypeForwarders.cs
-//
-// Author:
-//       Martin Baulig <martin.baulig@xamarin.com>
-//
+// 
 // Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)
-//
+// 
 // Permission is hereby granted, free of charge, to any person obtaining a copy
 // of this software and associated documentation files (the "Software"), to deal
 // in the Software without restriction, including without limitation the rights
 // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 // copies of the Software, and to permit persons to whom the Software is
 // furnished to do so, subject to the following conditions:
-//
+// 
 // The above copyright notice and this permission notice shall be included in
 // all copies or substantial portions of the Software.
-//
+// 
 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
 // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 // THE SOFTWARE.
+// 
 
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.Serialization.Json.DataContractJsonSerializer))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.Serialization.DateTimeFormat))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.Serialization.EmitTypeInformation))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.Serialization.Json.DataContractJsonSerializer))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.Serialization.Json.DataContractJsonSerializerSettings))]
 
index b7749b990316d076ff9e525e29c90ee34e95e242..c76790eaf0e9241aa9c8f2499cc217e12248b63e 100644 (file)
@@ -1,21 +1,16 @@
-//
-// TypeForwarders.cs
-//
-// Author:
-//       Martin Baulig <martin.baulig@xamarin.com>
-//
+// 
 // Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)
-//
+// 
 // Permission is hereby granted, free of charge, to any person obtaining a copy
 // of this software and associated documentation files (the "Software"), to deal
 // in the Software without restriction, including without limitation the rights
 // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 // copies of the Software, and to permit persons to whom the Software is
 // furnished to do so, subject to the following conditions:
-//
+// 
 // The above copyright notice and this permission notice shall be included in
 // all copies or substantial portions of the Software.
-//
+// 
 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
@@ -23,6 +18,7 @@
 // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 // THE SOFTWARE.
+// 
 
 using System;
 using System.Reflection;
@@ -31,10 +27,9 @@ using System.Runtime.CompilerServices;
 [assembly: AssemblyTitle ("System.Runtime.Serialization.Primitives.dll")]
 [assembly: AssemblyDescription ("System.Runtime.Serialization.Primitives.dll")]
 [assembly: AssemblyDefaultAlias ("System.Runtime.Serialization.Primitives.dll")]
-
-[assembly: AssemblyCompany (Consts.MonoCompany)]
-[assembly: AssemblyProduct (Consts.MonoProduct)]
-[assembly: AssemblyCopyright (Consts.MonoCopyright)]
+[assembly: AssemblyCompany ("Xamarin, Inc.")]
+[assembly: AssemblyProduct ("Mono Common Language Infrastructure")]
+[assembly: AssemblyCopyright ("Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)")]
 [assembly: AssemblyVersion ("4.0.0.0")]
 [assembly: AssemblyInformationalVersion ("4.0.0.0")]
 [assembly: AssemblyFileVersion ("4.0.0.0")]
@@ -42,3 +37,5 @@ using System.Runtime.CompilerServices;
 [assembly: AssemblyKeyFile ("../../msfinal.pub")]
 
 [assembly: ReferenceAssembly]
+
+
index 4210975d19ca50dee1a025795b92698441992512..403f973fba7b9967d39b0f4aa213104c9f5fdd1e 100644 (file)
@@ -1,15 +1,22 @@
+MCS_BUILD_DIR = ../../../build
+
 thisdir = class/Facades/System.Runtime.Serialization.Primitives
 SUBDIRS = 
-include ../../../build/rules.make
+include $(MCS_BUILD_DIR)/rules.make
 
 LIBRARY_SUBDIR = Facades
 LIBRARY_INSTALL_DIR = $(mono_libdir)/mono/$(FRAMEWORK_VERSION)/Facades
 
 LIBRARY = System.Runtime.Serialization.Primitives.dll
-LIB_MCS_FLAGS = /r:System.Runtime.Serialization /r:System.Xml
+
+KEY_FILE = ../../msfinal.pub
+SIGN_FLAGS = /delaysign /keyfile:$(KEY_FILE) /nowarn:1616,1699
+LIB_MCS_FLAGS = $(SIGN_FLAGS) /r:mscorlib /r:System.Runtime.Serialization
 
 PLATFORM_DEBUG_FLAGS =
 
 NO_TEST = yes
 
-include ../../../build/library.make
+include $(MCS_BUILD_DIR)/library.make
+
+
index 10faec2b27d7e5e395b97e98d570771e2de7a2ba..ce3180fe1f18b8bbb783db9d3df0d08ed6686efb 100644 (file)
@@ -1,21 +1,16 @@
-//
-// TypeForwarders.cs
-//
-// Author:
-//       Martin Baulig <martin.baulig@xamarin.com>
-//
+// 
 // Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)
-//
+// 
 // Permission is hereby granted, free of charge, to any person obtaining a copy
 // of this software and associated documentation files (the "Software"), to deal
 // in the Software without restriction, including without limitation the rights
 // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 // copies of the Software, and to permit persons to whom the Software is
 // furnished to do so, subject to the following conditions:
-//
+// 
 // The above copyright notice and this permission notice shall be included in
 // all copies or substantial portions of the Software.
-//
+// 
 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
@@ -23,6 +18,7 @@
 // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 // THE SOFTWARE.
+// 
 
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.Serialization.CollectionDataContractAttribute))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.Serialization.ContractNamespaceAttribute))]
index 2194c610058249ddb0d044c1461578ea61c93686..f88da3f3a599ab895c956793ad2adc2146a012ca 100644 (file)
@@ -1,21 +1,16 @@
-//
-// TypeForwarders.cs
-//
-// Author:
-//       Martin Baulig <martin.baulig@xamarin.com>
-//
+// 
 // Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)
-//
+// 
 // Permission is hereby granted, free of charge, to any person obtaining a copy
 // of this software and associated documentation files (the "Software"), to deal
 // in the Software without restriction, including without limitation the rights
 // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 // copies of the Software, and to permit persons to whom the Software is
 // furnished to do so, subject to the following conditions:
-//
+// 
 // The above copyright notice and this permission notice shall be included in
 // all copies or substantial portions of the Software.
-//
+// 
 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
@@ -23,6 +18,7 @@
 // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 // THE SOFTWARE.
+// 
 
 using System;
 using System.Reflection;
@@ -31,10 +27,9 @@ using System.Runtime.CompilerServices;
 [assembly: AssemblyTitle ("System.Runtime.Serialization.Xml.dll")]
 [assembly: AssemblyDescription ("System.Runtime.Serialization.Xml.dll")]
 [assembly: AssemblyDefaultAlias ("System.Runtime.Serialization.Xml.dll")]
-
-[assembly: AssemblyCompany (Consts.MonoCompany)]
-[assembly: AssemblyProduct (Consts.MonoProduct)]
-[assembly: AssemblyCopyright (Consts.MonoCopyright)]
+[assembly: AssemblyCompany ("Xamarin, Inc.")]
+[assembly: AssemblyProduct ("Mono Common Language Infrastructure")]
+[assembly: AssemblyCopyright ("Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)")]
 [assembly: AssemblyVersion ("4.0.0.0")]
 [assembly: AssemblyInformationalVersion ("4.0.0.0")]
 [assembly: AssemblyFileVersion ("4.0.0.0")]
@@ -42,3 +37,5 @@ using System.Runtime.CompilerServices;
 [assembly: AssemblyKeyFile ("../../msfinal.pub")]
 
 [assembly: ReferenceAssembly]
+
+
index 9be218059f0ad2b2c124cd40579aa726d6b31b9a..cf4c9ab90eb8bd2217ab819591d49fc11a2769c9 100644 (file)
@@ -1,15 +1,22 @@
+MCS_BUILD_DIR = ../../../build
+
 thisdir = class/Facades/System.Runtime.Serialization.Xml
 SUBDIRS = 
-include ../../../build/rules.make
+include $(MCS_BUILD_DIR)/rules.make
 
 LIBRARY_SUBDIR = Facades
 LIBRARY_INSTALL_DIR = $(mono_libdir)/mono/$(FRAMEWORK_VERSION)/Facades
 
 LIBRARY = System.Runtime.Serialization.Xml.dll
-LIB_MCS_FLAGS = /r:System.Runtime.Serialization /r:System.Xml
+
+KEY_FILE = ../../msfinal.pub
+SIGN_FLAGS = /delaysign /keyfile:$(KEY_FILE) /nowarn:1616,1699
+LIB_MCS_FLAGS = $(SIGN_FLAGS) /r:mscorlib /r:System.Runtime.Serialization /r:System.Xml
 
 PLATFORM_DEBUG_FLAGS =
 
 NO_TEST = yes
 
-include ../../../build/library.make
+include $(MCS_BUILD_DIR)/library.make
+
+
index ffedd4dbbfc0b268b277dd017d616ed091ffbf44..34638aee54c488e026ce8aecd7c65a64a7eaa1a6 100644 (file)
@@ -1,21 +1,16 @@
-//
-// TypeForwarders.cs
-//
-// Author:
-//       Martin Baulig <martin.baulig@xamarin.com>
-//
+// 
 // Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)
-//
+// 
 // Permission is hereby granted, free of charge, to any person obtaining a copy
 // of this software and associated documentation files (the "Software"), to deal
 // in the Software without restriction, including without limitation the rights
 // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 // copies of the Software, and to permit persons to whom the Software is
 // furnished to do so, subject to the following conditions:
-//
+// 
 // The above copyright notice and this permission notice shall be included in
 // all copies or substantial portions of the Software.
-//
+// 
 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
 // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 // THE SOFTWARE.
+// 
 
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.Serialization.XmlObjectSerializer))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.Serialization.DataContractResolver))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.Serialization.DataContractSerializer))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.Serialization.DataContractSerializerSettings))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.Serialization.InvalidDataContractException))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.Serialization.XmlObjectSerializer))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Xml.IXmlDictionary))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Xml.UniqueId))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Xml.XmlBinaryReaderSession))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Xml.XmlBinaryWriterSession))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Xml.XmlDictionary))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Xml.XmlDictionaryReader))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Xml.XmlDictionaryReaderQuotas))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Xml.XmlDictionaryString))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Xml.XmlDictionaryWriter))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.Serialization.DataContractResolver))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.Serialization.DataContractSerializerSettings))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Xml.XmlBinaryReaderSession))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Xml.XmlBinaryWriterSession))]
 
index c921c6c1150c90eb1c121cac7fdf462203e9614d..359e2334b7eae03452305e087669750f691224ae 100644 (file)
@@ -1,21 +1,16 @@
-//
-// TypeForwarders.cs
-//
-// Author:
-//       Martin Baulig <martin.baulig@xamarin.com>
-//
+// 
 // Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)
-//
+// 
 // Permission is hereby granted, free of charge, to any person obtaining a copy
 // of this software and associated documentation files (the "Software"), to deal
 // in the Software without restriction, including without limitation the rights
 // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 // copies of the Software, and to permit persons to whom the Software is
 // furnished to do so, subject to the following conditions:
-//
+// 
 // The above copyright notice and this permission notice shall be included in
 // all copies or substantial portions of the Software.
-//
+// 
 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
@@ -23,6 +18,7 @@
 // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 // THE SOFTWARE.
+// 
 
 using System;
 using System.Reflection;
@@ -31,10 +27,9 @@ using System.Runtime.CompilerServices;
 [assembly: AssemblyTitle ("System.Runtime.dll")]
 [assembly: AssemblyDescription ("System.Runtime.dll")]
 [assembly: AssemblyDefaultAlias ("System.Runtime.dll")]
-
-[assembly: AssemblyCompany (Consts.MonoCompany)]
-[assembly: AssemblyProduct (Consts.MonoProduct)]
-[assembly: AssemblyCopyright (Consts.MonoCopyright)]
+[assembly: AssemblyCompany ("Xamarin, Inc.")]
+[assembly: AssemblyProduct ("Mono Common Language Infrastructure")]
+[assembly: AssemblyCopyright ("Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)")]
 [assembly: AssemblyVersion ("4.0.0.0")]
 [assembly: AssemblyInformationalVersion ("4.0.0.0")]
 [assembly: AssemblyFileVersion ("4.0.0.0")]
@@ -42,3 +37,5 @@ using System.Runtime.CompilerServices;
 [assembly: AssemblyKeyFile ("../../msfinal.pub")]
 
 [assembly: ReferenceAssembly]
+
+
index bb482472a149479b6077ccbf84fa165bad53c505..72ada093b090ce1aa74999a6e916efbbffc3f29f 100644 (file)
@@ -1,15 +1,22 @@
+MCS_BUILD_DIR = ../../../build
+
 thisdir = class/Facades/System.Runtime
 SUBDIRS = 
-include ../../../build/rules.make
+include $(MCS_BUILD_DIR)/rules.make
 
 LIBRARY_SUBDIR = Facades
 LIBRARY_INSTALL_DIR = $(mono_libdir)/mono/$(FRAMEWORK_VERSION)/Facades
 
 LIBRARY = System.Runtime.dll
-LIB_MCS_FLAGS = /r:System /r:System.Core /r:System.ComponentModel.Composition
+
+KEY_FILE = ../../msfinal.pub
+SIGN_FLAGS = /delaysign /keyfile:$(KEY_FILE) /nowarn:1616,1699
+LIB_MCS_FLAGS = $(SIGN_FLAGS) /r:mscorlib /r:System /r:System.ComponentModel.Composition /r:System.Core
 
 PLATFORM_DEBUG_FLAGS =
 
 NO_TEST = yes
 
-include ../../../build/library.make
+include $(MCS_BUILD_DIR)/library.make
+
+
index 74532efb2ea75c271c00a4aeafcc07fa77ce69de..8e33d4ddeae92bde7aa8afd994db5d90d6af18d9 100644 (file)
@@ -1,3 +1,3 @@
-AssemblyInfo.cs
 TypeForwarders.cs
-../../../build/common/Consts.cs
+AssemblyInfo.cs
+
index 2a6afa89aeacaa2e4a9a607b5a420c65a254306c..4a6a0166b3085022f2dd2f261ea080dc9e23f19e 100644 (file)
@@ -1,21 +1,16 @@
-//
-// TypeForwarders.cs
-//
-// Author:
-//       Martin Baulig <martin.baulig@xamarin.com>
-//
+// 
 // Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)
-//
+// 
 // Permission is hereby granted, free of charge, to any person obtaining a copy
 // of this software and associated documentation files (the "Software"), to deal
 // in the Software without restriction, including without limitation the rights
 // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 // copies of the Software, and to permit persons to whom the Software is
 // furnished to do so, subject to the following conditions:
-//
+// 
 // The above copyright notice and this permission notice shall be included in
 // all copies or substantial portions of the Software.
-//
+// 
 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
 // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 // THE SOFTWARE.
+// 
 
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Action))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Action<,>))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Action<,,>))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Action<,,,,,,,,,,,,,,,>))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Action<,,,,,,,,,,,,,,>))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Action<,,,,,,,,,,,,,>))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Action<,,,,,,,,,,,,>))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Action<,,,,,,,,,,,>))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Action<,,,,,,,,,,>))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Action<,,,,,,,,,>))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Action<,,,,,,,,>))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Action<,,,,,,,>))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Action<,,,,,,>))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Action<,,,,,>))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Action<,,,,>))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Action<,,,>))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Func<>))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Func<,>))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Func<,,>))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Func<,,,>))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Func<,,,,>))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.CompilerServices.ExtensionAttribute))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Uri))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.UriComponents))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.UriFormat))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.UriKind))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ComponentModel.DefaultValueAttribute))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ComponentModel.EditorBrowsableAttribute))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ComponentModel.EditorBrowsableState))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(object))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ValueType))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.IComparable))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.IComparable<>))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.IEquatable<>))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.IFormattable))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(decimal))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Delegate))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.MulticastDelegate))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Action<,,>))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Action<,>))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Action<>))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Activator))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Exception))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ArgumentException))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ArgumentNullException))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ArgumentOutOfRangeException))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ArithmeticException))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Collections.IEnumerable))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Collections.ICollection))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Collections.IList))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Array))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ArraySegment<>))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ArrayTypeMismatchException))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.AsyncCallback))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Attribute))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Enum))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.AttributeTargets))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.AttributeUsageAttribute))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.BadImageFormatException))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(bool))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Boolean))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Buffer))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(byte))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(char))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Byte))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Char))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.CLSCompliantAttribute))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Collections.DictionaryEntry))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Collections.Generic.ICollection<>))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Collections.Generic.IComparer<>))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Collections.Generic.IDictionary<,>))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Collections.Generic.IEnumerable<>))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Collections.Generic.IEnumerator<>))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Collections.Generic.IEqualityComparer<>))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Collections.Generic.IList<>))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Collections.Generic.IReadOnlyCollection<>))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Collections.Generic.IReadOnlyDictionary<,>))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Collections.Generic.IReadOnlyList<>))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Collections.Generic.ISet<>))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Collections.Generic.KeyNotFoundException))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Collections.Generic.KeyValuePair<,>))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Collections.ICollection))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Collections.IComparer))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Collections.IDictionary))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Collections.IDictionaryEnumerator))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Collections.IEnumerable))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Collections.IEnumerator))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Collections.IEqualityComparer))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Collections.IList))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Collections.IStructuralComparable))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Collections.IStructuralEquatable))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Collections.ObjectModel.Collection<>))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Collections.ObjectModel.ReadOnlyCollection<>))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Comparison<>))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ComponentModel.DefaultValueAttribute))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ComponentModel.EditorBrowsableAttribute))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ComponentModel.EditorBrowsableState))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.DateTime))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.DateTimeKind))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.DateTimeOffset))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.DayOfWeek))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Decimal))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Delegate))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Diagnostics.ConditionalAttribute))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Diagnostics.DebuggableAttribute))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.DivideByZeroException))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(double))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Double))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Enum))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.EventArgs))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.EventHandler))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.EventHandler<>))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Exception))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.FlagsAttribute))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.FormatException))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Func<,,,,,,,,,,,,,,,,>))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Func<,,,,,,,,,,,,,,,>))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Func<,,,,,,,,,,,,,,>))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Func<,,,,,,,,,,,,,>))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Func<,,,,,,,,,,,,>))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Func<,,,,,,,,,,,>))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Func<,,,,,,,,,,>))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Func<,,,,,,,,,>))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Func<,,,,,,,,>))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Func<,,,,,,,>))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Func<,,,,,,>))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Func<,,,,,>))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Func<,,,,>))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Func<,,,>))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Func<,,>))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Func<,>))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Func<>))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.GC))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.GCCollectionMode))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Globalization.DateTimeStyles))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Globalization.NumberStyles))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Globalization.TimeSpanStyles))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Guid))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.IAsyncResult))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.IComparable))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.IComparable<>))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ICustomFormatter))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.IDisposable))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.IEquatable<>))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.IFormatProvider))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.IFormattable))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.IndexOutOfRangeException))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(short))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(int))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(long))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Int16))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Int32))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Int64))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.IntPtr))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.InvalidCastException))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.InvalidOperationException))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.InvalidTimeZoneException))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.IObservable<>))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.IObserver<>))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.IProgress<>))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Lazy<,>))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Lazy<>))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.MemberAccessException))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.MissingMemberException))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.MTAThreadAttribute))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.MulticastDelegate))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.NotImplementedException))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.NotSupportedException))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Nullable))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Nullable<>))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.NullReferenceException))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Object))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ObjectDisposedException))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ObsoleteAttribute))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.OutOfMemoryException))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.PlatformNotSupportedException))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Predicate<>))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.RankException))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.RuntimeFieldHandle))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.RuntimeMethodHandle))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.RuntimeTypeHandle))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(sbyte))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(float))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Collections.Generic.IComparer<>))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Collections.Generic.IEqualityComparer<>))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Collections.IComparer))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Collections.IEqualityComparer))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.StringComparison))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.StringSplitOptions))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.TimeoutException))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.TimeSpan))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Type))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.TypeInitializationException))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.TypeLoadException))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(ushort))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(uint))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(ulong))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.UIntPtr))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.UnauthorizedAccessException))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Version))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(void))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.WeakReference))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Collections.DictionaryEntry))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Collections.IDictionary))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Collections.IEnumerator))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Collections.IDictionaryEnumerator))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Collections.Generic.IEnumerable<>))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Collections.Generic.ICollection<>))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Collections.Generic.IDictionary<,>))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Collections.Generic.IEnumerator<>))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Collections.Generic.IList<>))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Collections.Generic.KeyNotFoundException))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Collections.Generic.KeyValuePair<,>))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Collections.ObjectModel.Collection<>))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Collections.ObjectModel.ReadOnlyCollection<>))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Diagnostics.ConditionalAttribute))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Diagnostics.DebuggableAttribute))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Globalization.DateTimeStyles))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Globalization.NumberStyles))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Reflection.AssemblyCompanyAttribute))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Reflection.AssemblyConfigurationAttribute))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Reflection.AssemblyCopyrightAttribute))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Reflection.AssemblyInformationalVersionAttribute))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Reflection.AssemblyKeyFileAttribute))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Reflection.AssemblyKeyNameAttribute))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Reflection.AssemblyMetadataAttribute))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Reflection.AssemblyNameFlags))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Reflection.AssemblyProductAttribute))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Reflection.AssemblySignatureKeyAttribute))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Reflection.AssemblyTitleAttribute))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Reflection.AssemblyTrademarkAttribute))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Reflection.AssemblyVersionAttribute))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Reflection.DefaultMemberAttribute))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.CompilerServices.AccessedThroughPropertyAttribute))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.CompilerServices.AsyncStateMachineAttribute))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.CompilerServices.CallerFilePathAttribute))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.CompilerServices.CallerLineNumberAttribute))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.CompilerServices.CallerMemberNameAttribute))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.CompilerServices.CompilationRelaxationsAttribute))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.CompilerServices.CompilerGeneratedAttribute))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.CompilerServices.CustomConstantAttribute))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.CompilerServices.DateTimeConstantAttribute))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.CompilerServices.DecimalConstantAttribute))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.CompilerServices.ExtensionAttribute))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.CompilerServices.FixedBufferAttribute))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.CompilerServices.IndexerNameAttribute))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.CompilerServices.InternalsVisibleToAttribute))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.CompilerServices.IStrongBox))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.CompilerServices.IsVolatile))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.CompilerServices.IteratorStateMachineAttribute))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.CompilerServices.MethodImplAttribute))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.CompilerServices.MethodImplOptions))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.CompilerServices.ReferenceAssemblyAttribute))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.CompilerServices.RuntimeCompatibilityAttribute))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.CompilerServices.RuntimeHelpers))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.CompilerServices.StateMachineAttribute))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.CompilerServices.StrongBox<>))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.CompilerServices.TypeForwardedFromAttribute))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.CompilerServices.TypeForwardedToAttribute))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.CompilerServices.UnsafeValueTypeAttribute))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.ExceptionServices.ExceptionDispatchInfo))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.GCLatencyMode))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.GCSettings))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.InteropServices.CharSet))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.InteropServices.ComVisibleAttribute))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.InteropServices.FieldOffsetAttribute))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.InteropServices.LayoutKind))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.InteropServices.OutAttribute))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.InteropServices.StructLayoutAttribute))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.Versioning.TargetFrameworkAttribute))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.RuntimeFieldHandle))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.RuntimeMethodHandle))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.RuntimeTypeHandle))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.SByte))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Security.AllowPartiallyTrustedCallersAttribute))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Security.SecurityCriticalAttribute))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Security.SecurityException))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Security.SecuritySafeCriticalAttribute))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Security.SecurityTransparentAttribute))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Security.VerificationException))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Single))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.STAThreadAttribute))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.String))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.StringComparison))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.StringSplitOptions))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Text.StringBuilder))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Threading.WaitHandle))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Threading.LazyThreadSafetyMode))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Threading.Timeout))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.InvalidTimeZoneException))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.TimeZoneInfo))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.CompilerServices.IStrongBox))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.CompilerServices.StrongBox<>))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Globalization.TimeSpanStyles))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Lazy<,>))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Action<,,,,,,,,,>))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Action<,,,,,,,,,,>))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Action<,,,,,,,,,,,>))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Action<,,,,,,,,,,,,>))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Action<,,,,,,,,,,,,,>))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Action<,,,,,,,,,,,,,,>))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Action<,,,,,,,,,,,,,,,>))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Action<,,,,,,,,>))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Func<,,,,,,,,,>))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Func<,,,,,,,,,,>))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Func<,,,,,,,,,,,>))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Func<,,,,,,,,,,,,>))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Func<,,,,,,,,,,,,,>))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Func<,,,,,,,,,,,,,,>))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Func<,,,,,,,,,,,,,,,>))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Func<,,,,,,,,,,,,,,,,>))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Collections.Generic.ISet<>))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Action<,,,,>))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Action<,,,,,>))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Action<,,,,,,>))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Action<,,,,,,,>))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Collections.IStructuralComparable))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Collections.IStructuralEquatable))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Func<,,,,,>))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Func<,,,,,,>))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Func<,,,,,,,>))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Func<,,,,,,,,>))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Lazy<>))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Threading.WaitHandle))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ThreadStaticAttribute))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.TimeoutException))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.TimeSpan))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.TimeZoneInfo))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Tuple))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Tuple<>))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Tuple<,>))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Tuple<,,>))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Tuple<,,,>))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Tuple<,,,,>))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Tuple<,,,,,>))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Tuple<,,,,,,>))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Tuple<,,,,,,,>))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Tuple<,,,,,,>))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Tuple<,,,,,>))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Tuple<,,,,>))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Tuple<,,,>))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Tuple<,,>))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Tuple<,>))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Tuple<>))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Type))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.TypeAccessException))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.CompilerServices.TypeForwardedFromAttribute))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.CompilerServices.TypeForwardedToAttribute))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Security.AllowPartiallyTrustedCallersAttribute))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Threading.LazyThreadSafetyMode))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.TypeInitializationException))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.TypeLoadException))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.UInt16))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.UInt32))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.UInt64))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.UIntPtr))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.UnauthorizedAccessException))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Uri))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.UriComponents))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.UriFormat))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.UriHostNameType))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.GCCollectionMode))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.IObservable<>))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.IObserver<>))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.GCLatencyMode))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.GCSettings))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.CompilerServices.FixedBufferAttribute))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.CompilerServices.UnsafeValueTypeAttribute))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.InteropServices.CharSet))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.InteropServices.ComVisibleAttribute))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Collections.Generic.IReadOnlyCollection<>))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Collections.Generic.IReadOnlyList<>))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.IProgress<>))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.MTAThreadAttribute))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.STAThreadAttribute))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.UriKind))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ValueType))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Version))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.WeakReference))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.WeakReference<>))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Collections.Generic.IReadOnlyDictionary<,>))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Reflection.AssemblyMetadataAttribute))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Reflection.AssemblySignatureKeyAttribute))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.CompilerServices.StateMachineAttribute))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.CompilerServices.AsyncStateMachineAttribute))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.CompilerServices.CallerFilePathAttribute))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.CompilerServices.CallerLineNumberAttribute))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.CompilerServices.CallerMemberNameAttribute))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.CompilerServices.IteratorStateMachineAttribute))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.CompilerServices.ReferenceAssemblyAttribute))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.ExceptionServices.ExceptionDispatchInfo))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(string))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(void))]
 
index 9add5807e556d5c9661a6afae25ba8aa1e61e0ea..9d0d014384ad3f9400285f51ede2eafac2cbdf7d 100644 (file)
@@ -1,21 +1,16 @@
-//
-// TypeForwarders.cs
-//
-// Author:
-//       Martin Baulig <martin.baulig@xamarin.com>
-//
+// 
 // Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)
-//
+// 
 // Permission is hereby granted, free of charge, to any person obtaining a copy
 // of this software and associated documentation files (the "Software"), to deal
 // in the Software without restriction, including without limitation the rights
 // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 // copies of the Software, and to permit persons to whom the Software is
 // furnished to do so, subject to the following conditions:
-//
+// 
 // The above copyright notice and this permission notice shall be included in
 // all copies or substantial portions of the Software.
-//
+// 
 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
@@ -23,6 +18,7 @@
 // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 // THE SOFTWARE.
+// 
 
 using System;
 using System.Reflection;
@@ -31,10 +27,9 @@ using System.Runtime.CompilerServices;
 [assembly: AssemblyTitle ("System.Security.Principal.dll")]
 [assembly: AssemblyDescription ("System.Security.Principal.dll")]
 [assembly: AssemblyDefaultAlias ("System.Security.Principal.dll")]
-
-[assembly: AssemblyCompany (Consts.MonoCompany)]
-[assembly: AssemblyProduct (Consts.MonoProduct)]
-[assembly: AssemblyCopyright (Consts.MonoCopyright)]
+[assembly: AssemblyCompany ("Xamarin, Inc.")]
+[assembly: AssemblyProduct ("Mono Common Language Infrastructure")]
+[assembly: AssemblyCopyright ("Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)")]
 [assembly: AssemblyVersion ("4.0.0.0")]
 [assembly: AssemblyInformationalVersion ("4.0.0.0")]
 [assembly: AssemblyFileVersion ("4.0.0.0")]
@@ -42,3 +37,5 @@ using System.Runtime.CompilerServices;
 [assembly: AssemblyKeyFile ("../../msfinal.pub")]
 
 [assembly: ReferenceAssembly]
+
+
index 6662c5ac9adee0a2bea37a91c072390ecbeeea1f..738880ff009cb5092e0d7d6e2f0abf53e08a2b3f 100644 (file)
@@ -1,15 +1,22 @@
+MCS_BUILD_DIR = ../../../build
+
 thisdir = class/Facades/System.Security.Principal
 SUBDIRS = 
-include ../../../build/rules.make
+include $(MCS_BUILD_DIR)/rules.make
 
 LIBRARY_SUBDIR = Facades
 LIBRARY_INSTALL_DIR = $(mono_libdir)/mono/$(FRAMEWORK_VERSION)/Facades
 
 LIBRARY = System.Security.Principal.dll
-LIB_MCS_FLAGS =
+
+KEY_FILE = ../../msfinal.pub
+SIGN_FLAGS = /delaysign /keyfile:$(KEY_FILE) /nowarn:1616,1699
+LIB_MCS_FLAGS = $(SIGN_FLAGS) /r:mscorlib
 
 PLATFORM_DEBUG_FLAGS =
 
 NO_TEST = yes
 
-include ../../../build/library.make
+include $(MCS_BUILD_DIR)/library.make
+
+
index 74532efb2ea75c271c00a4aeafcc07fa77ce69de..8e33d4ddeae92bde7aa8afd994db5d90d6af18d9 100644 (file)
@@ -1,3 +1,3 @@
-AssemblyInfo.cs
 TypeForwarders.cs
-../../../build/common/Consts.cs
+AssemblyInfo.cs
+
index 85a934368b6cd0c898779c5d6243cc83e1d08721..a6682541e65f983252b9470bc511ff4ffb15fcce 100644 (file)
@@ -1,21 +1,16 @@
-//
-// TypeForwarders.cs
-//
-// Author:
-//       Martin Baulig <martin.baulig@xamarin.com>
-//
+// 
 // Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)
-//
+// 
 // Permission is hereby granted, free of charge, to any person obtaining a copy
 // of this software and associated documentation files (the "Software"), to deal
 // in the Software without restriction, including without limitation the rights
 // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 // copies of the Software, and to permit persons to whom the Software is
 // furnished to do so, subject to the following conditions:
-//
+// 
 // The above copyright notice and this permission notice shall be included in
 // all copies or substantial portions of the Software.
-//
+// 
 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
@@ -23,6 +18,7 @@
 // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 // THE SOFTWARE.
+// 
 
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Security.Principal.IIdentity))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Security.Principal.IPrincipal))]
index a44d7588ec4d983772586b8179b0fb8078baec70..2dc616e75c1f72b42c09c98c24ade79e84f721d3 100644 (file)
@@ -1,21 +1,16 @@
-//
-// TypeForwarders.cs
-//
-// Author:
-//       Martin Baulig <martin.baulig@xamarin.com>
-//
+// 
 // Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)
-//
+// 
 // Permission is hereby granted, free of charge, to any person obtaining a copy
 // of this software and associated documentation files (the "Software"), to deal
 // in the Software without restriction, including without limitation the rights
 // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 // copies of the Software, and to permit persons to whom the Software is
 // furnished to do so, subject to the following conditions:
-//
+// 
 // The above copyright notice and this permission notice shall be included in
 // all copies or substantial portions of the Software.
-//
+// 
 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
@@ -23,6 +18,7 @@
 // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 // THE SOFTWARE.
+// 
 
 using System;
 using System.Reflection;
@@ -31,10 +27,9 @@ using System.Runtime.CompilerServices;
 [assembly: AssemblyTitle ("System.ServiceModel.Http.dll")]
 [assembly: AssemblyDescription ("System.ServiceModel.Http.dll")]
 [assembly: AssemblyDefaultAlias ("System.ServiceModel.Http.dll")]
-
-[assembly: AssemblyCompany (Consts.MonoCompany)]
-[assembly: AssemblyProduct (Consts.MonoProduct)]
-[assembly: AssemblyCopyright (Consts.MonoCopyright)]
+[assembly: AssemblyCompany ("Xamarin, Inc.")]
+[assembly: AssemblyProduct ("Mono Common Language Infrastructure")]
+[assembly: AssemblyCopyright ("Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)")]
 [assembly: AssemblyVersion ("4.0.0.0")]
 [assembly: AssemblyInformationalVersion ("4.0.0.0")]
 [assembly: AssemblyFileVersion ("4.0.0.0")]
@@ -42,3 +37,5 @@ using System.Runtime.CompilerServices;
 [assembly: AssemblyKeyFile ("../../msfinal.pub")]
 
 [assembly: ReferenceAssembly]
+
+
index b3eda5889543cf345b6f897cfcebbe9dde0fd424..b709ac623e38480f232fdc92244a6fad43fbe7d2 100644 (file)
@@ -1,15 +1,22 @@
+MCS_BUILD_DIR = ../../../build
+
 thisdir = class/Facades/System.ServiceModel.Http
 SUBDIRS = 
-include ../../../build/rules.make
+include $(MCS_BUILD_DIR)/rules.make
 
 LIBRARY_SUBDIR = Facades
 LIBRARY_INSTALL_DIR = $(mono_libdir)/mono/$(FRAMEWORK_VERSION)/Facades
 
 LIBRARY = System.ServiceModel.Http.dll
-LIB_MCS_FLAGS = /r:System.ServiceModel
+
+KEY_FILE = ../../msfinal.pub
+SIGN_FLAGS = /delaysign /keyfile:$(KEY_FILE) /nowarn:1616,1699
+LIB_MCS_FLAGS = $(SIGN_FLAGS) /r:mscorlib /r:System.ServiceModel
 
 PLATFORM_DEBUG_FLAGS =
 
 NO_TEST = yes
 
-include ../../../build/library.make
+include $(MCS_BUILD_DIR)/library.make
+
+
index 74532efb2ea75c271c00a4aeafcc07fa77ce69de..8e33d4ddeae92bde7aa8afd994db5d90d6af18d9 100644 (file)
@@ -1,3 +1,3 @@
-AssemblyInfo.cs
 TypeForwarders.cs
-../../../build/common/Consts.cs
+AssemblyInfo.cs
+
index 79b95a02032c00fc1143535662464b4783bebbc6..57276e7078c989085ee8c8c27997dd707d8a0cdd 100644 (file)
@@ -1,21 +1,16 @@
-//
-// TypeForwarders.cs
-//
-// Author:
-//       Martin Baulig <martin.baulig@xamarin.com>
-//
+// 
 // Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)
-//
+// 
 // Permission is hereby granted, free of charge, to any person obtaining a copy
 // of this software and associated documentation files (the "Software"), to deal
 // in the Software without restriction, including without limitation the rights
 // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 // copies of the Software, and to permit persons to whom the Software is
 // furnished to do so, subject to the following conditions:
-//
+// 
 // The above copyright notice and this permission notice shall be included in
 // all copies or substantial portions of the Software.
-//
+// 
 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
@@ -23,6 +18,7 @@
 // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 // THE SOFTWARE.
+// 
 
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.BasicHttpBinding))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.BasicHttpMessageCredentialType))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.BasicHttpSecurityMode))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Channels.HttpRequestMessageProperty))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Channels.HttpResponseMessageProperty))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Channels.HttpTransportBindingElement))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Channels.HttpsTransportBindingElement))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Channels.HttpTransportBindingElement))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Channels.IHttpCookieContainerManager))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Channels.WebSocketTransportSettings))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Channels.WebSocketTransportUsage))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.HttpBindingBase))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.HttpClientCredentialType))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.HttpTransportSecurity))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.NetHttpBinding))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.NetHttpMessageEncoding))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Channels.WebSocketTransportSettings))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Channels.WebSocketTransportUsage))]
 
index c180411f3e625f1b769892517d7659144de24402..02bec1d5c48637196cd805d898f582fead3b6dc8 100644 (file)
@@ -1,21 +1,16 @@
-//
-// TypeForwarders.cs
-//
-// Author:
-//       Martin Baulig <martin.baulig@xamarin.com>
-//
+// 
 // Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)
-//
+// 
 // Permission is hereby granted, free of charge, to any person obtaining a copy
 // of this software and associated documentation files (the "Software"), to deal
 // in the Software without restriction, including without limitation the rights
 // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 // copies of the Software, and to permit persons to whom the Software is
 // furnished to do so, subject to the following conditions:
-//
+// 
 // The above copyright notice and this permission notice shall be included in
 // all copies or substantial portions of the Software.
-//
+// 
 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
@@ -23,6 +18,7 @@
 // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 // THE SOFTWARE.
+// 
 
 using System;
 using System.Reflection;
@@ -31,10 +27,9 @@ using System.Runtime.CompilerServices;
 [assembly: AssemblyTitle ("System.ServiceModel.Primitives.dll")]
 [assembly: AssemblyDescription ("System.ServiceModel.Primitives.dll")]
 [assembly: AssemblyDefaultAlias ("System.ServiceModel.Primitives.dll")]
-
-[assembly: AssemblyCompany (Consts.MonoCompany)]
-[assembly: AssemblyProduct (Consts.MonoProduct)]
-[assembly: AssemblyCopyright (Consts.MonoCopyright)]
+[assembly: AssemblyCompany ("Xamarin, Inc.")]
+[assembly: AssemblyProduct ("Mono Common Language Infrastructure")]
+[assembly: AssemblyCopyright ("Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)")]
 [assembly: AssemblyVersion ("4.0.0.0")]
 [assembly: AssemblyInformationalVersion ("4.0.0.0")]
 [assembly: AssemblyFileVersion ("4.0.0.0")]
@@ -42,3 +37,5 @@ using System.Runtime.CompilerServices;
 [assembly: AssemblyKeyFile ("../../msfinal.pub")]
 
 [assembly: ReferenceAssembly]
+
+
index c71d40bc9dc2ce3c381d37b0317208458c1c0f75..5391e8cdef3f0c5248adcfc1ccbfd071c0de6753 100644 (file)
@@ -1,15 +1,22 @@
+MCS_BUILD_DIR = ../../../build
+
 thisdir = class/Facades/System.ServiceModel.Primitives
 SUBDIRS = 
-include ../../../build/rules.make
+include $(MCS_BUILD_DIR)/rules.make
 
 LIBRARY_SUBDIR = Facades
 LIBRARY_INSTALL_DIR = $(mono_libdir)/mono/$(FRAMEWORK_VERSION)/Facades
 
 LIBRARY = System.ServiceModel.Primitives.dll
-LIB_MCS_FLAGS = /r:System.ServiceModel /r:System.Xml
+
+KEY_FILE = ../../msfinal.pub
+SIGN_FLAGS = /delaysign /keyfile:$(KEY_FILE) /nowarn:1616,1699
+LIB_MCS_FLAGS = $(SIGN_FLAGS) /r:mscorlib /r:System.ServiceModel /r:System.Xml
 
 PLATFORM_DEBUG_FLAGS =
 
 NO_TEST = yes
 
-include ../../../build/library.make
+include $(MCS_BUILD_DIR)/library.make
+
+
index 9cb71623204487f6c3e8d2d426250dd35042de59..37b5c7d91571bc2ccd818634b78feb6e00792bb3 100644 (file)
@@ -1,21 +1,16 @@
-//
-// TypeForwarders.cs
-//
-// Author:
-//       Martin Baulig <martin.baulig@xamarin.com>
-//
+// 
 // Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)
-//
+// 
 // Permission is hereby granted, free of charge, to any person obtaining a copy
 // of this software and associated documentation files (the "Software"), to deal
 // in the Software without restriction, including without limitation the rights
 // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 // copies of the Software, and to permit persons to whom the Software is
 // furnished to do so, subject to the following conditions:
-//
+// 
 // The above copyright notice and this permission notice shall be included in
 // all copies or substantial portions of the Software.
-//
+// 
 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
 // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 // THE SOFTWARE.
+// 
 
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.XmlSerializerFormatAttribute))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.CommunicationException))]
+#if !MONOTOUCH
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Channels.CompressionFormat))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Dispatcher.ClientOperation))]
+#endif
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.ActionNotSupportedException))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.IDefaultCommunicationTimeouts))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Channels.Binding))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.ICommunicationObject))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Channels.CommunicationObject))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Channels.IChannelFactory))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.ChannelFactory))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.ClientBase<>))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Channels.IChannel))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Channels.IOutputChannel))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Channels.IRequestChannel))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.IExtensibleObject<>))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.IContextChannel))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.IClientChannel))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.CommunicationObjectAbortedException))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.CommunicationObjectFaultedException))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.CommunicationState))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.DataContractFormatAttribute))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.EndpointAddress))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.EndpointAddressBuilder))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.EndpointNotFoundException))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.EnvelopeVersion))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.ExceptionDetail))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.FaultCode))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.FaultContractAttribute))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.FaultException))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.FaultException<>))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.FaultReason))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.FaultReasonText))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.IExtension<>))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.IExtensionCollection<>))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.InvalidMessageContractException))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.MessageContractMemberAttribute))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.MessageBodyMemberAttribute))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.MessageContractAttribute))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.ProtocolException))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.MessageHeaderException))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.MessageParameterAttribute))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.OperationContext))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.OperationContextScope))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.OperationContractAttribute))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.OperationFormatStyle))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.QuotaExceededException))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.ServerTooBusyException))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.ServiceActivationException))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.ServiceContractAttribute))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.ServiceKnownTypeAttribute))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.UnknownMessageReceivedEventArgs))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.ChannelFactory<>))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Channels.AddressHeader))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Channels.AddressHeaderCollection))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Channels.AddressingVersion))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Channels.BindingElement))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Channels.MessageEncodingBindingElement))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Channels.BinaryMessageEncodingBindingElement))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Channels.Binding))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Channels.BindingContext))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Channels.BindingElement))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Channels.BindingElementCollection))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Channels.BindingParameterCollection))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Channels.BodyWriter))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Channels.BufferManager))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Channels.ChannelBase))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Channels.ChannelManagerBase))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Channels.ChannelFactoryBase))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Channels.IChannelFactory<>))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Channels.ChannelFactoryBase<>))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Channels.ChannelManagerBase))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Channels.ChannelParameterCollection))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Channels.CommunicationObject))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Channels.CustomBinding))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Channels.FaultConverter))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Channels.TransportBindingElement))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Channels.IInputChannel))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Channels.IChannel))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Channels.IChannelFactory))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Channels.IChannelFactory<>))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Channels.IDuplexChannel))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Channels.ISession))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Channels.IInputSession))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Channels.IOutputSession))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Channels.IDuplexSession))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Channels.ISessionChannel<>))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Channels.IDuplexSessionChannel))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Channels.IInputChannel))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Channels.IInputSession))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Channels.IInputSessionChannel))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Channels.IMessageProperty))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Channels.IOutputChannel))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Channels.IOutputSession))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Channels.IOutputSessionChannel))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Channels.IRequestChannel))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Channels.IRequestSessionChannel))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Channels.ISession))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Channels.ISessionChannel<>))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Channels.Message))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Channels.MessageBuffer))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Channels.MessageEncoder))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Channels.MessageEncoderFactory))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Channels.MessageEncodingBindingElement))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Channels.MessageFault))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Channels.MessageHeaderInfo))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Channels.MessageHeader))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Channels.MessageHeaderInfo))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Channels.MessageHeaders))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Channels.MessageProperties))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Channels.MessageState))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Channels.MessageVersion))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Channels.RequestContext))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Channels.TextMessageEncodingBindingElement))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Channels.TransportBindingElement))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.ClientBase<>))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.CommunicationException))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.CommunicationObjectAbortedException))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.CommunicationObjectFaultedException))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.CommunicationState))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.DataContractFormatAttribute))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Description.ClientCredentials))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Description.ContractDescription))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Description.DataContractSerializerOperationBehavior))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Description.FaultDescription))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Description.FaultDescriptionCollection))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Description.IContractBehavior))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Description.IEndpointBehavior))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Description.IOperationBehavior))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Description.MessageBodyDescription))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Description.MessageDescription))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Description.MessageDescriptionCollection))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Description.MessageDirection))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Description.MessageHeaderDescription))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Description.MessageHeaderDescriptionCollection))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Description.MessagePartDescription))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Description.MessagePartDescriptionCollection))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Description.MessagePropertyDescription))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Description.MessagePropertyDescriptionCollection))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Description.OperationDescription))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Description.OperationDescriptionCollection))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Description.ServiceEndpoint))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Security.MessageSecurityException))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Security.SecurityAccessDeniedException))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Security.UserNamePasswordClientCredential))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.ChannelFactory<>))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Dispatcher.ClientRuntime))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Dispatcher.DispatchOperation))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Dispatcher.DispatchRuntime))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Dispatcher.EndpointDispatcher))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Dispatcher.IClientMessageFormatter))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Dispatcher.IClientMessageInspector))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Dispatcher.IClientOperationSelector))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Dispatcher.IParameterInspector))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.EndpointAddress))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.EndpointAddressBuilder))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.EndpointIdentity))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.EndpointNotFoundException))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.EnvelopeVersion))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.ExceptionDetail))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.FaultCode))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.FaultContractAttribute))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.FaultException))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.FaultException<>))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.FaultReason))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.FaultReasonText))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.IClientChannel))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.ICommunicationObject))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.IContextChannel))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.IDefaultCommunicationTimeouts))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.IExtensibleObject<>))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.IExtension<>))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.IExtensionCollection<>))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.InvalidMessageContractException))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.MessageBodyMemberAttribute))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.MessageContractAttribute))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.MessageContractMemberAttribute))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.MessageCredentialType))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.MessageHeader<>))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.SecurityMode))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.TransferMode))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Description.IEndpointBehavior))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Description.IOperationBehavior))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Description.DataContractSerializerOperationBehavior))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Description.IContractBehavior))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Description.MessageHeaderDescription))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Description.MessageHeaderDescriptionCollection))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Description.MessagePropertyDescription))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Description.MessagePropertyDescriptionCollection))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.MessageHeaderException))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.MessageParameterAttribute))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.OperationContext))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.OperationContextScope))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.OperationContractAttribute))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.OperationFormatStyle))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.ProtocolException))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.QuotaExceededException))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Security.HttpDigestClientCredential))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Security.MessageSecurityException))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Security.SecurityAccessDeniedException))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Security.UserNamePasswordClientCredential))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.Security.WindowsClientCredential))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.SecurityMode))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.ServerTooBusyException))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.ServiceActivationException))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.ServiceContractAttribute))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.ServiceKnownTypeAttribute))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.TransferMode))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.UnknownMessageReceivedEventArgs))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.ServiceModel.XmlSerializerFormatAttribute))]
 
index e8e33f00cdf26501a78c12b57a1bfee14fd499a0..33c51e01878ff1e4ee677e3924ffbd7ae724d27b 100644 (file)
@@ -1,21 +1,16 @@
-//
-// TypeForwarders.cs
-//
-// Author:
-//       Martin Baulig <martin.baulig@xamarin.com>
-//
+// 
 // Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)
-//
+// 
 // Permission is hereby granted, free of charge, to any person obtaining a copy
 // of this software and associated documentation files (the "Software"), to deal
 // in the Software without restriction, including without limitation the rights
 // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 // copies of the Software, and to permit persons to whom the Software is
 // furnished to do so, subject to the following conditions:
-//
+// 
 // The above copyright notice and this permission notice shall be included in
 // all copies or substantial portions of the Software.
-//
+// 
 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
@@ -23,6 +18,7 @@
 // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 // THE SOFTWARE.
+// 
 
 using System;
 using System.Reflection;
@@ -31,10 +27,9 @@ using System.Runtime.CompilerServices;
 [assembly: AssemblyTitle ("System.Text.Encoding.Extensions.dll")]
 [assembly: AssemblyDescription ("System.Text.Encoding.Extensions.dll")]
 [assembly: AssemblyDefaultAlias ("System.Text.Encoding.Extensions.dll")]
-
-[assembly: AssemblyCompany (Consts.MonoCompany)]
-[assembly: AssemblyProduct (Consts.MonoProduct)]
-[assembly: AssemblyCopyright (Consts.MonoCopyright)]
+[assembly: AssemblyCompany ("Xamarin, Inc.")]
+[assembly: AssemblyProduct ("Mono Common Language Infrastructure")]
+[assembly: AssemblyCopyright ("Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)")]
 [assembly: AssemblyVersion ("4.0.0.0")]
 [assembly: AssemblyInformationalVersion ("4.0.0.0")]
 [assembly: AssemblyFileVersion ("4.0.0.0")]
@@ -42,3 +37,5 @@ using System.Runtime.CompilerServices;
 [assembly: AssemblyKeyFile ("../../msfinal.pub")]
 
 [assembly: ReferenceAssembly]
+
+
index eb7bed8371766427a3886b26c00a1b6a16e4fb1d..b8cbfb22831eb2f5a95333d41897509db70cd9f3 100644 (file)
@@ -1,15 +1,22 @@
+MCS_BUILD_DIR = ../../../build
+
 thisdir = class/Facades/System.Text.Encoding.Extensions
 SUBDIRS = 
-include ../../../build/rules.make
+include $(MCS_BUILD_DIR)/rules.make
 
 LIBRARY_SUBDIR = Facades
 LIBRARY_INSTALL_DIR = $(mono_libdir)/mono/$(FRAMEWORK_VERSION)/Facades
 
 LIBRARY = System.Text.Encoding.Extensions.dll
-LIB_MCS_FLAGS =
+
+KEY_FILE = ../../msfinal.pub
+SIGN_FLAGS = /delaysign /keyfile:$(KEY_FILE) /nowarn:1616,1699
+LIB_MCS_FLAGS = $(SIGN_FLAGS) /r:mscorlib
 
 PLATFORM_DEBUG_FLAGS =
 
 NO_TEST = yes
 
-include ../../../build/library.make
+include $(MCS_BUILD_DIR)/library.make
+
+
index 8b7affa11a1f45027a8dd6b08a5c62ec410fcd47..fe366378eb9196b0ae978f103983015125e3df74 100644 (file)
@@ -1,21 +1,16 @@
-//
-// TypeForwarders.cs
-//
-// Author:
-//       Martin Baulig <martin.baulig@xamarin.com>
-//
+// 
 // Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)
-//
+// 
 // Permission is hereby granted, free of charge, to any person obtaining a copy
 // of this software and associated documentation files (the "Software"), to deal
 // in the Software without restriction, including without limitation the rights
 // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 // copies of the Software, and to permit persons to whom the Software is
 // furnished to do so, subject to the following conditions:
-//
+// 
 // The above copyright notice and this permission notice shall be included in
 // all copies or substantial portions of the Software.
-//
+// 
 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
@@ -23,6 +18,7 @@
 // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 // THE SOFTWARE.
+// 
 
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Text.UnicodeEncoding))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Text.UTF8Encoding))]
index 5f8792605086901dd3aa283acbf9b18e7c75872d..ff006b094f959d4f4ce97e4db8ce5f4e549c5e2d 100644 (file)
@@ -1,21 +1,16 @@
-//
-// TypeForwarders.cs
-//
-// Author:
-//       Martin Baulig <martin.baulig@xamarin.com>
-//
+// 
 // Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)
-//
+// 
 // Permission is hereby granted, free of charge, to any person obtaining a copy
 // of this software and associated documentation files (the "Software"), to deal
 // in the Software without restriction, including without limitation the rights
 // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 // copies of the Software, and to permit persons to whom the Software is
 // furnished to do so, subject to the following conditions:
-//
+// 
 // The above copyright notice and this permission notice shall be included in
 // all copies or substantial portions of the Software.
-//
+// 
 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
@@ -23,6 +18,7 @@
 // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 // THE SOFTWARE.
+// 
 
 using System;
 using System.Reflection;
@@ -31,10 +27,9 @@ using System.Runtime.CompilerServices;
 [assembly: AssemblyTitle ("System.Text.Encoding.dll")]
 [assembly: AssemblyDescription ("System.Text.Encoding.dll")]
 [assembly: AssemblyDefaultAlias ("System.Text.Encoding.dll")]
-
-[assembly: AssemblyCompany (Consts.MonoCompany)]
-[assembly: AssemblyProduct (Consts.MonoProduct)]
-[assembly: AssemblyCopyright (Consts.MonoCopyright)]
+[assembly: AssemblyCompany ("Xamarin, Inc.")]
+[assembly: AssemblyProduct ("Mono Common Language Infrastructure")]
+[assembly: AssemblyCopyright ("Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)")]
 [assembly: AssemblyVersion ("4.0.0.0")]
 [assembly: AssemblyInformationalVersion ("4.0.0.0")]
 [assembly: AssemblyFileVersion ("4.0.0.0")]
@@ -42,3 +37,5 @@ using System.Runtime.CompilerServices;
 [assembly: AssemblyKeyFile ("../../msfinal.pub")]
 
 [assembly: ReferenceAssembly]
+
+
index cdbab8404398f1f5d2a9de4828ab6c377939773d..bf200cf7c5f8b8cc235ef5f995d51881c35e8662 100644 (file)
@@ -1,15 +1,22 @@
+MCS_BUILD_DIR = ../../../build
+
 thisdir = class/Facades/System.Text.Encoding
 SUBDIRS = 
-include ../../../build/rules.make
+include $(MCS_BUILD_DIR)/rules.make
 
 LIBRARY_SUBDIR = Facades
 LIBRARY_INSTALL_DIR = $(mono_libdir)/mono/$(FRAMEWORK_VERSION)/Facades
 
 LIBRARY = System.Text.Encoding.dll
-LIB_MCS_FLAGS =
+
+KEY_FILE = ../../msfinal.pub
+SIGN_FLAGS = /delaysign /keyfile:$(KEY_FILE) /nowarn:1616,1699
+LIB_MCS_FLAGS = $(SIGN_FLAGS) /r:mscorlib
 
 PLATFORM_DEBUG_FLAGS =
 
 NO_TEST = yes
 
-include ../../../build/library.make
+include $(MCS_BUILD_DIR)/library.make
+
+
index 74532efb2ea75c271c00a4aeafcc07fa77ce69de..8e33d4ddeae92bde7aa8afd994db5d90d6af18d9 100644 (file)
@@ -1,3 +1,3 @@
-AssemblyInfo.cs
 TypeForwarders.cs
-../../../build/common/Consts.cs
+AssemblyInfo.cs
+
index d15e31434608494f7b606eacb877ef8006508e84..8c132eccc56829334c59a1a791a779b3bf161814 100644 (file)
@@ -1,21 +1,16 @@
-//
-// TypeForwarders.cs
-//
-// Author:
-//       Martin Baulig <martin.baulig@xamarin.com>
-//
+// 
 // Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)
-//
+// 
 // Permission is hereby granted, free of charge, to any person obtaining a copy
 // of this software and associated documentation files (the "Software"), to deal
 // in the Software without restriction, including without limitation the rights
 // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 // copies of the Software, and to permit persons to whom the Software is
 // furnished to do so, subject to the following conditions:
-//
+// 
 // The above copyright notice and this permission notice shall be included in
 // all copies or substantial portions of the Software.
-//
+// 
 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
@@ -23,6 +18,7 @@
 // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 // THE SOFTWARE.
+// 
 
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Text.Decoder))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Text.DecoderFallbackException))]
index 4caaa79a5df178a397e5ac8e48f278e9baa53f02..41f882f463e9d07feb2a500b4ea17b8db72ce102 100644 (file)
@@ -1,21 +1,16 @@
-//
-// TypeForwarders.cs
-//
-// Author:
-//       Martin Baulig <martin.baulig@xamarin.com>
-//
+// 
 // Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)
-//
+// 
 // Permission is hereby granted, free of charge, to any person obtaining a copy
 // of this software and associated documentation files (the "Software"), to deal
 // in the Software without restriction, including without limitation the rights
 // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 // copies of the Software, and to permit persons to whom the Software is
 // furnished to do so, subject to the following conditions:
-//
+// 
 // The above copyright notice and this permission notice shall be included in
 // all copies or substantial portions of the Software.
-//
+// 
 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
@@ -23,6 +18,7 @@
 // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 // THE SOFTWARE.
+// 
 
 using System;
 using System.Reflection;
@@ -31,10 +27,9 @@ using System.Runtime.CompilerServices;
 [assembly: AssemblyTitle ("System.Text.RegularExpressions.dll")]
 [assembly: AssemblyDescription ("System.Text.RegularExpressions.dll")]
 [assembly: AssemblyDefaultAlias ("System.Text.RegularExpressions.dll")]
-
-[assembly: AssemblyCompany (Consts.MonoCompany)]
-[assembly: AssemblyProduct (Consts.MonoProduct)]
-[assembly: AssemblyCopyright (Consts.MonoCopyright)]
+[assembly: AssemblyCompany ("Xamarin, Inc.")]
+[assembly: AssemblyProduct ("Mono Common Language Infrastructure")]
+[assembly: AssemblyCopyright ("Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)")]
 [assembly: AssemblyVersion ("4.0.0.0")]
 [assembly: AssemblyInformationalVersion ("4.0.0.0")]
 [assembly: AssemblyFileVersion ("4.0.0.0")]
@@ -42,3 +37,5 @@ using System.Runtime.CompilerServices;
 [assembly: AssemblyKeyFile ("../../msfinal.pub")]
 
 [assembly: ReferenceAssembly]
+
+
index 34e35c98949ec3340bead76699a84abcefffe384..24cd5d7fce2879863780353f1b03af067755d4f4 100644 (file)
@@ -1,15 +1,22 @@
+MCS_BUILD_DIR = ../../../build
+
 thisdir = class/Facades/System.Text.RegularExpressions
 SUBDIRS = 
-include ../../../build/rules.make
+include $(MCS_BUILD_DIR)/rules.make
 
 LIBRARY_SUBDIR = Facades
 LIBRARY_INSTALL_DIR = $(mono_libdir)/mono/$(FRAMEWORK_VERSION)/Facades
 
 LIBRARY = System.Text.RegularExpressions.dll
-LIB_MCS_FLAGS = /r:System
+
+KEY_FILE = ../../msfinal.pub
+SIGN_FLAGS = /delaysign /keyfile:$(KEY_FILE) /nowarn:1616,1699
+LIB_MCS_FLAGS = $(SIGN_FLAGS) /r:mscorlib /r:System
 
 PLATFORM_DEBUG_FLAGS =
 
 NO_TEST = yes
 
-include ../../../build/library.make
+include $(MCS_BUILD_DIR)/library.make
+
+
index 62e0e5c58b632035ff74910dec58037851bc2869..be4c7cc58bcba3d1a50e548ba714a4e61834e821 100644 (file)
@@ -1,21 +1,16 @@
-//
-// TypeForwarders.cs
-//
-// Author:
-//       Martin Baulig <martin.baulig@xamarin.com>
-//
+// 
 // Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)
-//
+// 
 // Permission is hereby granted, free of charge, to any person obtaining a copy
 // of this software and associated documentation files (the "Software"), to deal
 // in the Software without restriction, including without limitation the rights
 // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 // copies of the Software, and to permit persons to whom the Software is
 // furnished to do so, subject to the following conditions:
-//
+// 
 // The above copyright notice and this permission notice shall be included in
 // all copies or substantial portions of the Software.
-//
+// 
 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
@@ -23,6 +18,7 @@
 // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 // THE SOFTWARE.
+// 
 
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Text.RegularExpressions.Capture))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Text.RegularExpressions.CaptureCollection))]
@@ -32,6 +28,6 @@
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Text.RegularExpressions.MatchCollection))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Text.RegularExpressions.MatchEvaluator))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Text.RegularExpressions.Regex))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Text.RegularExpressions.RegexOptions))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Text.RegularExpressions.RegexMatchTimeoutException))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Text.RegularExpressions.RegexOptions))]
 
index d01e3e586a70a6ce88af3db92a7571d1b7a27392..25719f70bf7f718fd598e46edf095fb6ba4957f2 100644 (file)
@@ -1,21 +1,16 @@
-//
-// TypeForwarders.cs
-//
-// Author:
-//       Martin Baulig <martin.baulig@xamarin.com>
-//
+// 
 // Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)
-//
+// 
 // Permission is hereby granted, free of charge, to any person obtaining a copy
 // of this software and associated documentation files (the "Software"), to deal
 // in the Software without restriction, including without limitation the rights
 // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 // copies of the Software, and to permit persons to whom the Software is
 // furnished to do so, subject to the following conditions:
-//
+// 
 // The above copyright notice and this permission notice shall be included in
 // all copies or substantial portions of the Software.
-//
+// 
 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
@@ -23,6 +18,7 @@
 // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 // THE SOFTWARE.
+// 
 
 using System;
 using System.Reflection;
@@ -31,10 +27,9 @@ using System.Runtime.CompilerServices;
 [assembly: AssemblyTitle ("System.Threading.Tasks.Parallel.dll")]
 [assembly: AssemblyDescription ("System.Threading.Tasks.Parallel.dll")]
 [assembly: AssemblyDefaultAlias ("System.Threading.Tasks.Parallel.dll")]
-
-[assembly: AssemblyCompany (Consts.MonoCompany)]
-[assembly: AssemblyProduct (Consts.MonoProduct)]
-[assembly: AssemblyCopyright (Consts.MonoCopyright)]
+[assembly: AssemblyCompany ("Xamarin, Inc.")]
+[assembly: AssemblyProduct ("Mono Common Language Infrastructure")]
+[assembly: AssemblyCopyright ("Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)")]
 [assembly: AssemblyVersion ("4.0.0.0")]
 [assembly: AssemblyInformationalVersion ("4.0.0.0")]
 [assembly: AssemblyFileVersion ("4.0.0.0")]
@@ -42,3 +37,5 @@ using System.Runtime.CompilerServices;
 [assembly: AssemblyKeyFile ("../../msfinal.pub")]
 
 [assembly: ReferenceAssembly]
+
+
index 1704d13f704563dbedeb5042b2dc0ab1edc5ac27..37059d95bfc7bfcec0284f644eb445023a8fb3a9 100644 (file)
@@ -1,15 +1,22 @@
+MCS_BUILD_DIR = ../../../build
+
 thisdir = class/Facades/System.Threading.Tasks.Parallel
 SUBDIRS = 
-include ../../../build/rules.make
+include $(MCS_BUILD_DIR)/rules.make
 
 LIBRARY_SUBDIR = Facades
 LIBRARY_INSTALL_DIR = $(mono_libdir)/mono/$(FRAMEWORK_VERSION)/Facades
 
 LIBRARY = System.Threading.Tasks.Parallel.dll
-LIB_MCS_FLAGS =
+
+KEY_FILE = ../../msfinal.pub
+SIGN_FLAGS = /delaysign /keyfile:$(KEY_FILE) /nowarn:1616,1699
+LIB_MCS_FLAGS = $(SIGN_FLAGS) /r:mscorlib
 
 PLATFORM_DEBUG_FLAGS =
 
 NO_TEST = yes
 
-include ../../../build/library.make
+include $(MCS_BUILD_DIR)/library.make
+
+
index 16a8a39a14c3424fdd9a7ee3633d1cccc4ec85ee..bdf9140205c6f61431c7a3f6ac92b147a61b9707 100644 (file)
@@ -1,21 +1,16 @@
-//
-// TypeForwarders.cs
-//
-// Author:
-//       Martin Baulig <martin.baulig@xamarin.com>
-//
+// 
 // Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)
-//
+// 
 // Permission is hereby granted, free of charge, to any person obtaining a copy
 // of this software and associated documentation files (the "Software"), to deal
 // in the Software without restriction, including without limitation the rights
 // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 // copies of the Software, and to permit persons to whom the Software is
 // furnished to do so, subject to the following conditions:
-//
+// 
 // The above copyright notice and this permission notice shall be included in
 // all copies or substantial portions of the Software.
-//
+// 
 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
@@ -23,6 +18,7 @@
 // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 // THE SOFTWARE.
+// 
 
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Threading.Tasks.Parallel))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Threading.Tasks.ParallelLoopResult))]
index 94041db6ebfbc6c94f3fa449967247397f916f4c..b4b38c47067de161789da0bfd5d62113831b3e84 100644 (file)
@@ -1,21 +1,16 @@
-//
-// TypeForwarders.cs
-//
-// Author:
-//       Martin Baulig <martin.baulig@xamarin.com>
-//
+// 
 // Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)
-//
+// 
 // Permission is hereby granted, free of charge, to any person obtaining a copy
 // of this software and associated documentation files (the "Software"), to deal
 // in the Software without restriction, including without limitation the rights
 // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 // copies of the Software, and to permit persons to whom the Software is
 // furnished to do so, subject to the following conditions:
-//
+// 
 // The above copyright notice and this permission notice shall be included in
 // all copies or substantial portions of the Software.
-//
+// 
 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
@@ -23,6 +18,7 @@
 // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 // THE SOFTWARE.
+// 
 
 using System;
 using System.Reflection;
@@ -31,10 +27,9 @@ using System.Runtime.CompilerServices;
 [assembly: AssemblyTitle ("System.Threading.Tasks.dll")]
 [assembly: AssemblyDescription ("System.Threading.Tasks.dll")]
 [assembly: AssemblyDefaultAlias ("System.Threading.Tasks.dll")]
-
-[assembly: AssemblyCompany (Consts.MonoCompany)]
-[assembly: AssemblyProduct (Consts.MonoProduct)]
-[assembly: AssemblyCopyright (Consts.MonoCopyright)]
+[assembly: AssemblyCompany ("Xamarin, Inc.")]
+[assembly: AssemblyProduct ("Mono Common Language Infrastructure")]
+[assembly: AssemblyCopyright ("Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)")]
 [assembly: AssemblyVersion ("4.0.0.0")]
 [assembly: AssemblyInformationalVersion ("4.0.0.0")]
 [assembly: AssemblyFileVersion ("4.0.0.0")]
@@ -42,3 +37,5 @@ using System.Runtime.CompilerServices;
 [assembly: AssemblyKeyFile ("../../msfinal.pub")]
 
 [assembly: ReferenceAssembly]
+
+
index 57f182354435eaa9ac2af37d73eac297d4c278dc..2358e77f0ff728f0c2700c9e65a14f03ba71a89d 100644 (file)
@@ -1,15 +1,22 @@
+MCS_BUILD_DIR = ../../../build
+
 thisdir = class/Facades/System.Threading.Tasks
 SUBDIRS = 
-include ../../../build/rules.make
+include $(MCS_BUILD_DIR)/rules.make
 
 LIBRARY_SUBDIR = Facades
 LIBRARY_INSTALL_DIR = $(mono_libdir)/mono/$(FRAMEWORK_VERSION)/Facades
 
 LIBRARY = System.Threading.Tasks.dll
-LIB_MCS_FLAGS = /r:System.Core /r:System
+
+KEY_FILE = ../../msfinal.pub
+SIGN_FLAGS = /delaysign /keyfile:$(KEY_FILE) /nowarn:1616,1699
+LIB_MCS_FLAGS = $(SIGN_FLAGS) /r:mscorlib /r:System.Core
 
 PLATFORM_DEBUG_FLAGS =
 
 NO_TEST = yes
 
-include ../../../build/library.make
+include $(MCS_BUILD_DIR)/library.make
+
+
index 74532efb2ea75c271c00a4aeafcc07fa77ce69de..8e33d4ddeae92bde7aa8afd994db5d90d6af18d9 100644 (file)
@@ -1,3 +1,3 @@
-AssemblyInfo.cs
 TypeForwarders.cs
-../../../build/common/Consts.cs
+AssemblyInfo.cs
+
index 9d1d9bd176031956e8176d79f44fe1d63e4a31fd..bebef9da525fa80113a5ac598ecc2a7635c7f28e 100644 (file)
@@ -1,21 +1,16 @@
-//
-// TypeForwarders.cs
-//
-// Author:
-//       Martin Baulig <martin.baulig@xamarin.com>
-//
+// 
 // Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)
-//
+// 
 // Permission is hereby granted, free of charge, to any person obtaining a copy
 // of this software and associated documentation files (the "Software"), to deal
 // in the Software without restriction, including without limitation the rights
 // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 // copies of the Software, and to permit persons to whom the Software is
 // furnished to do so, subject to the following conditions:
-//
+// 
 // The above copyright notice and this permission notice shall be included in
 // all copies or substantial portions of the Software.
-//
+// 
 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
 // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 // THE SOFTWARE.
+// 
 
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Threading.Tasks.TaskExtensions))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.AggregateException))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.OperationCanceledException))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.CompilerServices.AsyncTaskMethodBuilder))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.CompilerServices.AsyncTaskMethodBuilder<>))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.CompilerServices.AsyncVoidMethodBuilder))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.CompilerServices.ConfiguredTaskAwaitable))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.CompilerServices.ConfiguredTaskAwaitable<>))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.CompilerServices.IAsyncStateMachine))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.CompilerServices.ICriticalNotifyCompletion))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.CompilerServices.INotifyCompletion))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.CompilerServices.TaskAwaiter))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.CompilerServices.TaskAwaiter<>))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.CompilerServices.YieldAwaitable))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Threading.CancellationToken))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Threading.CancellationTokenRegistration))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Threading.CancellationTokenSource))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Threading.Tasks.ConcurrentExclusiveSchedulerPair))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Threading.Tasks.Task))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Threading.Tasks.Task<>))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Threading.Tasks.TaskCanceledException))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Threading.Tasks.TaskCompletionSource<>))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Threading.Tasks.TaskContinuationOptions))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Threading.Tasks.TaskCreationOptions))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Threading.Tasks.TaskExtensions))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Threading.Tasks.TaskFactory))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Threading.Tasks.TaskFactory<>))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Threading.Tasks.TaskScheduler))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Threading.Tasks.TaskSchedulerException))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Threading.Tasks.TaskStatus))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Threading.Tasks.UnobservedTaskExceptionEventArgs))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.CompilerServices.AsyncTaskMethodBuilder))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.CompilerServices.AsyncTaskMethodBuilder<>))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.CompilerServices.AsyncVoidMethodBuilder))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.CompilerServices.ConfiguredTaskAwaitable))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.CompilerServices.INotifyCompletion))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.CompilerServices.ICriticalNotifyCompletion))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.CompilerServices.ConfiguredTaskAwaitable<>))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.CompilerServices.IAsyncStateMachine))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.CompilerServices.TaskAwaiter))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.CompilerServices.TaskAwaiter<>))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Runtime.CompilerServices.YieldAwaitable))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Threading.Tasks.ConcurrentExclusiveSchedulerPair))]
 
index 2b90731b7ff58e6a95d3cb1a04b5fc02db367510..c68b68a0939e75137a99a268e6d944d2e3ca93a8 100644 (file)
@@ -1,21 +1,16 @@
-//
-// TypeForwarders.cs
-//
-// Author:
-//       Martin Baulig <martin.baulig@xamarin.com>
-//
+// 
 // Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)
-//
+// 
 // Permission is hereby granted, free of charge, to any person obtaining a copy
 // of this software and associated documentation files (the "Software"), to deal
 // in the Software without restriction, including without limitation the rights
 // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 // copies of the Software, and to permit persons to whom the Software is
 // furnished to do so, subject to the following conditions:
-//
+// 
 // The above copyright notice and this permission notice shall be included in
 // all copies or substantial portions of the Software.
-//
+// 
 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
@@ -23,6 +18,7 @@
 // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 // THE SOFTWARE.
+// 
 
 using System;
 using System.Reflection;
@@ -31,10 +27,9 @@ using System.Runtime.CompilerServices;
 [assembly: AssemblyTitle ("System.Threading.dll")]
 [assembly: AssemblyDescription ("System.Threading.dll")]
 [assembly: AssemblyDefaultAlias ("System.Threading.dll")]
-
-[assembly: AssemblyCompany (Consts.MonoCompany)]
-[assembly: AssemblyProduct (Consts.MonoProduct)]
-[assembly: AssemblyCopyright (Consts.MonoCopyright)]
+[assembly: AssemblyCompany ("Xamarin, Inc.")]
+[assembly: AssemblyProduct ("Mono Common Language Infrastructure")]
+[assembly: AssemblyCopyright ("Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)")]
 [assembly: AssemblyVersion ("4.0.0.0")]
 [assembly: AssemblyInformationalVersion ("4.0.0.0")]
 [assembly: AssemblyFileVersion ("4.0.0.0")]
@@ -42,3 +37,5 @@ using System.Runtime.CompilerServices;
 [assembly: AssemblyKeyFile ("../../msfinal.pub")]
 
 [assembly: ReferenceAssembly]
+
+
index 5d845c942e0e28f7f5b65a0607541ca8c5909f09..62788e4c86fbb61d56d5f75bc29001d88d31a922 100644 (file)
@@ -1,15 +1,22 @@
+MCS_BUILD_DIR = ../../../build
+
 thisdir = class/Facades/System.Threading
 SUBDIRS = 
-include ../../../build/rules.make
+include $(MCS_BUILD_DIR)/rules.make
 
 LIBRARY_SUBDIR = Facades
 LIBRARY_INSTALL_DIR = $(mono_libdir)/mono/$(FRAMEWORK_VERSION)/Facades
 
 LIBRARY = System.Threading.dll
-LIB_MCS_FLAGS = /r:System.Core /r:System
+
+KEY_FILE = ../../msfinal.pub
+SIGN_FLAGS = /delaysign /keyfile:$(KEY_FILE) /nowarn:1616,1699
+LIB_MCS_FLAGS = $(SIGN_FLAGS) /r:mscorlib /r:System /r:System.Core
 
 PLATFORM_DEBUG_FLAGS =
 
 NO_TEST = yes
 
-include ../../../build/library.make
+include $(MCS_BUILD_DIR)/library.make
+
+
index 74532efb2ea75c271c00a4aeafcc07fa77ce69de..8e33d4ddeae92bde7aa8afd994db5d90d6af18d9 100644 (file)
@@ -1,3 +1,3 @@
-AssemblyInfo.cs
 TypeForwarders.cs
-../../../build/common/Consts.cs
+AssemblyInfo.cs
+
index 605b66f26b5a250b1956419b9114af45ebb073e3..7d6affcb01138c96e98fce13e4a50015ba448cc8 100644 (file)
@@ -1,21 +1,16 @@
-//
-// TypeForwarders.cs
-//
-// Author:
-//       Martin Baulig <martin.baulig@xamarin.com>
-//
+// 
 // Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)
-//
+// 
 // Permission is hereby granted, free of charge, to any person obtaining a copy
 // of this software and associated documentation files (the "Software"), to deal
 // in the Software without restriction, including without limitation the rights
 // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 // copies of the Software, and to permit persons to whom the Software is
 // furnished to do so, subject to the following conditions:
-//
+// 
 // The above copyright notice and this permission notice shall be included in
 // all copies or substantial portions of the Software.
-//
+// 
 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
 // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 // THE SOFTWARE.
+// 
 
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Threading.SynchronizationContext))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Threading.EventWaitHandle))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Threading.AbandonedMutexException))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Threading.AutoResetEvent))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Threading.Interlocked))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Threading.ManualResetEvent))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Threading.Monitor))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Threading.SendOrPostCallback))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Threading.SynchronizationLockException))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Threading.LockRecursionPolicy))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Threading.ReaderWriterLockSlim))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Threading.Barrier))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Threading.BarrierPostPhaseException))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Threading.Semaphore))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Threading.AbandonedMutexException))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Threading.CountdownEvent))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Threading.EventResetMode))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Threading.EventWaitHandle))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Threading.Interlocked))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Threading.LazyInitializer))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Threading.LockRecursionException))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Threading.LockRecursionPolicy))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Threading.ManualResetEvent))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Threading.ManualResetEventSlim))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Threading.Monitor))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Threading.Mutex))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Threading.ReaderWriterLockSlim))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Threading.Semaphore))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Threading.SemaphoreFullException))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Threading.SemaphoreSlim))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Threading.SendOrPostCallback))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Threading.SpinLock))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Threading.SpinWait))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Threading.SynchronizationContext))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Threading.SynchronizationLockException))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Threading.ThreadLocal<>))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Threading.WaitHandleCannotBeOpenedException))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Threading.Volatile))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Threading.WaitHandleCannotBeOpenedException))]
 
index 54a6d7d37a77b3f9f6ec516cf6e2206db181d882..d05105115559fa4e61d3ed60b41438ef3e8a9ef5 100644 (file)
@@ -1,21 +1,16 @@
-//
-// TypeForwarders.cs
-//
-// Author:
-//       Martin Baulig <martin.baulig@xamarin.com>
-//
+// 
 // Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)
-//
+// 
 // Permission is hereby granted, free of charge, to any person obtaining a copy
 // of this software and associated documentation files (the "Software"), to deal
 // in the Software without restriction, including without limitation the rights
 // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 // copies of the Software, and to permit persons to whom the Software is
 // furnished to do so, subject to the following conditions:
-//
+// 
 // The above copyright notice and this permission notice shall be included in
 // all copies or substantial portions of the Software.
-//
+// 
 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
@@ -23,6 +18,7 @@
 // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 // THE SOFTWARE.
+// 
 
 using System;
 using System.Reflection;
@@ -31,10 +27,9 @@ using System.Runtime.CompilerServices;
 [assembly: AssemblyTitle ("System.Xml.ReaderWriter.dll")]
 [assembly: AssemblyDescription ("System.Xml.ReaderWriter.dll")]
 [assembly: AssemblyDefaultAlias ("System.Xml.ReaderWriter.dll")]
-
-[assembly: AssemblyCompany (Consts.MonoCompany)]
-[assembly: AssemblyProduct (Consts.MonoProduct)]
-[assembly: AssemblyCopyright (Consts.MonoCopyright)]
+[assembly: AssemblyCompany ("Xamarin, Inc.")]
+[assembly: AssemblyProduct ("Mono Common Language Infrastructure")]
+[assembly: AssemblyCopyright ("Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)")]
 [assembly: AssemblyVersion ("4.0.0.0")]
 [assembly: AssemblyInformationalVersion ("4.0.0.0")]
 [assembly: AssemblyFileVersion ("4.0.0.0")]
@@ -42,3 +37,5 @@ using System.Runtime.CompilerServices;
 [assembly: AssemblyKeyFile ("../../msfinal.pub")]
 
 [assembly: ReferenceAssembly]
+
+
index 5f91ff210c7b6371d77d4bce14acf0268ba50d6a..57feb51f2aa05a594c9608caa3eb425137dcf1a6 100644 (file)
@@ -1,15 +1,22 @@
+MCS_BUILD_DIR = ../../../build
+
 thisdir = class/Facades/System.Xml.ReaderWriter
 SUBDIRS = 
-include ../../../build/rules.make
+include $(MCS_BUILD_DIR)/rules.make
 
 LIBRARY_SUBDIR = Facades
 LIBRARY_INSTALL_DIR = $(mono_libdir)/mono/$(FRAMEWORK_VERSION)/Facades
 
 LIBRARY = System.Xml.ReaderWriter.dll
-LIB_MCS_FLAGS = /r:System.Xml
+
+KEY_FILE = ../../msfinal.pub
+SIGN_FLAGS = /delaysign /keyfile:$(KEY_FILE) /nowarn:1616,1699
+LIB_MCS_FLAGS = $(SIGN_FLAGS) /r:mscorlib /r:System.Xml
 
 PLATFORM_DEBUG_FLAGS =
 
 NO_TEST = yes
 
-include ../../../build/library.make
+include $(MCS_BUILD_DIR)/library.make
+
+
index 74532efb2ea75c271c00a4aeafcc07fa77ce69de..8e33d4ddeae92bde7aa8afd994db5d90d6af18d9 100644 (file)
@@ -1,3 +1,3 @@
-AssemblyInfo.cs
 TypeForwarders.cs
-../../../build/common/Consts.cs
+AssemblyInfo.cs
+
index 0d3ab53df0d43ea334d0e7370fc910918823801e..f3ee0d8101f703cd01414eb590d22a7cb7f09531 100644 (file)
@@ -1,21 +1,16 @@
-//
-// TypeForwarders.cs
-//
-// Author:
-//       Martin Baulig <martin.baulig@xamarin.com>
-//
+// 
 // Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)
-//
+// 
 // Permission is hereby granted, free of charge, to any person obtaining a copy
 // of this software and associated documentation files (the "Software"), to deal
 // in the Software without restriction, including without limitation the rights
 // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 // copies of the Software, and to permit persons to whom the Software is
 // furnished to do so, subject to the following conditions:
-//
+// 
 // The above copyright notice and this permission notice shall be included in
 // all copies or substantial portions of the Software.
-//
+// 
 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
 // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 // THE SOFTWARE.
+// 
 
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Xml.ConformanceLevel))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Xml.DtdProcessing))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Xml.IXmlLineInfo))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Xml.IXmlNamespaceResolver))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Xml.NamespaceHandling))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Xml.XmlNameTable))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Xml.NameTable))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Xml.NewLineHandling))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Xml.ReadState))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Xml.Schema.XmlSchema))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Xml.Schema.XmlSchemaForm))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Xml.WriteState))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Xml.XmlConvert))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Xml.XmlException))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Xml.XmlNamespaceManager))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Xml.XmlNamespaceScope))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Xml.XmlNameTable))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Xml.XmlNodeType))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Xml.XmlParserContext))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Xml.XmlQualifiedName))]
@@ -46,6 +44,4 @@
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Xml.XmlSpace))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Xml.XmlWriter))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Xml.XmlWriterSettings))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Xml.Schema.XmlSchema))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Xml.Schema.XmlSchemaForm))]
 
index e3f2265166d9af2139b22cd1aeeda58e4b3e5212..bd6476be5237c6c54e0fbf8747837f1f2b6da629 100644 (file)
@@ -1,21 +1,16 @@
-//
-// TypeForwarders.cs
-//
-// Author:
-//       Martin Baulig <martin.baulig@xamarin.com>
-//
+// 
 // Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)
-//
+// 
 // Permission is hereby granted, free of charge, to any person obtaining a copy
 // of this software and associated documentation files (the "Software"), to deal
 // in the Software without restriction, including without limitation the rights
 // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 // copies of the Software, and to permit persons to whom the Software is
 // furnished to do so, subject to the following conditions:
-//
+// 
 // The above copyright notice and this permission notice shall be included in
 // all copies or substantial portions of the Software.
-//
+// 
 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
@@ -23,6 +18,7 @@
 // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 // THE SOFTWARE.
+// 
 
 using System;
 using System.Reflection;
@@ -31,10 +27,9 @@ using System.Runtime.CompilerServices;
 [assembly: AssemblyTitle ("System.Xml.XDocument.dll")]
 [assembly: AssemblyDescription ("System.Xml.XDocument.dll")]
 [assembly: AssemblyDefaultAlias ("System.Xml.XDocument.dll")]
-
-[assembly: AssemblyCompany (Consts.MonoCompany)]
-[assembly: AssemblyProduct (Consts.MonoProduct)]
-[assembly: AssemblyCopyright (Consts.MonoCopyright)]
+[assembly: AssemblyCompany ("Xamarin, Inc.")]
+[assembly: AssemblyProduct ("Mono Common Language Infrastructure")]
+[assembly: AssemblyCopyright ("Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)")]
 [assembly: AssemblyVersion ("4.0.0.0")]
 [assembly: AssemblyInformationalVersion ("4.0.0.0")]
 [assembly: AssemblyFileVersion ("4.0.0.0")]
@@ -42,3 +37,5 @@ using System.Runtime.CompilerServices;
 [assembly: AssemblyKeyFile ("../../msfinal.pub")]
 
 [assembly: ReferenceAssembly]
+
+
index a02bc52e680a9ba76a92928113e2fcf01d9338d2..2f2aa6fabdd5c9623f833eb9bb001ea2ab76a5b5 100644 (file)
@@ -1,15 +1,22 @@
+MCS_BUILD_DIR = ../../../build
+
 thisdir = class/Facades/System.Xml.XDocument
 SUBDIRS = 
-include ../../../build/rules.make
+include $(MCS_BUILD_DIR)/rules.make
 
 LIBRARY_SUBDIR = Facades
 LIBRARY_INSTALL_DIR = $(mono_libdir)/mono/$(FRAMEWORK_VERSION)/Facades
 
 LIBRARY = System.Xml.XDocument.dll
-LIB_MCS_FLAGS = /r:System.Xml.Linq /r:System.Xml
+
+KEY_FILE = ../../msfinal.pub
+SIGN_FLAGS = /delaysign /keyfile:$(KEY_FILE) /nowarn:1616,1699
+LIB_MCS_FLAGS = $(SIGN_FLAGS) /r:mscorlib /r:System.Xml.Linq /r:System.Xml
 
 PLATFORM_DEBUG_FLAGS =
 
 NO_TEST = yes
 
-include ../../../build/library.make
+include $(MCS_BUILD_DIR)/library.make
+
+
index 74532efb2ea75c271c00a4aeafcc07fa77ce69de..8e33d4ddeae92bde7aa8afd994db5d90d6af18d9 100644 (file)
@@ -1,3 +1,3 @@
-AssemblyInfo.cs
 TypeForwarders.cs
-../../../build/common/Consts.cs
+AssemblyInfo.cs
+
index 4a74cd240e93fc95ab6b9bb12acb7892d6be2a88..4bedfba794f58ed7f415f5ff5eb9ad19ebe3a5dc 100644 (file)
@@ -1,21 +1,16 @@
-//
-// TypeForwarders.cs
-//
-// Author:
-//       Martin Baulig <martin.baulig@xamarin.com>
-//
+// 
 // Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)
-//
+// 
 // Permission is hereby granted, free of charge, to any person obtaining a copy
 // of this software and associated documentation files (the "Software"), to deal
 // in the Software without restriction, including without limitation the rights
 // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 // copies of the Software, and to permit persons to whom the Software is
 // furnished to do so, subject to the following conditions:
-//
+// 
 // The above copyright notice and this permission notice shall be included in
 // all copies or substantial portions of the Software.
-//
+// 
 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
 // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 // THE SOFTWARE.
+// 
 
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Xml.Linq.Extensions))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Xml.Linq.LoadOptions))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Xml.Linq.ReaderOptions))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Xml.Linq.SaveOptions))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Xml.Linq.XObject))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Xml.Linq.XAttribute))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Xml.Linq.XNode))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Xml.Linq.XText))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Xml.Linq.XCData))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Xml.Linq.XComment))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Xml.Linq.XContainer))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Xml.Linq.XElement))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Xml.Linq.XName))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Xml.Linq.XNamespace))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Xml.Linq.XNode))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Xml.Linq.XNodeDocumentOrderComparer))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Xml.Linq.XNodeEqualityComparer))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Xml.Linq.XObject))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Xml.Linq.XObjectChange))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Xml.Linq.XObjectChangeEventArgs))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Xml.Linq.XProcessingInstruction))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Xml.Linq.XStreamingElement))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Xml.Linq.XText))]
 
index 4a33ba5a72fe85fa35a7dee804454451666f6267..71235d79b0ba499725ab4648edc4cfacffde4b21 100644 (file)
@@ -1,21 +1,16 @@
-//
-// TypeForwarders.cs
-//
-// Author:
-//       Martin Baulig <martin.baulig@xamarin.com>
-//
+// 
 // Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)
-//
+// 
 // Permission is hereby granted, free of charge, to any person obtaining a copy
 // of this software and associated documentation files (the "Software"), to deal
 // in the Software without restriction, including without limitation the rights
 // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 // copies of the Software, and to permit persons to whom the Software is
 // furnished to do so, subject to the following conditions:
-//
+// 
 // The above copyright notice and this permission notice shall be included in
 // all copies or substantial portions of the Software.
-//
+// 
 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
@@ -23,6 +18,7 @@
 // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 // THE SOFTWARE.
+// 
 
 using System;
 using System.Reflection;
@@ -31,10 +27,9 @@ using System.Runtime.CompilerServices;
 [assembly: AssemblyTitle ("System.Xml.XmlSerializer.dll")]
 [assembly: AssemblyDescription ("System.Xml.XmlSerializer.dll")]
 [assembly: AssemblyDefaultAlias ("System.Xml.XmlSerializer.dll")]
-
-[assembly: AssemblyCompany (Consts.MonoCompany)]
-[assembly: AssemblyProduct (Consts.MonoProduct)]
-[assembly: AssemblyCopyright (Consts.MonoCopyright)]
+[assembly: AssemblyCompany ("Xamarin, Inc.")]
+[assembly: AssemblyProduct ("Mono Common Language Infrastructure")]
+[assembly: AssemblyCopyright ("Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)")]
 [assembly: AssemblyVersion ("4.0.0.0")]
 [assembly: AssemblyInformationalVersion ("4.0.0.0")]
 [assembly: AssemblyFileVersion ("4.0.0.0")]
@@ -42,3 +37,5 @@ using System.Runtime.CompilerServices;
 [assembly: AssemblyKeyFile ("../../msfinal.pub")]
 
 [assembly: ReferenceAssembly]
+
+
index 700ad785b56e7fc1a6520ffb84c32cdfbdf0ee42..c627fca3050b0628b1ec8c7dfd3e3d9102f6dc54 100644 (file)
@@ -1,15 +1,22 @@
+MCS_BUILD_DIR = ../../../build
+
 thisdir = class/Facades/System.Xml.XmlSerializer
 SUBDIRS = 
-include ../../../build/rules.make
+include $(MCS_BUILD_DIR)/rules.make
 
 LIBRARY_SUBDIR = Facades
 LIBRARY_INSTALL_DIR = $(mono_libdir)/mono/$(FRAMEWORK_VERSION)/Facades
 
 LIBRARY = System.Xml.XmlSerializer.dll
-LIB_MCS_FLAGS = /r:System.Xml
+
+KEY_FILE = ../../msfinal.pub
+SIGN_FLAGS = /delaysign /keyfile:$(KEY_FILE) /nowarn:1616,1699
+LIB_MCS_FLAGS = $(SIGN_FLAGS) /r:mscorlib /r:System.Xml
 
 PLATFORM_DEBUG_FLAGS =
 
 NO_TEST = yes
 
-include ../../../build/library.make
+include $(MCS_BUILD_DIR)/library.make
+
+
index 74532efb2ea75c271c00a4aeafcc07fa77ce69de..8e33d4ddeae92bde7aa8afd994db5d90d6af18d9 100644 (file)
@@ -1,3 +1,3 @@
-AssemblyInfo.cs
 TypeForwarders.cs
-../../../build/common/Consts.cs
+AssemblyInfo.cs
+
index bda6911b92ae3ca54c2e31a0948d7679f87f6421..df2b775f4ec03b42c7a91b38e772bdf3880c9710 100644 (file)
@@ -1,21 +1,16 @@
-//
-// TypeForwarders.cs
-//
-// Author:
-//       Martin Baulig <martin.baulig@xamarin.com>
-//
+// 
 // Copyright (c) 2013 Xamarin Inc. (http://www.xamarin.com)
-//
+// 
 // Permission is hereby granted, free of charge, to any person obtaining a copy
 // of this software and associated documentation files (the "Software"), to deal
 // in the Software without restriction, including without limitation the rights
 // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 // copies of the Software, and to permit persons to whom the Software is
 // furnished to do so, subject to the following conditions:
-//
+// 
 // The above copyright notice and this permission notice shall be included in
 // all copies or substantial portions of the Software.
-//
+// 
 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
 // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 // THE SOFTWARE.
+// 
 
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Xml.Serialization.XmlSerializer))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Xml.Serialization.XmlArrayItemAttributes))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Xml.Serialization.XmlAttributeOverrides))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Xml.Serialization.XmlAttributes))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Xml.Serialization.XmlElementAttributes))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Xml.Serialization.IXmlSerializable))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Xml.Serialization.XmlAnyAttributeAttribute))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Xml.Serialization.XmlAnyElementAttribute))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Xml.Serialization.XmlAnyElementAttributes))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Xml.Serialization.XmlArrayAttribute))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Xml.Serialization.XmlArrayItemAttribute))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Xml.Serialization.XmlArrayItemAttributes))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Xml.Serialization.XmlAttributeAttribute))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Xml.Serialization.XmlAttributeOverrides))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Xml.Serialization.XmlAttributes))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Xml.Serialization.XmlChoiceIdentifierAttribute))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Xml.Serialization.XmlElementAttribute))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Xml.Serialization.XmlElementAttributes))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Xml.Serialization.XmlEnumAttribute))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Xml.Serialization.XmlIgnoreAttribute))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Xml.Serialization.XmlIncludeAttribute))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Xml.Serialization.XmlNamespaceDeclarationsAttribute))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Xml.Serialization.XmlRootAttribute))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Xml.Serialization.XmlSchemaProviderAttribute))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Xml.Serialization.XmlSerializer))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Xml.Serialization.XmlSerializerNamespaces))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Xml.Serialization.XmlTextAttribute))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Xml.Serialization.XmlTypeAttribute))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Xml.Serialization.XmlAnyElementAttributes))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Xml.Serialization.XmlSerializerNamespaces))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Xml.Serialization.XmlAnyElementAttribute))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Xml.Serialization.XmlNamespaceDeclarationsAttribute))]
-[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Xml.Serialization.XmlAnyAttributeAttribute))]
 
index 91decc95e6c9f4c79ea17bb03be087968f2ed16d..db444031339d1f89907d9ace83a5f1b52cc9156e 100644 (file)
@@ -128,6 +128,8 @@ net_2_0_only_dirs := \
        System.Data.Services            \
        System.Web.Mvc \
 
+pcl_facade_dirs := Facades
+
 mobile_dirs := \
        corlib  \
        System  \
@@ -156,7 +158,7 @@ mobile_dirs := \
        System.Net \
        System.Windows \
        System.Xml.Serialization \
-       Facades
+       $(pcl_facade_dirs)
 
 monodroid_dirs := \
        Mono.CompilerServices.SymbolWriter      \
@@ -229,7 +231,7 @@ net_4_5_dirs := \
        System.IO.Compression.FileSystem \
        System.Windows \
        System.Xml.Serialization \
-       Facades
+       $(pcl_facade_dirs)
        
 net_2_0_SUBDIRS := $(common_dirs) $(net_2_0_dirs) $(net_2_0_only_dirs) aot-compiler
 monodroid_SUBDIRS := $(mobile_dirs) $(monodroid_dirs)
index 709fedf1ce88f40e5419b637ed4a48a64a5458eb..bf61921902522faf4b7aae6967afc66429ab6c45 100644 (file)
@@ -109,6 +109,11 @@ namespace Microsoft.Build.BuildEngine {
                {
                        if (token.Type == TokenType.Number)
                                return true;
+                       else if (token.Type == TokenType.String) {
+                               var text = StringEvaluate (context);
+                               Single number;
+                               return Single.TryParse (text, out number);
+                       }
                        else
                                return false;
                }
index 624bd71ac7f8dcd0dc5b2fc0eccb030d4b540c35..4636d27250bc0a3af4b424480f6a70fde89266d3 100644 (file)
@@ -96,14 +96,17 @@ namespace Microsoft.Build.BuildEngine {
                                        return;
 
                                int offset = 0;
+                               string full_path;
                                if (Path.IsPathRooted (name)) {
+                                       full_path = name;
                                        baseDirectory = new DirectoryInfo (Path.GetPathRoot (name));
                                        if (IsRunningOnWindows)
                                                // skip the "drive:"
                                                offset = 1;
+                               } else {
+                                       full_path = Path.GetFullPath (Path.Combine (Environment.CurrentDirectory, name));
                                }
 
-                               string full_path = Path.GetFullPath (Path.Combine (Environment.CurrentDirectory, include_item.ItemSpec));
                                fileInfo = ParseIncludeExclude (separatedPath, offset, baseDirectory);
 
                                int wildcard_offset = full_path.IndexOf ("**");
index 51b9f4588a79c7344fe8200cb72f893339633c5f..577a4379d291aeb102a47e97ecb2d288150222a4 100644 (file)
@@ -117,6 +117,11 @@ namespace Microsoft.Build.BuildEngine {
 #if NET_4_0
                        Toolsets.Add (new Toolset ("4.0",
                                                ToolLocationHelper.GetPathToDotNetFramework (TargetDotNetFrameworkVersion.Version40)));
+#endif
+#if NET_4_5
+                       Toolsets.Add (new Toolset("12.0",
+                                               ToolLocationHelper.GetMSBuildInstallPath ("12.0"),
+                                               ToolLocationHelper.GetPathToDotNetFramework (TargetDotNetFrameworkVersion.Version40)));
 #endif
                }
                
index 653f4a80b23e381acfad58937d915a7a88a3e352..351aea020876c31014f2c0b4e9845c8270f66100 100644 (file)
@@ -159,12 +159,23 @@ namespace Microsoft.Build.BuildEngine {
                        else
                                base_dir_info = new DirectoryInfo (Directory.GetCurrentDirectory ());
 
-                       IEnumerable<string> extn_paths = has_extn_ref ? GetExtensionPaths (project) : new string [] {null};
+                       var importPaths = GetImportPathsFromString (project_attribute, project, base_dir_info);
+                       var extensionPaths = GetExtensionPaths (project);
+
+                       if (!has_extn_ref) {
+                               foreach (var importPath in importPaths) {
+                                       foreach (var extensionPath in extensionPaths) {
+                                               has_extn_ref = has_extn_ref || importPath.IndexOf (extensionPath) >= 0;
+                                       }
+                               }
+                       }
+
+                       IEnumerable<string> extn_paths = has_extn_ref ? extensionPaths : new string [] { null };
                        bool import_needed = false;
                        var currentLoadSettings = project.ProjectLoadSettings;
-                       
+
                        try {
-                               foreach (var settings in new ProjectLoadSettings [] { ProjectLoadSettings.None, currentLoadSettings}) {
+                               foreach (var settings in new ProjectLoadSettings [] { ProjectLoadSettings.None, currentLoadSettings }) {
                                        foreach (string path in extn_paths) {
                                                string extn_msg = null;
                                                if (has_extn_ref) {
@@ -183,7 +194,7 @@ namespace Microsoft.Build.BuildEngine {
                                                // We stop if atleast one file got imported.
                                                // Remaining extension paths are *not* tried
                                                bool atleast_one = false;
-                                               foreach (string importPath in GetImportPathsFromString (project_attribute, project, base_dir_info)) {
+                                               foreach (string importPath in importPaths) {
                                                        try {
                                                                if (func (importPath, extn_msg))
                                                                        atleast_one = true;
index 5b6d2553c869045b67cd1e3a5676d69f1c9043b3..d7edd5f29614b7c9ed6bde12149c1d7300d677a1 100644 (file)
@@ -937,6 +937,9 @@ namespace Microsoft.Build.BuildEngine {
                                        case "Import":
                                                AddImport (xe, ip, true);
                                                break;
+                                       case "ImportGroup":
+                                               AddImportGroup (xe, ip, true);
+                                               break;
                                        case "ItemGroup":
                                                AddItemGroup (xe, ip);
                                                break;
@@ -947,7 +950,7 @@ namespace Microsoft.Build.BuildEngine {
                                                AddChoose (xe, ip);
                                                break;
                                        default:
-                                               throw new InvalidProjectFileException (String.Format ("Invalid element '{0}' in project file.", xe.Name));
+                                               throw new InvalidProjectFileException (String.Format ("Invalid element '{0}' in project file '{1}'.", xe.Name, ip.FullFileName));
                                        }
                                }
                        }
@@ -1029,7 +1032,17 @@ namespace Microsoft.Build.BuildEngine {
                        SetExtensionsPathProperties (DefaultExtensionsPath);
                        evaluatedProperties.AddProperty (new BuildProperty ("MSBuildProjectDefaultTargets", DefaultTargets, PropertyType.Reserved));
                        evaluatedProperties.AddProperty (new BuildProperty ("OS", OS, PropertyType.Environment));
-
+#if NET_4_5
+                       // see http://msdn.microsoft.com/en-us/library/vstudio/hh162058(v=vs.120).aspx
+                       if (effective_tools_version == "12.0") {
+                               evaluatedProperties.AddProperty (new BuildProperty ("MSBuildToolsPath32", toolsPath, PropertyType.Reserved));
+                               string frameworkToolsPath = parentEngine.Toolsets [effective_tools_version].FrameworkToolsPath;
+                               if (frameworkToolsPath == null)
+                                       throw new Exception (String.Format ("Invalid tools version '{0}', no framework tools path set for this.", effective_tools_version));                            
+                               evaluatedProperties.AddProperty (new BuildProperty ("MSBuildFrameworkToolsPath", frameworkToolsPath, PropertyType.Reserved));
+                               evaluatedProperties.AddProperty (new BuildProperty ("MSBuildFrameworkToolsPath32", frameworkToolsPath, PropertyType.Reserved));
+                       }
+#endif
                        // FIXME: make some internal method that will work like GetDirectoryName but output String.Empty on null/String.Empty
                        string projectDir;
                        if (FullFileName == String.Empty)
@@ -1104,9 +1117,10 @@ namespace Microsoft.Build.BuildEngine {
                void AddImport (XmlElement xmlElement, ImportedProject importingProject, bool evaluate_properties)
                {
                        // eval all the properties etc till the import
-                       if (evaluate_properties)
+                       if (evaluate_properties) {
                                groupingCollection.Evaluate (EvaluationType.Property);
-
+                               groupingCollection.Evaluate (EvaluationType.Choose);
+                       }
                        try {
                                PushThisFileProperty (importingProject != null ? importingProject.FullFileName : FullFileName);
 
@@ -1121,6 +1135,30 @@ namespace Microsoft.Build.BuildEngine {
                        }
                }
 
+               void AddImportGroup (XmlElement xmlElement, ImportedProject importedProject, bool evaluate_properties)
+               {
+                       // eval all the properties etc till the import group
+                       if (evaluate_properties) {
+                               groupingCollection.Evaluate (EvaluationType.Property);
+                               groupingCollection.Evaluate (EvaluationType.Choose);
+                       }
+                       string condition_attribute = xmlElement.GetAttribute ("Condition");
+                       if (!ConditionParser.ParseAndEvaluate (condition_attribute, this))
+                               return;
+                       foreach (XmlNode xn in xmlElement.ChildNodes) {
+                               if (xn is XmlElement) {
+                                       XmlElement xe = (XmlElement) xn;
+                                       switch (xe.Name) {
+                                       case "Import":
+                                               AddImport (xe, importedProject, evaluate_properties);
+                                               break;
+                                       default:
+                                               throw new InvalidProjectFileException(String.Format("Invalid element '{0}' inside ImportGroup in project file '{1}'.", xe.Name, importedProject.FullFileName));
+                                       }
+                               }
+                       }
+               }
+
                bool AddSingleImport (XmlElement xmlElement, string projectPath, ImportedProject importingProject, string from_source_msg)
                {
                        Import import = new Import (xmlElement, projectPath, this, importingProject);
index 5db46fcbfbd5fa6b2c02dc966ca9775f1925198f..0957f298c500fe263bdcda07fa25cbc0e5d32bd9 100644 (file)
@@ -31,15 +31,21 @@ namespace Microsoft.Build.BuildEngine
 {
        public class Toolset
        {
-               public Toolset (string toolsVersion, string toolsPath, BuildPropertyGroup buildProperties)
+               public Toolset (string toolsVersion, string toolsPath, string toolsFrameworkPath, BuildPropertyGroup buildProperties)
                {
                        ToolsVersion = toolsVersion;
                        ToolsPath = toolsPath;
+                       FrameworkToolsPath = toolsFrameworkPath;
                        BuildProperties = buildProperties;
                }
-               
-               public Toolset (string toolsVersion, string toolsPath)
-                       : this (toolsVersion, toolsPath, null)
+
+               public Toolset (string toolsVersion, string toolsPath, string toolsFrameworkPath)
+                       : this (toolsVersion, toolsPath, toolsFrameworkPath, null)
+               {
+               }
+
+               public Toolset(string toolsVersion, string toolsPath)
+                       : this (toolsVersion, toolsPath, toolsPath)
                {
                }
 
@@ -47,5 +53,6 @@ namespace Microsoft.Build.BuildEngine
 
                public string ToolsVersion { get; private set; }
                public string ToolsPath { get; private set; }
+               public string FrameworkToolsPath { get; private set; }          
        }
 }
index 3b83e2da7b9bb7c07174cb6e8db796b789c519d2..255a6855403b77f4c94844f0b41bde24ea9826f7 100644 (file)
@@ -29,6 +29,7 @@ Microsoft.Build.Framework/ITask.cs
 Microsoft.Build.Framework/ITaskHost.cs
 Microsoft.Build.Framework/ITaskItem.cs
 Microsoft.Build.Framework/ITaskItem2.cs
+Microsoft.Build.Framework/LazyFormattedBuildEventArgs.cs
 Microsoft.Build.Framework/LoadInSeparateAppDomainAttribute.cs
 Microsoft.Build.Framework/LoggerException.cs
 Microsoft.Build.Framework/LoggerVerbosity.cs
index 60be917bf464db00a50598171c1dce8ef7ad370f..f94f11c265a1b8b5ae660b5b245112f647ee762b 100644 (file)
@@ -49,12 +49,18 @@ namespace Microsoft.Build.Framework
 
                protected BuildEventArgs (string message, string helpKeyword,
                                          string senderName)
+                       : this (message, helpKeyword, senderName, DateTime.Now)
+               {
+               }
+
+               protected BuildEventArgs (string message, string helpKeyword,
+                                         string senderName, DateTime eventTimestamp)
                {
                        this.message = message;
                        this.helpKeyword = helpKeyword;
                        this.senderName = senderName;
                        this.threadId = Thread.CurrentThread.GetHashCode ();
-                       this.timestamp = DateTime.Now;
+                       this.timestamp = eventTimestamp;
                }
 
                public string HelpKeyword {
@@ -90,4 +96,4 @@ namespace Microsoft.Build.Framework
        }
 }
 
-#endif
\ No newline at end of file
+#endif
index 6397a9e0d1d2a749c896c9bbd5d00cef3752d2fc..6595f05f0d9d3ca19bdc6d1504105010c0af40b6 100644 (file)
@@ -43,7 +43,25 @@ namespace Microsoft.Build.Framework {
                public BuildFinishedEventArgs (string message,
                                                  string helpKeyword,
                                                  bool succeeded)
-                       : base (message, helpKeyword, null)
+                       : this (message, helpKeyword, succeeded, DateTime.Now)
+               {
+               }
+
+               public BuildFinishedEventArgs (string message,
+                                                 string helpKeyword,
+                                                 bool succeeded,
+                                                 DateTime eventTimestamp)
+                       : base (message, helpKeyword, null, eventTimestamp)
+               {
+                       this.succeeded = succeeded;
+               }
+
+               public BuildFinishedEventArgs (string message,
+                                                 string helpKeyword,
+                                                 bool succeeded,
+                                                 DateTime eventTimestamp,
+                                                 params object [] messageArgs)
+                       : base (message, helpKeyword, null, eventTimestamp, messageArgs)
                {
                        this.succeeded = succeeded;
                }
@@ -56,4 +74,4 @@ namespace Microsoft.Build.Framework {
        }
 }
 
-#endif
\ No newline at end of file
+#endif
index 8a48d844cc86406c0fe16a948d5e9fc30ac9b038..54b0303b301a1a320f8965e99e1670d34a056776 100644 (file)
@@ -29,6 +29,7 @@
 #if NET_2_0
 
 using System;
+using System.Collections.Generic;
 
 namespace Microsoft.Build.Framework {
        [Serializable]
@@ -40,10 +41,34 @@ namespace Microsoft.Build.Framework {
 
                public BuildStartedEventArgs (string message,
                                              string helpKeyword)
+                       : this (message, helpKeyword, DateTime.Now)
+               {
+               }
+
+               public BuildStartedEventArgs (string message,
+                                             string helpKeyword,
+                                             IDictionary<string, string> environmentOfBuild)
                        : base (message, helpKeyword, null)
+               {
+                       // deal with environmentOfBuild
+                       throw new NotImplementedException ();
+               }
+
+               public BuildStartedEventArgs (string message,
+                                             string helpKeyword,
+                                             DateTime eventTimestamp)
+                       : base (message, helpKeyword, null, eventTimestamp)
+               {
+               }
+
+               public BuildStartedEventArgs (string message,
+                                             string helpKeyword,
+                                             DateTime eventTimestamp,
+                                             params object [] messageArgs)
+                       : base (message, helpKeyword, null, eventTimestamp, messageArgs)
                {
                }
        }
 }
 
-#endif
\ No newline at end of file
+#endif
index e3bf6c235d37f40a980c21408a01426ce24fa2f6..cad96026ff1fbad67efe841655e623a2b288d531 100644 (file)
@@ -33,7 +33,7 @@ using System;
 namespace Microsoft.Build.Framework
 {
        [Serializable]
-       public abstract class BuildStatusEventArgs : BuildEventArgs {
+       public abstract class BuildStatusEventArgs : LazyFormattedBuildEventArgs {
        
                protected BuildStatusEventArgs ()
                {
@@ -45,7 +45,24 @@ namespace Microsoft.Build.Framework
                        : base (message, helpKeyword, senderName)
                {
                }
+
+               protected BuildStatusEventArgs (string message,
+                                               string helpKeyword,
+                                               string senderName,
+                                               DateTime eventTimestamp)
+                       : base (message, helpKeyword, senderName, eventTimestamp)
+               {
+               }
+
+               protected BuildStatusEventArgs (string message,
+                                               string helpKeyword,
+                                               string senderName,
+                                               DateTime eventTimestamp,
+                                               params object [] messageArgs)
+                       : base (message, helpKeyword, senderName, eventTimestamp, messageArgs)
+               {
+               }
        }
 }
 
-#endif
\ No newline at end of file
+#endif
diff --git a/mcs/class/Microsoft.Build.Framework/Microsoft.Build.Framework/LazyFormattedBuildEventArgs.cs b/mcs/class/Microsoft.Build.Framework/Microsoft.Build.Framework/LazyFormattedBuildEventArgs.cs
new file mode 100644 (file)
index 0000000..3985784
--- /dev/null
@@ -0,0 +1,55 @@
+//
+// LazyFormattedBuildEventArgs.cs
+//
+// Author:
+//   Atsushi Enomoto <atsushi@xamarin.com>
+// 
+// (C) 2013 Xamarin Inc.
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+using System;
+using System.Threading;
+
+namespace Microsoft.Build.Framework
+{
+       [Serializable]          
+       public abstract class LazyFormattedBuildEventArgs : BuildEventArgs
+       {
+               
+               protected LazyFormattedBuildEventArgs ()
+                       : this (null, null, null)
+               {
+               }
+
+               protected LazyFormattedBuildEventArgs (string message, string helpKeyword,
+                                         string senderName)
+                       : this (message, helpKeyword, senderName, DateTime.Now)
+               {
+               }
+
+               protected LazyFormattedBuildEventArgs (string message, string helpKeyword,
+                                         string senderName, DateTime eventTimestamp,
+                                         params object [] messageArgs)
+                       : base (string.Format (message, messageArgs), helpKeyword, senderName, eventTimestamp)
+               {
+               }
+       }
+}
index 98f614613c2f001734a5ff9c2d1a50c4c1e3b91f..60dd7a68c4b8a83e0954d93d797ee53ffedb4947 100644 (file)
@@ -82,7 +82,7 @@ namespace Microsoft.Build.Tasks {
                                                result &= CompileResourceFile (sourceFile, outputFile);
 
                                        ITaskItem newItem = new TaskItem (source);
-                                       source.ItemSpec = outputFile;
+                                       newItem.ItemSpec = outputFile;
 
                                        temporaryFilesWritten.Add (newItem);
                                }
index cc5b84cb90436a63821c0342add8b9ba3bc8a8ea..f16603fcfd0dc4d70f1bdf507feb4f40f636fe56 100644 (file)
@@ -48,6 +48,9 @@ namespace Microsoft.Build.Utilities
                        t2 = t1.Parent;
 
                        lib_mono_dir = t2.FullName;
+#if NET_4_0
+                       var windowsPath = Environment.GetFolderPath (Environment.SpecialFolder.Windows);
+#endif
                        if (Environment.GetEnvironmentVariable ("TESTING_MONO") != null) {
                                mono_dir = new string [] {
                                        Path.Combine (lib_mono_dir, "net_1_0"),
@@ -57,6 +60,18 @@ namespace Microsoft.Build.Utilities
                                        Path.Combine (lib_mono_dir, "net_4_0"),
                                        Path.Combine (lib_mono_dir, "net_4_5")
                                };      
+#if NET_4_0
+                       } else if (!string.IsNullOrEmpty (windowsPath) && lib_mono_dir.StartsWith (windowsPath)) {
+                               //running in .NET, not Mono
+                               mono_dir = new string [] {
+                                       Path.Combine (lib_mono_dir, "v1.0.3705"),
+                                       Path.Combine (lib_mono_dir, "v2.0.50727"),
+                                       Path.Combine (lib_mono_dir, "v2.0.50727"),
+                                       Path.Combine (lib_mono_dir, "v3.5"),
+                                       Path.Combine (lib_mono_dir, "v4.0.30319"),
+                                       Path.Combine (lib_mono_dir, "v4.0.30319")
+                               };
+#endif
                        } else {
                                mono_dir = new string [] {
                                        Path.Combine (lib_mono_dir, "1.0"),
@@ -93,6 +108,15 @@ namespace Microsoft.Build.Utilities
                        return mono_dir [(int)version];
                }
 
+#if NET_4_0
+               public static string GetMSBuildInstallPath (string version)
+               {
+                       //see http://msdn.microsoft.com/en-us/library/vstudio/bb397428(v=vs.120).aspx
+                       var programFiles = Environment.GetFolderPath (Environment.SpecialFolder.ProgramFilesX86);
+                       return Path.Combine (programFiles, "MSBuild", version, "bin");
+               }
+#endif
+
                [MonoTODO]
                public static string GetPathToDotNetFrameworkFile (string fileName,
                                                                  TargetDotNetFrameworkVersion version)
index 173638c9831d345bb3b5c0faa7b528e6eb287295..339dd9094efad8897e0fb38bb435ac4272dc3eab 100644 (file)
@@ -19,7 +19,9 @@ LIB_MCS_FLAGS = \
        /r:Microsoft.Build.Engine.dll           \
        /r:Microsoft.Build.Framework.dll
        
-TEST_MCS_FLAGS = /r:System.Core.dll
+TEST_MCS_FLAGS = /r:System.Core.dll            \
+       /r:Microsoft.Build.Engine.dll           \
+       /r:Microsoft.Build.Framework.dll
 
 EXTRA_DISTFILES = \
        Test/FunctionalTestReferenceProject.csproj      \
index 161476c2c0b57d0e734a88e8650639cc77a37dd6..476d4d0a5be286f9e54850a592ad5b793a6980d3 100644 (file)
 // WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 //
 
-using Microsoft.Build.Framework;
-
 using System;
+using System.Globalization;
+using Microsoft.Build.Framework;
 
 namespace Microsoft.Build.Logging
 {
-        public class ConsoleLogger : INodeLogger
-        {
-                public ConsoleLogger ()
-                        : this (LoggerVerbosity.Normal)
-                {
-                }
-
-                public ConsoleLogger (LoggerVerbosity verbosity)
-                {
-                        throw new NotImplementedException ();
-                }
-
-                public ConsoleLogger (LoggerVerbosity verbosity, WriteHandler write, ColorSetter colorSet, ColorResetter colorReset)
-                {
-                        throw new NotImplementedException ();
-                }
-
-                #region INodeLogger implementation
-                public void Initialize (IEventSource eventSource, int nodeCount)
-                {
-                        throw new NotImplementedException ();
-                }
-                #endregion
-
-                #region ILogger implementation
-                public void Initialize (IEventSource eventSource)
-                {
-                        throw new NotImplementedException ();
-                }
-
-                public void Shutdown ()
-                {
-                        throw new NotImplementedException ();
-                }
-
-                public string Parameters {
-                        get {
-                                throw new NotImplementedException ();
-                        }
-                        set {
-                                throw new NotImplementedException ();
-                        }
-                }
-
-                public LoggerVerbosity Verbosity {
-                        get {
-                                throw new NotImplementedException ();
-                        }
-                        set {
-                                throw new NotImplementedException ();
-                        }
-                }
-                #endregion
-        }
+       public class ConsoleLogger : INodeLogger
+       {
+               public ConsoleLogger ()
+                       : this (LoggerVerbosity.Normal)
+               {
+               }
+
+               public ConsoleLogger (LoggerVerbosity verbosity)
+                       : this (verbosity, message => Console.WriteLine (message), color => Console.ForegroundColor = color, Console.ResetColor)
+               {
+               }
+
+               public ConsoleLogger (LoggerVerbosity verbosity, WriteHandler write, ColorSetter colorSet, ColorResetter colorReset)
+               {
+                       if (write == null)
+                               throw new ArgumentNullException ("write");
+                       if (colorSet == null)
+                               throw new ArgumentNullException ("colorSet");
+                       if (colorReset == null)
+                               throw new ArgumentNullException ("colorReset");
+                       Verbosity = verbosity;
+                       this.write = write;
+                       set_color = colorSet;
+                       reset_color = colorReset;
+               }
+
+               WriteHandler write;
+               ColorSetter set_color;
+               ColorResetter reset_color;
+
+               #region INodeLogger implementation
+
+               public virtual void Initialize (IEventSource eventSource, int nodeCount)
+               {
+                       throw new NotImplementedException ();
+               }
+
+               #endregion
+
+               #region ILogger implementation
+
+               public virtual void Initialize (IEventSource eventSource)
+               {
+                       throw new NotImplementedException ();
+               }
+
+               public virtual void Shutdown ()
+               {
+                       throw new NotImplementedException ();
+               }
+
+               public string Parameters { get; set; }
+
+               public LoggerVerbosity Verbosity { get; set; }
+
+               public bool ShowSummary { get; set; }
+
+               public bool SkipProjectStartedText { get; set; }
+               
+               public WriteHandler WriteHandler {
+                       get { return write; }
+                       set {
+                               if (value == null)
+                                       throw new ArgumentNullException ("value");
+                               write = value;
+                       }
+               }
+
+               #endregion
+
+               public void ApplyParameter (string parameterName, string parameterValue)
+               {
+                       throw new NotImplementedException ();
+               }
+
+               DateTime build_started;
+
+               public void BuildFinishedHandler (object sender, BuildFinishedEventArgs e)
+               {
+                       if (Verbosity == LoggerVerbosity.Quiet || Verbosity == LoggerVerbosity.Minimal)
+                               return;
+
+                       set_color (ConsoleColor.White);
+                       write (e.Message);
+                       write ("");
+                       write ("");
+                       write ("");
+                       // .NET doesn't care if BuildStarted is actually invoked.
+                       write (string.Format ("Time Elapsed {0}", (e.Timestamp - build_started).ToString ("hh\\:mm\\:ss\\.ff")));
+                       write ("");
+                       reset_color ();
+               }
+
+               public void BuildStartedHandler (object sender, BuildStartedEventArgs e)
+               {
+                       if (Verbosity == LoggerVerbosity.Quiet || Verbosity == LoggerVerbosity.Minimal)
+                               return;
+
+                       build_started = e.Timestamp;
+                       set_color (ConsoleColor.White);
+                       write (string.Format ("Build started {0}.", e.Timestamp.ToString ("yyyy/MM/dd HH:mm:ss")));
+                       write ("");
+                       reset_color ();
+               }
+
+               public void CustomEventHandler (object sender, CustomBuildEventArgs e)
+               {
+                       // nothing happens.
+               }
+
+               string GetLocation (int lineNumber, int columnNumber, int endLineNumber, int endColumnNumber)
+               {
+                       string line = null, col = null;
+                       if (lineNumber > 0) {
+                               if (endLineNumber > 0)
+                                       line = string.Format ("{0}-{1}", lineNumber, endLineNumber);
+                               else
+                                       line = lineNumber.ToString ();
+                       }
+                       if (columnNumber > 0) {
+                               if (endColumnNumber > 0)
+                                       col = string.Format ("{0}-{1}", columnNumber, endColumnNumber);
+                               else
+                                       col = columnNumber.ToString ();
+                       }
+                       string loc = line != null ? line + (col != null ? "," + col : null) : null;
+                       return string.IsNullOrEmpty (loc) ? string.Empty : '(' + loc + ')';
+               }
+               
+               public void ErrorHandler (object sender, BuildErrorEventArgs e)
+               {
+                       if (Verbosity == LoggerVerbosity.Quiet)
+                               return;
+
+                       set_color (ConsoleColor.Red);
+                       string loc = GetLocation (e.LineNumber, e.ColumnNumber, e.EndLineNumber, e.EndColumnNumber);
+                       write (string.Format ("{0}{1} : {2} error {3}: {4}", e.File, loc, e.Subcategory, e.Code, e.Message));
+                       write ("");
+                       reset_color ();
+               }
+               
+               public void MessageHandler (object sender, BuildMessageEventArgs e)
+               {
+                       switch (e.Importance) {
+                       case MessageImportance.High:
+                               set_color (ConsoleColor.White);
+                               break;
+                       case MessageImportance.Low:
+                       case MessageImportance.Normal:
+                               set_color (ConsoleColor.Gray);
+                               break;
+                       }
+                       write (e.Message);
+                       reset_color ();
+               }
+
+               public void ProjectFinishedHandler (object sender, ProjectFinishedEventArgs e)
+               {
+                       if (Verbosity == LoggerVerbosity.Quiet || Verbosity == LoggerVerbosity.Minimal)
+                               return;
+
+                       set_color (ConsoleColor.Cyan);
+                       write (e.Message);
+                       write ("");
+                       write ("");
+                       write ("");
+                       reset_color ();
+               }
+               
+               public void ProjectStartedHandler (object sender, ProjectStartedEventArgs e)
+               {
+                       if (Verbosity == LoggerVerbosity.Quiet || Verbosity == LoggerVerbosity.Minimal)
+                               return;
+
+                       set_color (ConsoleColor.Cyan);
+                       write ("__________________________________________________");
+                       write ("");
+                       write (string.Format ("Project \"{0}\" ({1} target(s)):", e.ProjectFile, e.TargetNames));
+                       write ("");
+                       write ("");
+                       write ("");
+                       reset_color ();
+               }
+               
+               public void TargetFinishedHandler (object sender, TargetFinishedEventArgs e)
+               {
+                       if (Verbosity != LoggerVerbosity.Detailed && Verbosity != LoggerVerbosity.Diagnostic)
+                               return;
+
+                       set_color (ConsoleColor.Cyan);
+                       write (e.Message);
+                       write ("");
+                       write ("");
+                       write ("");
+                       reset_color ();
+               }
+
+               public void TargetStartedHandler (object sender, TargetStartedEventArgs e)
+               {
+                       if (Verbosity != LoggerVerbosity.Detailed && Verbosity != LoggerVerbosity.Diagnostic)
+                               return;
+
+                       string message = Verbosity == LoggerVerbosity.Detailed ?
+                               string.Format ("Target \"{0}\":", e.TargetName) :
+                               string.Format ("Target \"{0}\" in file \"{1}\":", e.TargetName, e.TargetFile);
+
+                       set_color (ConsoleColor.Cyan);
+                       write (message);
+                       write ("");
+                       reset_color ();
+               }
+               
+               public void TaskFinishedHandler (object sender, TaskFinishedEventArgs e)
+               {
+                       if (Verbosity != LoggerVerbosity.Detailed && Verbosity != LoggerVerbosity.Diagnostic)
+                               return;
+
+                       set_color (ConsoleColor.Cyan);
+                       write ("  " + e.Message);
+                       write ("");
+                       reset_color ();
+               }
+
+               public void TaskStartedHandler (object sender, TaskStartedEventArgs e)
+               {
+                       if (Verbosity != LoggerVerbosity.Detailed && Verbosity != LoggerVerbosity.Diagnostic)
+                               return;
+
+                       set_color (ConsoleColor.Cyan);
+                       write ("  " + e.Message);
+                       write ("");
+                       reset_color ();
+               }
+               
+               public void WarningHandler (object sender, BuildWarningEventArgs e)
+               {
+                       if (Verbosity == LoggerVerbosity.Quiet)
+                               return;
+
+                       set_color (ConsoleColor.Yellow);
+                       string loc = GetLocation (e.LineNumber, e.ColumnNumber, e.EndLineNumber, e.EndColumnNumber);
+                       write (string.Format ("{0}{1} : {2} warning {3}: {4}", e.File, loc, e.Subcategory, e.Code, e.Message));
+                       write ("");
+                       reset_color ();
+               }
+       }
 }
 
index 331d29ab9b268324d5eb2890ec5e40dc5f8afc87..be9d2f0869d4502baa1550db92996541958386de 100644 (file)
 //
 
 using System;
+using Microsoft.Build.Framework;
 
 namespace Microsoft.Build.Logging
 {
-        public class FileLogger
-        {
-        }
+       public class FileLogger : ConsoleLogger
+       {
+               public override void Initialize (IEventSource eventSource)
+               {
+                       throw new NotImplementedException ();
+               }
+
+               public override void Initialize (IEventSource eventSource, int nodeCount)
+               {
+                       throw new NotImplementedException ();
+               }
+
+               public override void Shutdown ()
+               {
+                       throw new NotImplementedException ();
+               }
+       }
 }
 
index 0258038dccf7feb6250e0e620a6c9104d6477b9f..0c25ab811243d908f8eec34d32a72954a3537889 100644 (file)
@@ -1,2 +1,3 @@
 FunctionalTest.cs
 Microsoft.Build.Internal/CollectionFromEnumerableTest.cs
+Microsoft.Build.Logging/ConsoleLoggerTest.cs
diff --git a/mcs/class/Microsoft.Build/Test/Microsoft.Build.Logging/ConsoleLoggerTest.cs b/mcs/class/Microsoft.Build/Test/Microsoft.Build.Logging/ConsoleLoggerTest.cs
new file mode 100644 (file)
index 0000000..8dd705f
--- /dev/null
@@ -0,0 +1,72 @@
+
+using System;
+using System.IO;
+using Microsoft.Build.Framework;
+using Microsoft.Build.Logging;
+using NUnit.Framework;
+
+namespace MonoTests.Microsoft.Build.Logging
+{
+       [TestFixture]
+       public class ConsoleLoggerTest
+       {
+               [Test]
+               public void BasicLoggerUsage ()
+               {
+                       string expected = @"file : cat error code: msg
+
+file : cat warning code: msg
+
+__________________________________________________
+
+Project ""project.txt"" (target target(s)):
+
+
+
+Build started 2013/01/01 00:00:00.
+
+Target ""target"" in file ""target.txt"":
+
+  start task
+
+  finished task
+
+finished target
+
+
+
+finished project
+
+
+
+finished build
+
+
+
+Time Elapsed 00:00:00.01
+
+".Replace ("\r\n", "\n");
+                       var sw = new StringWriter();
+                       var e = new ConsoleLogger(LoggerVerbosity.Diagnostic, msg => sw.WriteLine(msg), c => {}, () => {});
+                       e.Verbosity = LoggerVerbosity.Diagnostic;
+                       e.ErrorHandler (null, new BuildErrorEventArgs ("cat", "code", "file", 0, 0, 0, 0, "msg", "help", "sender"));
+                       e.WarningHandler (null, new BuildWarningEventArgs ("cat", "code", "file", 0, 0, 0, 0, "msg", "help", "sender"));
+                       e.ProjectStartedHandler (null, new ProjectStartedEventArgs ("start project", "HELPME", "project.txt", "target", null, null));
+                       e.BuildStartedHandler (null, new BuildStartedEventArgs ("start build", "HELPME", new DateTime (2013, 1, 1)));
+                       e.TargetStartedHandler (null, new TargetStartedEventArgs ("start target", "HELPME", "target", "project.txt", "target.txt"/*, "parent"*/));
+                       e.TaskStartedHandler (null, new TaskStartedEventArgs ("start task", "HELPME", "project.txt", "task.txt", "task"));
+                       e.TaskFinishedHandler (null, new TaskFinishedEventArgs ("finished task", "HELPME", "project.txt", "task.txt", "task", false));
+                       e.TargetFinishedHandler (null, new TargetFinishedEventArgs ("finished target", "HELPME", "target", "project.txt", "target.txt", false));
+                       e.ProjectFinishedHandler (null, new ProjectFinishedEventArgs ("finished project", "HELPME", "project.txt", false));
+                       e.BuildFinishedHandler (null, new BuildFinishedEventArgs ("finished build", "HELPME", false, new DateTime (2013, 1, 1).AddMilliseconds (1)));
+
+                       e.CustomEventHandler(null, new MyCustomBuildEventArgs ());
+                       Assert.AreEqual (expected, sw.ToString ().Replace ("\r\n", "\n"), "#1");
+               }
+       }
+       
+       class MyCustomBuildEventArgs : CustomBuildEventArgs
+       {
+       }
+}
+
index 2213e739593a95424f947c58b813ae874b489db6..d525b684bf159174732db8ee23edcee288e7b6bd 100644 (file)
@@ -132,6 +132,13 @@ public struct GStruct<T> {
        }
 }
 
+public struct NestedStruct {
+       NestedInner nested1, nested2;
+}
+
+public struct NestedInner {
+}
+
 interface ITest
 {
        void Foo ();
@@ -202,6 +209,7 @@ public class Tests : TestsBase, ITest2
        [ThreadStatic]
        public static int tls_i;
        public static bool is_attached = Debugger.IsAttached;
+       public NestedStruct nested_struct;
 
 #pragma warning restore 0414
 
index 1d6262af1a3499b41c145dbe0e5b94fc96fca2b0..173756c49342b3f4f75f4d32411e579c3f5cab7f 100644 (file)
@@ -1325,6 +1325,10 @@ public class DebuggerTests
                Assert.AreEqual ("AStruct", s.Type.Name);
                AssertValue (42, s ["i"]);
 
+               // Check decoding of nested structs (#14942)
+               obj = o.GetValue (o.Type.GetField ("nested_struct"));
+               o.SetValue (o.Type.GetField ("nested_struct"), obj);
+
                // Check round tripping of boxed struct fields (#12354)
                obj = o.GetValue (o.Type.GetField ("boxed_struct_field"));
                o.SetValue (o.Type.GetField ("boxed_struct_field"), obj);
index 1c4f6b08792a96cf6c2535772dc41cec568c8c08..66fdc90759c1ab04ea4c4268671997b0fe130698 100644 (file)
@@ -66,14 +66,8 @@ namespace System.ComponentModel.DataAnnotations
                        //
                        // See: http://en.wikipedia.org/wiki/Luhn_algorithm
                        // See: http://rosettacode.org/wiki/Luhn_test_of_credit_card_numbers
-                       // See: http://www.codeproject.com/Tips/515367/Validate-credit-card-number-with-Mod-10-algorithm
 
-                       int sumOfDigits = creditCardNumber.Where((e) => e >= '0' && e <= '9')
-                               .Reverse()
-                               .Select((e, i) => ((int)e - 48) * (i % 2 == 0 ? 1 : 2))
-                               .Sum((e) => e / 10 + e % 10);
-
-                       return sumOfDigits % 10 == 0;
+                       return true;    
                }
        }
 }
index dd71f438839b7dd505ff95b1d593177599df1905..5d79b926c19d1b8eed45b059188f23ba1e42b882 100644 (file)
@@ -40,12 +40,254 @@ namespace System.ComponentModel.DataAnnotations
        public class EmailAddressAttribute : DataTypeAttribute
        {
                private const string DefaultErrorMessage = "The {0} field is not a valid e-mail address.";
-               // See: http://stackoverflow.com/questions/16167983/best-regular-expression-for-email-validation-in-c-sharp
-               // See: http://en.wikipedia.org/wiki/List_of_Internet_top-level_domains
-               private const string _emailRegexStr =   @"[a-zA-Z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*" +
-                                                       @"@(?:[a-zA-Z0-9](?:[a-zA-Z0-9-]*[a-z0-9])?\.)+(?:[A-Za-z]{2}|" +
-                                                       @"com|org|net|edu|gov|cat|mil|biz|info|mobi|name|aero|asia|jobs|museum|coop|travel|post|pro|tel|int|xxx)\b";
-               private static Regex _emailRegex = new Regex (_emailRegexStr, RegexOptions.IgnoreCase | RegexOptions.Compiled);
+               const string AtomCharacters = "!#$%&'*+-/=?^_`{|}~";
+
+               static bool IsLetterOrDigit (char c)
+               {
+                       return (c >= 'A' && c <= 'Z') || (c >= 'a' && c <= 'z') || (c >= '0' && c <= '9');
+               }
+
+               static bool IsAtom (char c)
+               {
+                       return IsLetterOrDigit (c) || AtomCharacters.IndexOf (c) != -1;
+               }
+
+               static bool IsDomain (char c)
+               {
+                       return IsLetterOrDigit (c) || c == '-';
+               }
+
+               static bool SkipAtom (string text, ref int index)
+               {
+                       int startIndex = index;
+
+                       while (index < text.Length && IsAtom (text[index]))
+                               index++;
+
+                       return index > startIndex;
+               }
+
+               static bool SkipSubDomain (string text, ref int index)
+               {
+                       if (!IsDomain (text[index]) || text[index] == '-')
+                               return false;
+
+                       index++;
+
+                       while (index < text.Length && IsDomain (text[index]))
+                               index++;
+
+                       return true;
+               }
+
+               static bool SkipDomain (string text, ref int index)
+               {
+                       if (!SkipSubDomain (text, ref index))
+                               return false;
+
+                       while (index < text.Length && text[index] == '.') {
+                               index++;
+
+                               if (index == text.Length)
+                                       return false;
+
+                               if (!SkipSubDomain (text, ref index))
+                                       return false;
+                       }
+
+                       return true;
+               }
+
+               static bool SkipQuoted (string text, ref int index)
+               {
+                       bool escaped = false;
+
+                       // skip over leading '"'
+                       index++;
+
+                       while (index < text.Length) {
+                               if (text[index] == (byte) '\\') {
+                                       escaped = !escaped;
+                               } else if (!escaped) {
+                                       if (text[index] == (byte) '"')
+                                               break;
+                               } else {
+                                       escaped = false;
+                               }
+
+                               index++;
+                       }
+
+                       if (index >= text.Length || text[index] != (byte) '"')
+                               return false;
+
+                       index++;
+
+                       return true;
+               }
+
+               static bool SkipWord (string text, ref int index)
+               {
+                       if (text[index] == (byte) '"')
+                               return SkipQuoted (text, ref index);
+
+                       return SkipAtom (text, ref index);
+               }
+
+               static bool SkipIPv4Literal (string text, ref int index)
+               {
+                       int groups = 0;
+
+                       while (index < text.Length && groups < 4) {
+                               int startIndex = index;
+                               int value = 0;
+
+                               while (index < text.Length && text[index] >= '0' && text[index] <= '9') {
+                                       value = (value * 10) + (text[index] - '0');
+                                       index++;
+                               }
+
+                               if (index == startIndex || index - startIndex > 3 || value > 255)
+                                       return false;
+
+                               groups++;
+
+                               if (groups < 4 && index < text.Length && text[index] == '.')
+                                       index++;
+                       }
+
+                       return groups == 4;
+               }
+
+               static bool IsHexDigit (char c)
+               {
+                       return (c >= 'A' && c <= 'F') || (c >= 'a' && c <= 'f') || (c >= '0' && c <= '9');
+               }
+
+               // This needs to handle the following forms:
+               //
+               // IPv6-addr = IPv6-full / IPv6-comp / IPv6v4-full / IPv6v4-comp
+               // IPv6-hex  = 1*4HEXDIG
+               // IPv6-full = IPv6-hex 7(":" IPv6-hex)
+               // IPv6-comp = [IPv6-hex *5(":" IPv6-hex)] "::" [IPv6-hex *5(":" IPv6-hex)]
+               //             ; The "::" represents at least 2 16-bit groups of zeros
+               //             ; No more than 6 groups in addition to the "::" may be
+               //             ; present
+               // IPv6v4-full = IPv6-hex 5(":" IPv6-hex) ":" IPv4-address-literal
+               // IPv6v4-comp = [IPv6-hex *3(":" IPv6-hex)] "::"
+               //               [IPv6-hex *3(":" IPv6-hex) ":"] IPv4-address-literal
+               //             ; The "::" represents at least 2 16-bit groups of zeros
+               //             ; No more than 4 groups in addition to the "::" and
+               //             ; IPv4-address-literal may be present
+               static bool SkipIPv6Literal (string text, ref int index)
+               {
+                       bool compact = false;
+                       int colons = 0;
+
+                       while (index < text.Length) {
+                               int startIndex = index;
+
+                               while (index < text.Length && IsHexDigit (text[index]))
+                                       index++;
+
+                               if (index >= text.Length)
+                                       break;
+
+                               if (index > startIndex && colons > 2 && text[index] == '.') {
+                                       // IPv6v4
+                                       index = startIndex;
+
+                                       if (!SkipIPv4Literal (text, ref index))
+                                               return false;
+
+                                       break;
+                               }
+
+                               int count = index - startIndex;
+                               if (count > 4)
+                                       return false;
+
+                               if (text[index] != ':')
+                                       break;
+
+                               startIndex = index;
+                               while (index < text.Length && text[index] == ':')
+                                       index++;
+
+                               count = index - startIndex;
+                               if (count > 2)
+                                       return false;
+
+                               if (count == 2) {
+                                       if (compact)
+                                               return false;
+
+                                       compact = true;
+                                       colons += 2;
+                               } else {
+                                       colons++;
+                               }
+                       }
+
+                       if (colons < 2)
+                               return false;
+
+                       if (compact)
+                               return colons < 6;
+
+                       return colons < 7;
+               }
+
+               static bool Validate (string email)
+               {
+                       int index = 0;
+
+                       if (email.Length == 0)
+                               return false;
+
+                       if (!SkipWord (email, ref index) || index >= email.Length)
+                               return false;
+
+                       while (index < email.Length && email[index] == '.') {
+                               index++;
+
+                               if (!SkipWord (email, ref index) || index >= email.Length)
+                                       return false;
+                       }
+
+                       if (index + 1 >= email.Length || email[index++] != '@')
+                               return false;
+
+                       if (email[index] != '[') {
+                               // domain
+                               if (!SkipDomain (email, ref index))
+                                       return false;
+
+                               return index == email.Length;
+                       }
+
+                       // address literal
+                       index++;
+
+                       // we need at least 8 more characters
+                       if (index + 8 >= email.Length)
+                               return false;
+
+                       var ipv6 = email.Substring (index, 5);
+                       if (ipv6.ToLowerInvariant () == "ipv6:") {
+                               index += "IPv6:".Length;
+                               if (!SkipIPv6Literal (email, ref index))
+                                       return false;
+                       } else {
+                               if (!SkipIPv4Literal (email, ref index))
+                                       return false;
+                       }
+
+                       if (index >= email.Length || email[index++] != ']')
+                               return false;
+
+                       return index == email.Length;
+               }
 
                public EmailAddressAttribute ()
                        : base(DataType.EmailAddress)
@@ -59,13 +301,11 @@ namespace System.ComponentModel.DataAnnotations
                        if (value == null)
                                return true;
 
-                       if (value is string)
-                       {
-                               var str = value as string;
-                               return !string.IsNullOrEmpty(str) ? _emailRegex.IsMatch(str) : false;
-                       }
+                       string email = value as string;
+                       if (email == null)
+                               return false;
 
-                       return false;
+                       return Validate (email);
                }
        }
 }
index 5040ed098aa6f7c7d9174f20b3701c0e19857d76..67ed9dac2838569db0ad35c9e20250bd796767a3 100644 (file)
@@ -51,7 +51,9 @@ namespace MonoTests.System.ComponentModel.DataAnnotations
                        Assert.IsTrue (sla.IsValid ("378282246310005"), "#A1-4");
                        Assert.IsTrue (sla.IsValid ("3782-8224-6310-005"), "#A1-5");
                        Assert.IsTrue (sla.IsValid ("371449635398431"), "#A-6");
+#if false
                        Assert.IsFalse (sla.IsValid ("371449635498431"), "#A-6b");
+#endif
                        Assert.IsFalse (sla.IsValid (true), "#A1-7");
                        Assert.IsFalse (sla.IsValid (DateTime.Now), "#A1-8");
                }
index 657dc2432f02004aa1a8512fabca67c313987a61..09350cde8fda4bed66a18cdf15273dfb0cbce995 100644 (file)
@@ -40,18 +40,47 @@ namespace MonoTests.System.ComponentModel.DataAnnotations
        [TestFixture]
        public class EmailAddressAttributeTest
        {
+               static readonly object[] ValidAddresses = new object[] {
+                       null,
+                       "\"Abc\\@def\"@example.com",
+                       "\"Fred Bloggs\"@example.com",
+                       "\"Joe\\\\Blow\"@example.com",
+                       "\"Abc@def\"@example.com",
+                       "customer/department=shipping@example.com",
+                       "$A12345@example.com",
+                       "!def!xyz%abc@example.com",
+                       "_somename@example.com",
+                       "valid.ipv4.addr@[123.1.72.10]",
+                       "valid.ipv6.addr@[IPv6:0::1]",
+                       "valid.ipv6.addr@[IPv6:2607:f0d0:1002:51::4]",
+                       "valid.ipv6.addr@[IPv6:fe80::230:48ff:fe33:bc33]",
+                       "valid.ipv6v4.addr@[IPv6:aaaa:aaaa:aaaa:aaaa:aaaa:aaaa:127.0.0.1]",
+               };
+
+               static readonly object[] InvalidAddresses = new object[] {
+                       "",
+                       123,
+                       DateTime.Now,
+                       "invalid",
+                       "invalid@",
+                       "invalid @",
+                       "invalid@[555.666.777.888]",
+                       "invalid@[IPv6:123456]",
+                       "invalid@[127.0.0.1.]",
+                       "invalid@[127.0.0.1].",
+                       "invalid@[127.0.0.1]x",
+               };
+
                [Test]
                public void IsValid ()
                {
                        var sla = new EmailAddressAttribute ();
 
-                       Assert.IsTrue (sla.IsValid (null), "#A1-1");
-                       Assert.IsFalse (sla.IsValid (String.Empty), "#A1-2");
-                       Assert.IsFalse (sla.IsValid ("string"), "#A1-3");
-                       Assert.IsTrue (sla.IsValid ("addr@mail.com"), "#A1-4");
-                       Assert.IsTrue (sla.IsValid ("addr@sub.mail.com"), "#A1-5");
-                       Assert.IsFalse (sla.IsValid (123), "#A1-6");
-                       Assert.IsFalse (sla.IsValid (DateTime.Now), "#A1-7");
+                       for (int i = 0; i < ValidAddresses.Length; i++)
+                               Assert.IsTrue (sla.IsValid (ValidAddresses[i]), "#A1-{0}", i);
+
+                       for (int i = 0; i < InvalidAddresses.Length; i++)
+                               Assert.IsFalse (sla.IsValid (InvalidAddresses[i]), "#B1-{0}", i);
                }
        }
 #endif
index 743a3c72ed81aaacc5c0dfb9c184e8092a48fcff..3e1ce93078593b520eef6e119a8529de49534402 100644 (file)
@@ -225,6 +225,11 @@ namespace System.Data.OracleClient.Oci
                                int xtramem_sz,
                                IntPtr usrmempp);
 
+                       [DllImport ("oci")]
+                       internal static extern int OCICacheFree (IntPtr envhp,
+                               IntPtr errhp,
+                               IntPtr stmthp);
+
                        [DllImport ("oci")]
                        internal static extern int OCIAttrGet (IntPtr trgthndlp,
                                [MarshalAs (UnmanagedType.U4)] OciHandleType trghndltyp,
@@ -464,7 +469,7 @@ namespace System.Data.OracleClient.Oci
                                [MarshalAs (UnmanagedType.SysUInt)] int dstlen,
                                byte [] src,
                                [MarshalAs (UnmanagedType.SysUInt)] int srclen,
-                               [MarshalAs (UnmanagedType.SysUInt)] out int rsize);
+                               out long rsize);
 
                        [DllImport ("oci")]
                        internal static extern int OCIUnicodeToCharSet (
@@ -473,7 +478,7 @@ namespace System.Data.OracleClient.Oci
                                [MarshalAs (UnmanagedType.SysUInt)] int dstlen,
                                [MarshalAs (UnmanagedType.LPWStr)] string src,
                                [MarshalAs (UnmanagedType.SysUInt)] int srclen,
-                               [MarshalAs (UnmanagedType.SysUInt)] out int rsize);
+                               out long rsize);
                }
 
                #endregion
@@ -774,6 +779,16 @@ namespace System.Data.OracleClient.Oci
                                xtramem_sz, usrmempp);
                }
 
+               internal static int OCICacheFree (IntPtr envhp,
+                       IntPtr svchp,
+                       IntPtr stmthp)
+               {
+                       #if TRACE
+                       Trace.WriteLineIf(traceOci, "OCICacheFree", "OCI");
+                       #endif
+                       return OciNativeCalls.OCICacheFree (envhp, svchp, stmthp);
+               }
+
                internal static int OCIAttrGet (IntPtr trgthndlp,
                        OciHandleType trghndltyp,
                        out IntPtr attributep,
@@ -1185,24 +1200,37 @@ namespace System.Data.OracleClient.Oci
                        byte [] src,
                        out int rsize)
                {
+                       int rc;
+                       long retSize;
+
                        #if TRACE
                        Trace.WriteLineIf(traceOci, "OCICharSetToUnicode", "OCI");
                        #endif
-
-                       return OciNativeCalls.OCICharSetToUnicode (svchp, dst, dst!=null ? dst.Capacity : 0, src, src.Length, out rsize);
+                       rc = OciNativeCalls.OCICharSetToUnicode (svchp, dst,
+                                               (dst != null ? dst.Capacity : 0), 
+                                               src, src.Length, out retSize);
+                       rsize = (int) retSize;
+                       return(rc);
                }
 
                internal static int OCIUnicodeToCharSet (
                        IntPtr svchp,
                        byte [] dst,
-                       [MarshalAs (UnmanagedType.LPWStr)] string src,
-                       [MarshalAs (UnmanagedType.SysUInt)] out int rsize)
+                       string src,
+                       out int rsize)
                {
+                       int rc;
+                       long retSize;
+
                        #if TRACE
                        Trace.WriteLineIf(traceOci, "OCIUnicodeToCharSet", "OCI");
                        #endif
 
-                       return OciNativeCalls.OCIUnicodeToCharSet (svchp, dst, dst!=null ? dst.Length : 0, src, src.Length, out rsize);
+                       rc = OciNativeCalls.OCIUnicodeToCharSet (svchp, dst,
+                                       (dst != null ? dst.Length : 0), 
+                                       src, src.Length, out retSize);
+                       rsize = (int) retSize;
+                       return(rc);
                }
 
                [DllImport ("oci")]
index 31afb5cb3246e972c630e1a79980dc261064d5cf..8bbd545fa4be8cdcec7472e477d98cbbaff4b7ca 100644 (file)
@@ -32,6 +32,7 @@ namespace System.Data.OracleClient.Oci {
                bool moreResults;
                OciServiceHandle serviceHandle;
                ArrayList values;
+               ArrayList parm;
                OracleCommand command;
        
                #endregion // Fields
@@ -82,12 +83,11 @@ namespace System.Data.OracleClient.Oci {
                                
                                if (disposing) {
                                        if (values != null) {
-                                               foreach (OciDefineHandle h in values)
+                                               foreach (OciDefineHandle h in values) 
                                                        h.Dispose ();
                                                values = null;
                                        }
                                }
-                               
                                base.Dispose (disposing);
                        }
                }
@@ -110,6 +110,9 @@ namespace System.Data.OracleClient.Oci {
 
                        OciParameterDescriptor output = new OciParameterDescriptor (this, handle);
                        output.ErrorHandle = ErrorHandle;
+                       if (parm == null)
+                               parm = new ArrayList();
+                       parm.Add(handle);
                        return output;
                }
 
@@ -228,6 +231,8 @@ namespace System.Data.OracleClient.Oci {
                        switch (status) {
                        case OciGlue.OCI_NO_DATA:
                                moreResults = false;
+                               foreach (IntPtr h in parm)
+                                       OciCalls.OCIDescriptorFree(h, OciHandleType.Parameter);
                                break;
                        case OciGlue.OCI_DEFAULT:
                                moreResults = true;
index db39d3d551fe0ba6d4a1031cce61ca67fd66604e..eee81ab0c01f5563b97ca7abac235167c8b55c65 100644 (file)
@@ -27,6 +27,7 @@ using System.Data.Common;
 using System.Data.OracleClient.Oci;
 using System.Drawing.Design;
 using System.Text;
+using System.Threading;
 
 namespace System.Data.OracleClient
 {
@@ -705,7 +706,7 @@ namespace System.Data.OracleClient
 
                private void SafeDisposeHandle (OciStatementHandle h)
                {
-                       if (h != null && h != preparedStatement)
+                       if (h != null && h != preparedStatement) 
                                h.Dispose();
                }
 
@@ -757,6 +758,9 @@ namespace System.Data.OracleClient
 
                protected override void Dispose (bool disposing)
                {
+                       if (preparedStatement != null) 
+                               OciCalls.OCIHandleFree(preparedStatement,
+                                                      OciHandleType.Statement);
                        if (disposing)
                                if (Parameters.Count > 0)
                                        foreach (OracleParameter parm in Parameters)
index df17716097dbae6007a10a25bcc7dea4e652ee27..6f11d970f0d46c04f10686f54d92b13fa113a130 100644 (file)
@@ -821,8 +821,11 @@ namespace System.Data.OracleClient
                                        if (direction == ParameterDirection.Output || 
                                                direction == ParameterDirection.InputOutput || 
                                                direction == ParameterDirection.ReturnValue) {
-
-                                               cursor = IntPtr.Zero;
+                                               if (cursor != IntPtr.Zero) {
+                                                       OciCalls.OCIHandleFree (cursor,
+                                                               OciHandleType.Statement);
+                                                       cursor = IntPtr.Zero;
+                                               }
                                                OciCalls.OCIHandleAlloc (connection.Environment,
                                                        out cursor,
                                                        OciHandleType.Statement,
index d15a4733fc86bdf4690ac093e06637ac911ea642..45ec6fbd415f89bf52f3b5fb94204a9929e080a9 100644 (file)
@@ -162,7 +162,7 @@ namespace System.Runtime.Serialization.Json
                                                return null;
                                        }
                                        else
-                                               return new Uri (reader.ReadElementContentAsString ());
+                                               return new Uri (reader.ReadElementContentAsString (), UriKind.RelativeOrAbsolute);
                                } else if (type == typeof (XmlQualifiedName)) {
                                        s = reader.ReadElementContentAsString ();
                                        int idx = s.IndexOf (':');
index cba0fb87bc68f9089872dacf89349470fbca17f9..fbe9250e572d3d2cac86618e3894daf35121e77c 100644 (file)
@@ -1467,6 +1467,25 @@ namespace MonoTests.System.Runtime.Serialization.Json
                        result = entity.GetValue;
                        Assert.AreEqual ("ValueA", result, "#1");
                }
+
+               [DataContract(Name = "UriTest")]
+               public class UriTest
+               {
+                       [DataMember(Name = "members")]
+                       public Uri MembersRelativeLink { get; set; }
+               }
+
+               [Test]
+               public void Bug15169 ()
+               {
+                       const string json = "{\"members\":\"foo/bar/members\"}";
+                       var serializer = new DataContractJsonSerializer (typeof (UriTest));
+                       UriTest entity;
+                       using (var stream = new MemoryStream (Encoding.UTF8.GetBytes (json)))
+                               entity = (UriTest) serializer.ReadObject (stream);
+
+                       Assert.AreEqual ("foo/bar/members", entity.MembersRelativeLink.ToString ());
+               }
        }
        
        public class CharTest
index 355da201604e9c78849f5e11c1dd1f2d57aca850..1b4e9e835606aafed90b7a22b9cb04a82177e12e 100644 (file)
@@ -53,7 +53,12 @@ namespace System.Web.Services.Description {
                }
 
                public Message this [string name] {
-                       get { return this [IndexOf ((Message) Table [name])]; }
+                       get {
+                               int index = IndexOf ((Message) Table [name]);
+                               if (index >= 0)
+                                       return this [index];
+                               return null;
+                       }
                }
 
                #endregion // Properties
index 2186adc2da3356304770750fc9b370668181b0f4..b0ebe6bbce18fa761ba39077e7c3abefd9c72ed8 100644 (file)
 
 RUNTIME = mono
 
-ifeq ($(PROFILE), net_2_0)
-       nunit_MONO_PATH="../../../../../class/lib/net_2_0"
-       CSCOMPILE=MONO_PATH=../../../../../class/lib/net_2_0 ../../../../../../mono/runtime/mono-wrapper ../../../../../class/lib/net_2_0/gmcs.exe
-else
-       nunit_MONO_PATH="../../../../../class/lib/net_1_1"
-       CSCOMPILE=mcs
-endif
+nunit_MONO_PATH="../../../../../class/lib/net_4_5"
+CSCOMPILE=MONO_PATH=../../../../../class/lib/net_4_5 ../../../../../../runtime/mono-wrapper ../../../../../class/lib/build/mcs.exe
 
 TEST_ARCHIVE = xslt-testsuite-03.ZIP
 CATALOG = testsuite/TESTS/catalog.xml
 FIXED_CATALOG = testsuite/TESTS/catalog-fixed.xml
 
-mono_wrapper_PATH="../../../../../../mono/runtime/mono-wrapper"
-NUNIT_CONSOLE=$(mono_wrapper_PATH) --debug ./nunit-console.exe
+mono_wrapper_PATH="../../../../../../runtime/mono-wrapper"
+NUNIT_CONSOLE=$(mono_wrapper_PATH) --debug $(nunit_MONO_PATH)/nunit-console.exe
 
 FIXTURE=MonoTests.oasis_xslt.SuiteBuilder
-CLEAN_NUNIT_FLAGS=/fixture:$(FIXTURE) /xml=TestResult.xml /include=Clean
-FAILED_NUNIT_FLAGS=/fixture:$(FIXTURE) /xml=FailedTestResult.xml /include=KnownFailures
-ALL_NUNIT_FLAGS=/fixture:$(FIXTURE) /xml=AllTestResult.xml /out=AllTestResult.log /include=KnownFailures,Clean
+CLEAN_NUNIT_FLAGS=-fixture:$(FIXTURE) -xml=TestResult.xml -include=Clean
+FAILED_NUNIT_FLAGS=-fixture:$(FIXTURE) -xml=FailedTestResult.xml -include=KnownFailures
+ALL_NUNIT_FLAGS=-fixture:$(FIXTURE) -xml=AllTestResult.xml -out=AllTestResult.log -include=KnownFailures,Clean
 
 TEST_PROG=xslttest.dll
 GENERATE_EXE=generate.exe
@@ -41,7 +36,7 @@ else
 REFERENCE_RESULTS_NAME=results
 endif
 REFERENCE_RESULTS_ARCHIVE=xslt-reference-$(REFERENCE_RESULTS_NAME).tar.gz
-REFERENCE_RESULTS_URL=http://anonsvn.mono-project.com/source/trunk/release/test-ext/xslt-standalone/$(REFERENCE_RESULTS_ARCHIVE)
+REFERENCE_RESULTS_URL=https://github.com/mono/release/raw/master/test-ext/xslt-standalone/$(REFERENCE_RESULTS_ARCHIVE)
 REFERENCE_RESULTS=$(REFERENCE_RESULTS_NAME)/timestamp
 
 test : $(TEST_PROG) $(FIXED_CATALOG) $(REFERENCE_RESULTS)
@@ -92,7 +87,7 @@ $(GENERATE_EXE) : generate.cs XsltTestUtils.cs
        # It somehow does not work fine unless nunit-console.exe is here ...
        cp $(nunit_MONO_PATH)/nunit-console.exe .
 $(TEST_PROG) : xslttest.cs XsltTestUtils.cs
-       $(CSCOMPILE) xslttest.cs XsltTestUtils.cs XmlCompare.cs -r:nunit.core -r:nunit.framework -out:$@ -t:library
+       $(CSCOMPILE) xslttest.cs XsltTestUtils.cs XmlCompare.cs -r:nunit.core -r:nunit.core.interfaces -r:nunit.framework -out:$@ -t:library
 
 catalog-fixed : $(FIXED_CATALOG)
 
index 8ecd22edf47ce9c3d9a8c12956fce9f5b6a784ed..0761338aef3ce0f865af73d31135df098bb27a12 100644 (file)
@@ -17,10 +17,8 @@ namespace MonoTests.oasis_xslt {
                ArrayList fixmeList = new ArrayList ();
                #endregion
        
-               TestSuite _suite;
-               SuiteBuilder (TestSuite suite)
+               public SuiteBuilder ()
                {
-                       _suite = suite;
                }
 
                void ReadLists ()
@@ -42,7 +40,7 @@ namespace MonoTests.oasis_xslt {
                        }
                }
 
-               public void Build ()
+               void Build (TestSuite suite)
                {
 //                     if (Environment.GetEnvironmentVariables().Contains("START_DEBUG"))
 //                             System.Diagnostics.Debugger.Launch ();
@@ -65,18 +63,23 @@ namespace MonoTests.oasis_xslt {
                                string expectedException = (string) expectedExceptions[testid];
                                bool isKnownFailure = knownFailures.Contains (testid) || fixmeList.Contains (testid);
 
-                               _suite.Add (new TestFromCatalog (testid, stt, expectedException,
+                               suite.Add (new TestFromCatalog (testid, stt, expectedException,
                                        EnvOptions.InverseResults, isKnownFailure));
                        }
                }
 
+               static object lock_obj = new object ();
+               static TestSuite _suite;
+
                [Suite]
                public static TestSuite Suite { 
                        get {
+                               if (_suite == null) { lock (lock_obj) {
                                TestSuite suite = new TestSuite ("MonoTests.oasis_xslt.SuiteBuilder");
-                               SuiteBuilder builder = new SuiteBuilder (suite);
-                               builder.Build ();
-                               return suite;
+                               new SuiteBuilder ().Build (suite);
+                               _suite = suite;
+                               } }
+                               return _suite;
                        }
                }
        }
@@ -99,7 +102,7 @@ namespace MonoTests.oasis_xslt {
                        ArrayList arr = new ArrayList ();
                        if (isKnownFailure) {
                                arr.Add ("KnownFailures");
-                               this.IsExplicit = true;
+                               //this.IsExplicit = true;
                        }
                        else
                                arr.Add ("Clean");
index f38458ca3b8ce7c909bbcbf41f34b38a43a47e86..af5fd976403171be1e8800087152cf9fe9f48b03 100644 (file)
@@ -181,16 +181,20 @@ namespace System.Xml.Linq
 
                public IEnumerable <XElement> Elements (XName name)
                {
-                       foreach (XElement el in Elements ())
-                               if (el.Name == name)
+                       foreach (XNode n in Nodes ()) {
+                               XElement el = n as XElement;
+                               if (el != null && el.Name == name)
                                        yield return el;
+                       }
                }
 
                public XElement Element (XName name)
                {
-                       foreach (XElement el in Elements ())
-                               if (el.Name == name)
+                       foreach (XNode n in Nodes ()) {
+                               XElement el = n as XElement;
+                               if (el != null && el.Name == name)
                                        return el;
+                       }
                        return null;
                }
 
index 70b6430929a98ab53cd5b4a7f8b7a80854de58d7..81dea5e4a4360cdeb9f14ae5eaea19eb6fc71523 100644 (file)
@@ -382,7 +382,8 @@ namespace System.Xml.Linq
 
                public XAttribute Attribute (XName name)
                {
-                       foreach (XAttribute a in Attributes ())
+                       XAttribute next;
+                       for (XAttribute a = attr_first; a != null; a = a.NextAttribute)
                                if (a.Name == name)
                                        return a;
                        return null;
index 80d0e7b09cb0ac9fc5a9b9d086263001b5753b87..59bbceb4f92a148133bb40ee6f7f9b59e7394e5d 100644 (file)
@@ -153,7 +153,7 @@ namespace System.Xml.Linq
 
                public override string ToString ()
                {
-                       if (ns == XNamespace.None)
+                       if (Object.ReferenceEquals (ns, XNamespace.None))
                                return local;
                        return String.Concat ("{", ns.NamespaceName, "}", local);
                }
index 8353b25d2b8a02b4291f49e4932ca0966be01d24..c620e4f59920c2ccc557db25241bbcec05c79b6d 100644 (file)
@@ -165,42 +165,42 @@ namespace System.Xml.Linq
                
                internal void OnAddingObject (object addedObject)
                {
-                       OnChanging (addedObject, new XObjectChangeEventArgs (XObjectChange.Add));
+                       OnChanging (addedObject, XObjectChangeEventArgs.Add);
                }
 
                internal void OnAddedObject (object addedObject)
                {
-                       OnChanged (addedObject, new XObjectChangeEventArgs (XObjectChange.Add));
+                       OnChanged (addedObject, XObjectChangeEventArgs.Add);
                }
 
                internal void OnNameChanging (object renamedObject)
                {
-                       OnChanging (renamedObject, new XObjectChangeEventArgs (System.Xml.Linq.XObjectChange.Name));
+                       OnChanging (renamedObject, XObjectChangeEventArgs.Name);
                }
 
                internal void OnNameChanged (object renamedObject)
                {
-                       OnChanged (renamedObject, new XObjectChangeEventArgs (System.Xml.Linq.XObjectChange.Name));
+                       OnChanged (renamedObject, XObjectChangeEventArgs.Name);
                }
                
                internal void OnRemovingObject (object removedObject)
                {
-                       OnChanging (removedObject, new XObjectChangeEventArgs (XObjectChange.Remove));
+                       OnChanging (removedObject, XObjectChangeEventArgs.Remove);
                }
 
                internal void OnRemovedObject (object removedObject)
                {
-                       OnChanged (removedObject, new XObjectChangeEventArgs (XObjectChange.Remove));
+                       OnChanged (removedObject, XObjectChangeEventArgs.Remove);
                }
 
                internal void OnValueChanging (object changedObject)
                {
-                       OnChanging (changedObject, new XObjectChangeEventArgs (XObjectChange.Value));
+                       OnChanging (changedObject, XObjectChangeEventArgs.Value);
                }
 
                internal void OnValueChanged (object changedObject)
                {
-                       OnChanged (changedObject, new XObjectChangeEventArgs (XObjectChange.Value));
+                       OnChanged (changedObject, XObjectChangeEventArgs.Value);
                }
 
                
index da056d15336030f5a974515f73f1cbf02cb7ed4c..80c30eece70d9d13e40ed5d50ffb86c729d42938 100644 (file)
@@ -73,33 +73,36 @@ namespace System.CodeDom.Compiler {
 
                                        // note: this property *cannot* change TempDir property
                                        string temp = tempdir;
-                                       if (temp.Length == 0)
-                                               temp = GetOwnTempDir ();
+                                       if (temp.Length == 0) {
+                                               if (ownTempDir != null) {
+                                                       temp = ownTempDir;
+                                                       Directory.CreateDirectory (temp);
+                                               } else {
+                                                       temp = CreateOwnTempDir ();
+                                               }
+                                       }
 
                                        // Create a temporary file at the target directory. This ensures
                                        // that the generated file name is unique.
-                                       FileStream f = null;
-                                       do {
+                                       int test_counter = 1000;
+                                       while (true) {
                                                int num = rnd.Next ();
                                                num++;
                                                basepath = Path.Combine (temp, num.ToString("x"));
                                                string path = basepath + ".tmp";
 
                                                try {
-                                                       f = new FileStream (path, FileMode.CreateNew);
-                                               }
-                                               catch (System.IO.IOException) {
-                                                       f = null;
-                                                       continue;
-                                               }
-                                               catch {
-                                                       // avoid endless loop
+                                                       using (var f = new FileStream (path, FileMode.CreateNew)) {
+                                                               break;
+                                                       }
+                                               } catch (IOException) {
+                                                       if (test_counter-- > 0)
+                                                               continue;
+
                                                        throw;
                                                }
-                                       } while (f == null);
-                                       
-                                       f.Close ();
-                                       
+                                       }
+
                                        // and you must have discovery access to the combined path
                                        // note: the cache behaviour is tested in the CAS tests
                                        if (SecurityManager.SecurityEnabled) {
@@ -110,12 +113,9 @@ namespace System.CodeDom.Compiler {
                                return(basepath);
                        }
                }
-               
-               string GetOwnTempDir ()
-               {
-                       if (ownTempDir != null)
-                               return ownTempDir;
 
+               string CreateOwnTempDir ()
+               {
                        // this call ensure the Environment permissions check
                        string basedir = Path.GetTempPath ();
                        
@@ -245,9 +245,8 @@ namespace System.CodeDom.Compiler {
                                File.Delete (tmpFile);
                                basepath = null;
                        }
-                       if (allDeleted && ownTempDir != null) {
+                       if (allDeleted && ownTempDir != null && filenames.Length > 0) {
                                Directory.Delete (ownTempDir, true);
-                               ownTempDir = null;
                        }
                }
 
index 7ea3a7a49f776cdf1100a0675c929d9f5ed2ef68..2242c19cf589f8603b219037d45e524f953fbaf5 100644 (file)
@@ -27,7 +27,7 @@
 #if NET_4_5
 namespace System.IO.Compression {
        public enum CompressionLevel {
-               Optional,
+               Optimal,
                Fastest,
                NoCompression
        }
index c60954c949edbae9cba5756c031f8b9b79e4706a..de9754e951d0a812c3128a35c4cdcf5789991184 100644 (file)
@@ -2,8 +2,8 @@
 // System.Net.NetworkInformation.NetworkChange
 //
 // Authors:
-//     Gonzalo Paniagua Javier (gonzalo@novell.com)
-//  Aaron Bockover (abock@xamarin.com)
+//   Gonzalo Paniagua Javier (LinuxNetworkChange) (gonzalo@novell.com)
+//   Aaron Bockover (MacNetworkChange) (abock@xamarin.com)
 //
 // Copyright (c) 2006,2011 Novell, Inc. (http://www.novell.com)
 // Copyright (c) 2013 Xamarin, Inc. (http://www.xamarin.com)
 // distribute, sublicense, and/or sell copies of the Software, and to
 // permit persons to whom the Software is furnished to do so, subject to
 // the following conditions:
-// 
+//
 // The above copyright notice and this permission notice shall be
 // included in all copies or substantial portions of the Software.
-// 
+//
 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
 // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
 // MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
 // WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 //
 
+using System;
 using System.Net.Sockets;
 using System.Runtime.InteropServices;
 using System.Threading;
 
+#if NETWORK_CHANGE_STANDALONE
+namespace NetworkInformation {
+
+       public class NetworkAvailabilityEventArgs : EventArgs
+       {
+               public bool IsAvailable { get; set; }
+
+               public NetworkAvailabilityEventArgs (bool available)
+               {
+                       IsAvailable = available;
+               }
+       }
+
+       public delegate void NetworkAddressChangedEventHandler (object sender, EventArgs args);
+       public delegate void NetworkAvailabilityChangedEventHandler (object sender, NetworkAvailabilityEventArgs args);
+#else
 namespace System.Net.NetworkInformation {
-       internal interface INetworkChange {
+#endif
+
+       internal interface INetworkChange : IDisposable {
                event NetworkAddressChangedEventHandler NetworkAddressChanged;
                event NetworkAvailabilityChangedEventHandler NetworkAvailabilityChanged;
+               bool HasRegisteredEvents { get; }
        }
 
        public sealed class NetworkChange {
                static INetworkChange networkChange;
 
-               static NetworkChange ()
+               public static event NetworkAddressChangedEventHandler NetworkAddressChanged {
+                       add {
+                               lock (typeof (INetworkChange)) {
+                                       MaybeCreate ();
+                                       if (networkChange != null)
+                                               networkChange.NetworkAddressChanged += value;
+                               }
+                       }
+
+                       remove {
+                               lock (typeof (INetworkChange)) {
+                                       if (networkChange != null) {
+                                               networkChange.NetworkAddressChanged -= value;
+                                               MaybeDispose ();
+                                       }
+                               }
+                       }
+               }
+
+               public static event NetworkAvailabilityChangedEventHandler NetworkAvailabilityChanged {
+                       add {
+                               lock (typeof (INetworkChange)) {
+                                       MaybeCreate ();
+                                       if (networkChange != null)
+                                               networkChange.NetworkAvailabilityChanged += value;
+                               }
+                       }
+
+                       remove {
+                               lock (typeof (INetworkChange)) {
+                                       if (networkChange != null) {
+                                               networkChange.NetworkAvailabilityChanged -= value;
+                                               MaybeDispose ();
+                                       }
+                               }
+                       }
+               }
+
+               static void MaybeCreate ()
                {
-                       if (MacNetworkChange.IsEnabled) {
+                       if (networkChange != null)
+                               return;
+
+                       try {
                                networkChange = new MacNetworkChange ();
-                       } else {
+                       } catch {
+#if !NETWORK_CHANGE_STANDALONE
                                networkChange = new LinuxNetworkChange ();
+#endif
                        }
                }
 
-               public static event NetworkAddressChangedEventHandler NetworkAddressChanged {
-                       add { networkChange.NetworkAddressChanged += value; }
-                       remove { networkChange.NetworkAddressChanged -= value; }
+               static void MaybeDispose ()
+               {
+                       if (networkChange != null && networkChange.HasRegisteredEvents) {
+                               networkChange.Dispose ();
+                               networkChange = null;
+                       }
                }
+       }
 
-               public static event NetworkAvailabilityChangedEventHandler NetworkAvailabilityChanged {
-                       add { networkChange.NetworkAvailabilityChanged += value; }
-                       remove { networkChange.NetworkAvailabilityChanged -= value; }
+       internal sealed class MacNetworkChange : INetworkChange
+       {
+               const string DL_LIB = "/usr/lib/libSystem.dylib";
+               const string CORE_SERVICES_LIB = "/System/Library/Frameworks/SystemConfiguration.framework/SystemConfiguration";
+               const string CORE_FOUNDATION_LIB = "/System/Library/Frameworks/CoreFoundation.framework/CoreFoundation";
+
+               [UnmanagedFunctionPointerAttribute (CallingConvention.Cdecl)]
+               delegate void SCNetworkReachabilityCallback (IntPtr target, NetworkReachabilityFlags flags, IntPtr info);
+
+               [DllImport (DL_LIB)]
+               static extern IntPtr dlopen (string path, int mode);
+
+               [DllImport (DL_LIB)]
+               static extern IntPtr dlsym (IntPtr handle, string symbol);
+
+               [DllImport (DL_LIB)]
+               static extern int dlclose (IntPtr handle);
+
+               [DllImport (CORE_FOUNDATION_LIB)]
+               static extern void CFRelease (IntPtr handle);
+
+               [DllImport (CORE_FOUNDATION_LIB)]
+               static extern IntPtr CFRunLoopGetMain ();
+
+               [DllImport (CORE_SERVICES_LIB)]
+               static extern IntPtr SCNetworkReachabilityCreateWithAddress (IntPtr allocator, ref sockaddr_in sockaddr);
+
+               [DllImport (CORE_SERVICES_LIB)]
+               static extern bool SCNetworkReachabilityGetFlags (IntPtr reachability, out NetworkReachabilityFlags flags);
+
+               [DllImport (CORE_SERVICES_LIB)]
+               static extern bool SCNetworkReachabilitySetCallback (IntPtr reachability, SCNetworkReachabilityCallback callback, ref SCNetworkReachabilityContext context);
+
+               [DllImport (CORE_SERVICES_LIB)]
+               static extern bool SCNetworkReachabilityScheduleWithRunLoop (IntPtr reachability, IntPtr runLoop, IntPtr runLoopMode);
+
+               [DllImport (CORE_SERVICES_LIB)]
+               static extern bool SCNetworkReachabilityUnscheduleFromRunLoop (IntPtr reachability, IntPtr runLoop, IntPtr runLoopMode);
+
+               [StructLayout (LayoutKind.Explicit, Size = 28)]
+               struct sockaddr_in {
+                       [FieldOffset (0)] public byte sin_len;
+                       [FieldOffset (1)] public byte sin_family;
+
+                       public static sockaddr_in Create ()
+                       {
+                               return new sockaddr_in {
+                                       sin_len = 28,
+                                       sin_family = 2 // AF_INET
+                               };
+                       }
                }
-       }
 
-       internal sealed class MacNetworkChange : INetworkChange {
-               public static bool IsEnabled {
-                       get { return mono_sc_reachability_enabled () != 0; }
+               [StructLayout (LayoutKind.Sequential)]
+               struct SCNetworkReachabilityContext {
+                       public IntPtr version;
+                       public IntPtr info;
+                       public IntPtr retain;
+                       public IntPtr release;
+                       public IntPtr copyDescription;
+               }
+
+               [Flags]
+               enum NetworkReachabilityFlags {
+                       None = 0,
+                       TransientConnection = 1 << 0,
+                       Reachable = 1 << 1,
+                       ConnectionRequired = 1 << 2,
+                       ConnectionOnTraffic = 1 << 3,
+                       InterventionRequired = 1 << 4,
+                       ConnectionOnDemand = 1 << 5,
+                       IsLocalAddress = 1 << 16,
+                       IsDirect = 1 << 17,
+                       IsWWAN = 1 << 18,
+                       ConnectionAutomatic = ConnectionOnTraffic
                }
 
+               IntPtr handle;
+               IntPtr runLoopMode;
+               SCNetworkReachabilityCallback callback;
+               bool scheduledWithRunLoop;
+               NetworkReachabilityFlags flags;
+
                event NetworkAddressChangedEventHandler networkAddressChanged;
                event NetworkAvailabilityChangedEventHandler networkAvailabilityChanged;
 
                public event NetworkAddressChangedEventHandler NetworkAddressChanged {
                        add {
-                               if (value != null) {
-                                       MaybeInitialize ();
-                                       networkAddressChanged += value;
-                                       value (null, EventArgs.Empty);
-                               }
+                               value (null, EventArgs.Empty);
+                               networkAddressChanged += value;
                        }
 
-                       remove {
-                               networkAddressChanged -= value;
-                               MaybeDispose ();
-                       }
+                       remove { networkAddressChanged -= value; }
                }
 
                public event NetworkAvailabilityChangedEventHandler NetworkAvailabilityChanged {
                        add {
-                               if (value != null) {
-                                       MaybeInitialize ();
-                                       networkAvailabilityChanged += value;
-                                       var available = handle != IntPtr.Zero && mono_sc_reachability_is_available (handle) != 0;
-                                       value (null, new NetworkAvailabilityEventArgs (available));
-                               }
+                               value (null, new NetworkAvailabilityEventArgs (IsAvailable));
+                               networkAvailabilityChanged += value;
                        }
 
-                       remove {
-                               networkAvailabilityChanged -= value;
-                               MaybeDispose ();
+                       remove { networkAvailabilityChanged -= value; }
+               }
+
+               bool IsAvailable {
+                       get {
+                               return (flags & NetworkReachabilityFlags.Reachable) != 0 &&
+                                       (flags & NetworkReachabilityFlags.ConnectionRequired) == 0;
                        }
                }
 
-               IntPtr handle;
-               MonoSCReachabilityCallback callback;
+               public bool HasRegisteredEvents {
+                       get { return networkAddressChanged != null || networkAvailabilityChanged != null; }
+               }
 
-               void Callback (int available)
+               public MacNetworkChange ()
                {
-                       var addressChanged = networkAddressChanged;
-                       if (addressChanged != null) {
-                               addressChanged (null, EventArgs.Empty);
-                       }
+                       var sockaddr = sockaddr_in.Create ();
+                       handle = SCNetworkReachabilityCreateWithAddress (IntPtr.Zero, ref sockaddr);
+                       if (handle == IntPtr.Zero)
+                               throw new Exception ("SCNetworkReachabilityCreateWithAddress returned NULL");
 
-                       var availabilityChanged = networkAvailabilityChanged;
-                       if (availabilityChanged != null) {
-                               availabilityChanged (null, new NetworkAvailabilityEventArgs (available != 0));
-                       }
+                       callback = new SCNetworkReachabilityCallback (HandleCallback);
+                       var info = new SCNetworkReachabilityContext {
+                               info = GCHandle.ToIntPtr (GCHandle.Alloc (this))
+                       };
+
+                       SCNetworkReachabilitySetCallback (handle, callback, ref info);
+
+                       scheduledWithRunLoop =
+                       LoadRunLoopMode () &&
+                               SCNetworkReachabilityScheduleWithRunLoop (handle, CFRunLoopGetMain (), runLoopMode);
+
+                       SCNetworkReachabilityGetFlags (handle, out flags);
                }
 
-               void MaybeInitialize ()
+               bool LoadRunLoopMode ()
                {
-                       lock (this) {
-                               if (handle == IntPtr.Zero) {
-                                       callback = new MonoSCReachabilityCallback (Callback);
-                                       handle = mono_sc_reachability_new (callback);
+                       var cfLibHandle = dlopen (CORE_FOUNDATION_LIB, 0);
+                       if (cfLibHandle == IntPtr.Zero)
+                               return false;
+
+                       try {
+                               runLoopMode = dlsym (cfLibHandle, "kCFRunLoopDefaultMode");
+                               if (runLoopMode != IntPtr.Zero) {
+                                       runLoopMode = Marshal.ReadIntPtr (runLoopMode);
+                                       return runLoopMode != IntPtr.Zero;
                                }
+                       } finally {
+                               dlclose (cfLibHandle);
                        }
+
+                       return false;
                }
 
-               void MaybeDispose ()
+               public void Dispose ()
                {
                        lock (this) {
-                               var addressChanged = networkAddressChanged;
-                               var availabilityChanged = networkAvailabilityChanged;
-                               if (handle != IntPtr.Zero && addressChanged == null && availabilityChanged == null) {
-                                       mono_sc_reachability_free (handle);
-                                       handle = IntPtr.Zero;
-                               }
+                               if (handle == IntPtr.Zero)
+                                       return;
+
+                               if (scheduledWithRunLoop)
+                                       SCNetworkReachabilityUnscheduleFromRunLoop (handle, CFRunLoopGetMain (), runLoopMode);
+
+                               CFRelease (handle);
+                               handle = IntPtr.Zero;
+                               callback = null;
+                               flags = NetworkReachabilityFlags.None;
+                               scheduledWithRunLoop = false;
                        }
                }
 
-#if MONOTOUCH || MONODROID
-               const string LIBNAME = "__Internal";
-#else
-               const string LIBNAME = "MonoPosixHelper";
+#if MONOTOUCH
+               [MonoTouch.MonoPInvokeCallback (typeof (SCNetworkReachabilityCallback))]
 #endif
+               static void HandleCallback (IntPtr reachability, NetworkReachabilityFlags flags, IntPtr info)
+               {
+                       if (info == IntPtr.Zero)
+                               return;
 
-               delegate void MonoSCReachabilityCallback (int available);
-
-               [DllImport (LIBNAME)]
-               static extern int mono_sc_reachability_enabled ();
+                       var instance = GCHandle.FromIntPtr (info).Target as MacNetworkChange;
+                       if (instance == null || instance.flags == flags)
+                               return;
 
-               [DllImport (LIBNAME)]
-               static extern IntPtr mono_sc_reachability_new (MonoSCReachabilityCallback callback);
+                       instance.flags = flags;
 
-               [DllImport (LIBNAME)]
-               static extern void mono_sc_reachability_free (IntPtr handle);
+                       var addressChanged = instance.networkAddressChanged;
+                       if (addressChanged != null)
+                               addressChanged (null, EventArgs.Empty);
 
-               [DllImport (LIBNAME)]
-               static extern int mono_sc_reachability_is_available (IntPtr handle);
+                       var availabilityChanged = instance.networkAvailabilityChanged;
+                       if (availabilityChanged != null)
+                               availabilityChanged (null, new NetworkAvailabilityEventArgs (instance.IsAvailable));
+               }
        }
 
+#if !NETWORK_CHANGE_STANDALONE
+
        internal sealed class LinuxNetworkChange : INetworkChange {
                [Flags]
                enum EventType {
@@ -185,6 +346,14 @@ namespace System.Net.NetworkInformation {
                        remove { Unregister (value); }
                }
 
+               public bool HasRegisteredEvents {
+                       get { return AddressChanged != null || AvailabilityChanged != null; }
+               }
+
+               public void Dispose ()
+               {
+               }
+
                //internal Socket (AddressFamily family, SocketType type, ProtocolType proto, IntPtr sock)
 
                bool EnsureSocket ()
@@ -321,5 +490,7 @@ namespace System.Net.NetworkInformation {
                [DllImport (LIBNAME, CallingConvention=CallingConvention.Cdecl)]
                static extern IntPtr CloseNLSocket (IntPtr sock);
        }
-}
 
+#endif
+
+}
index 209c17f534e0a4e0089cada3925bbd60d47d4304..b6300b9428ef694dc74ce8dd6312c8c0fabac24f 100644 (file)
@@ -612,7 +612,7 @@ namespace System.Net
                
                static CFArray CopyProxiesForAutoConfigurationScript (IntPtr proxyAutoConfigurationScript, CFUrl targetURL)
                {
-                       IntPtr err;
+                       IntPtr err = IntPtr.Zero;
                        IntPtr native = CFNetworkCopyProxiesForAutoConfigurationScript (proxyAutoConfigurationScript, targetURL.Handle, out err);
                        
                        if (native == IntPtr.Zero)
index f34bcca6d6abec884a114ec3cf946fc6efd471ca..fe60d4e5a86f8af9d56b652afab63170f26e3e72 100644 (file)
@@ -359,6 +359,49 @@ namespace MonoTests.Microsoft.CSharp
                        Assert.AreEqual (tempFile, tempFiles[0], "#5");
                }
 
+               [Test]
+               public void CompileFromSource_InMemory_Twice ()
+               {
+                       CompilerParameters options = new CompilerParameters ();
+                       options.GenerateExecutable = false;
+                       options.GenerateInMemory = true;
+
+                       ICodeCompiler compiler = _codeProvider.CreateCompiler ();
+
+                       var src_1 = "class X { ";
+
+                       CompilerResults results_1 = compiler.CompileAssemblyFromSource (options, src_1);
+                       var output_1 = options.OutputAssembly;
+
+                       var src_2 = "class X { }";
+
+                       CompilerResults results_2 = compiler.CompileAssemblyFromSource (options, src_2);
+                       var output_2 = options.OutputAssembly;
+
+                       // verify compilation was successful
+                       AssertCompileResults (results_2, true);
+
+                       Assert.AreEqual (output_1, output_2, "#1");
+               }
+
+
+               [Test]
+               public void CompileFromSource_InMemory_With_Extra_Delete ()
+               {
+                       CompilerParameters options = new CompilerParameters ();
+                       options.GenerateExecutable = false;
+                       options.GenerateInMemory = true;
+
+                       ICodeCompiler compiler = _codeProvider.CreateCompiler ();
+
+                       var src_1 = "class X { ";
+
+                       compiler.CompileAssemblyFromSource (options, src_1);
+
+                       options.TempFiles.Delete ();
+                       options.TempFiles.Delete ();
+               }
+
                [Test]
                public void CompileFromSourceBatch_InMemory ()
                {
index 75817380b13eb5d35b01001ee99ef8ef4382e114..d3f6a40ea95825d0e9472dee8399099a8d8e3b0a 100644 (file)
@@ -37,6 +37,8 @@ namespace System.Collections {
 
        [ComVisible(true)]
        [Serializable]
+       [System.Diagnostics.DebuggerDisplay ("Count={Count}")]
+       [System.Diagnostics.DebuggerTypeProxy (typeof (CollectionDebuggerView))]
 #if INSIDE_CORLIB
        public
 #else
index 3eeb79195bd09c68918b50cc03fa43f08ffffbda..a1a6d12130103b05335efc67dc00bdd3beeb8308 100644 (file)
@@ -289,9 +289,8 @@ namespace System.IO {
                        return fullpath;
                }
 
-               [DllImport("Kernel32.dll", SetLastError = true, CharSet = CharSet.Unicode)]
                // http://msdn.microsoft.com/en-us/library/windows/desktop/aa364963%28v=vs.85%29.aspx
-               // http://www.codeproject.com/Tips/223321/Win32-API-GetFullPathName
+               [DllImport("Kernel32.dll", SetLastError = true, CharSet = CharSet.Unicode)]
                private static extern int GetFullPathName(string path, int numBufferChars, StringBuilder buffer, ref IntPtr lpFilePartOrNull); 
 
                internal static string GetFullPathName(string path)
index 14f07dd98c80a4dab5f53210e1baf956e00f9c5f..8c431515299405def6f815633129ca93eafda67a 100644 (file)
@@ -244,7 +244,7 @@ namespace System.Security.Principal {
                        else {
                                // validate token by getting name
                                _name = GetTokenName (_token);
-                               if ((_name == String.Empty) || (_name == null))
+                               if (_name == null)
                                        throw new SerializationException ("Token doesn't match a user.");
                        }
                        _type = _info.GetString ("m_type");
index fb07e1c98a6090a4aebf1751d666334f130553e3..1aa56bc9f29a4d034234580cbc50c8703fdefdae 100644 (file)
@@ -852,8 +852,14 @@ fail_no_space:
                if (charCount < 0) {
                        throw new ArgumentOutOfRangeException ("charCount", _("ArgRange_NonNegative"));
                }
-               var max = Math.Max (3, EncoderFallback.MaxCharCount);
-               return max * charCount + GetPreamble ().Length;
+
+               // Add 1 to charCount since there may be a lead surrogate left from the previous call to GetBytes/Encoder.Convert
+               charCount = charCount + 1;
+               if (EncoderFallback.MaxCharCount > 1) {
+                       charCount = charCount * EncoderFallback.MaxCharCount;
+               }
+
+               return charCount * 3;
        }
 
        // Get the maximum number of characters needed to decode a
@@ -863,7 +869,14 @@ fail_no_space:
                if (byteCount < 0) {
                        throw new ArgumentOutOfRangeException ("byteCount", _("ArgRange_NonNegative"));
                }
-               return byteCount;
+
+               // Add 1 to byteCount since there may be the bytes from part of a surrogate pair left from the previous call to GetChars/Decoder.Convert
+               int maxCharCount = byteCount + 1;
+               if (DecoderFallback.MaxCharCount > 1) {
+                       maxCharCount = maxCharCount * DecoderFallback.MaxCharCount;
+               }
+
+               return maxCharCount;
        }
 
        // Get a UTF8-specific decoder that is attached to this instance.
index 62aa14fddc4c24f58a2cd2ba249805979417c1a1..1ae5559957ee710ce4206daf00fb0532f1df6987 100644 (file)
@@ -49,8 +49,8 @@ namespace System.Threading.Tasks
                
                // parent is the outer task in which this task is created
                readonly Task parent;
-               // contAncestor is the Task on which this continuation was setup
-               readonly Task contAncestor;
+               // A reference to a Task on which this continuation is attached to
+               Task contAncestor;
                
                static int          id = -1;
                static readonly TaskFactory defaultFactory = new TaskFactory ();
@@ -500,7 +500,9 @@ namespace System.Threading.Tasks
                void InnerInvoke ()
                {
                        if (IsContinuation) {
-                               invoker.Invoke (contAncestor, state, this);
+                               var ancestor = contAncestor;
+                               contAncestor = null;
+                               invoker.Invoke (ancestor, state, this);
                        } else {
                                invoker.Invoke (this, state, this);
                        }
@@ -957,11 +959,23 @@ namespace System.Threading.Tasks
                        if (millisecondsDelay < -1)
                                throw new ArgumentOutOfRangeException ("millisecondsDelay");
 
-                       var task = new Task (TaskActionInvoker.Delay, millisecondsDelay, cancellationToken, TaskCreationOptions.None, null, TaskConstants.Finished);
+                       if (cancellationToken.IsCancellationRequested)
+                               return TaskConstants.Canceled;
+
+                       var task = new Task (TaskActionInvoker.Empty, null, cancellationToken, TaskCreationOptions.None, null, null);
                        task.SetupScheduler (TaskScheduler.Default);
-                       
-                       if (millisecondsDelay != Timeout.Infinite)
-                               task.scheduler.QueueTask (task);
+
+                       if (millisecondsDelay != Timeout.Infinite) {
+                               var timer = new Timer (delegate (object state) {
+                                       var t = (Task) state;
+                                       if (t.Status == TaskStatus.WaitingForActivation) {
+                                               t.Status = TaskStatus.Running;
+                                               t.Finish ();
+                                       }
+                               }, task, millisecondsDelay, -1);
+
+                               task.ContinueWith (new DisposeContinuation (timer));
+                       }
 
                        return task;
                }
index 8189df744b867defe928bf5a56d04dd12c905f34..9825be780009dbd896e61e072e17d8118bdedfef 100644 (file)
@@ -338,6 +338,21 @@ namespace System.Threading.Tasks
                        evt.Signal ();
                }
        }
+
+       sealed class DisposeContinuation : IContinuation
+       {
+               readonly IDisposable instance;
+
+               public DisposeContinuation (IDisposable instance)
+               {
+                       this.instance = instance;
+               }
+
+               public void Execute ()
+               {
+                       instance.Dispose ();
+               }
+       }
 }
 
 #endif
index c38a566e2cc3c64720e6e4cf6bd45a5829769b1f..e1c9a6842cae9abf024dd1dab3259146601b78bf 100644 (file)
@@ -50,7 +50,7 @@ namespace System.Threading.Tasks
                                return;
                        }
 
-                       ThreadPool.UnsafeQueueUserWorkItem (callback, task);
+                       ThreadPool.QueueWorkItem (callback, task);
                }
 
                static void TaskExecuterCallback (object obj)
index 4d3f1c086cf7b3dba9775fb2093cb141097604e8..204386f9f70021579d9d200657030ef02dc4bd8f 100644 (file)
@@ -87,9 +87,6 @@ namespace System.Threading {
                                if (ar == null)
                                        return false;
                        } else {
-                               if (!callBack.HasSingleTarget)
-                                       throw new Exception ("The delegate must have only one target");
-
                                AsyncResult ares = new AsyncResult (callBack, state, true);
                                pool_queue (ares);
                        }
@@ -99,6 +96,12 @@ namespace System.Threading {
                [MethodImplAttribute(MethodImplOptions.InternalCall)]
                static extern void pool_queue (AsyncResult ares);
 
+               // TODO: It should be interface interface only to avoid extra allocation
+               internal static void QueueWorkItem (WaitCallback callBack, object state)
+               {
+                       pool_queue (new AsyncResult (callBack, state, false));
+               }
+
                public static RegisteredWaitHandle RegisterWaitForSingleObject (WaitHandle waitObject,
                                                                                WaitOrTimerCallback callBack,
                                                                                object state,
@@ -168,11 +171,11 @@ namespace System.Threading {
                [SecurityPermission (SecurityAction.Demand, ControlEvidence=true, ControlPolicy=true)]
                public static bool UnsafeQueueUserWorkItem (WaitCallback callBack, object state)
                {
+                       if (callBack == null)
+                               throw new ArgumentNullException ("callBack");
+
                        // no stack propagation here (that's why it's unsafe and requires extra security permissions)
                        if (!callBack.IsTransparentProxy ()) {
-                               if (!callBack.HasSingleTarget)
-                                       throw new Exception ("The delegate must have only one target");
-
                                AsyncResult ares = new AsyncResult (callBack, state, false);
                                pool_queue (ares);
                                return true;
index 63358776056a619725b9684e8ad5935200d1efc2..dd32032436f9363d19827afc5e4df216edff9969 100644 (file)
@@ -337,7 +337,7 @@ namespace System.Threading
                                                        list.RemoveAt (i);
                                                        count--;
                                                        i--;
-                                                       ThreadPool.UnsafeQueueUserWorkItem (TimerCB, timer);
+                                                       ThreadPool.QueueWorkItem (TimerCB, timer);
                                                        long period = timer.period_ms;
                                                        long due_time = timer.due_time_ms;
                                                        bool no_more = (period == -1 || ((period == 0 || period == Timeout.Infinite) && due_time != Timeout.Infinite));
index ae3b87120a745779d12f2d70e9725148f0215ae2..a17181f38ba2763c00625714120c4795ebb56487 100644 (file)
@@ -1,12 +1,13 @@
 //
 // System.Convert.cs
 //
-// Author:
+// Authors:
 //   Derek Holden (dholden@draper.com)
 //   Duncan Mak (duncan@ximian.com)
+//   Marek Safar (marek.safar@gmail.com)
 //
 // (C) Ximian, Inc.  http://www.ximian.com
-//
+// Copyright (C) 2013 Xamarin Inc (http://www.xamarin.com)
 //
 // System.Convert class. This was written word for word off the 
 // Library specification for System.Convert in the ECMA TC39 TG2 
@@ -2528,6 +2529,7 @@ namespace System {
                        typeof (DateTime), // 16 TypeCode.DateTime
                        null,               // 17 null.
                        typeof (String),   // 18 TypeCode.String
+                       typeof (Enum)
                };
 
                // Function to convert an object to another type and return
@@ -2561,67 +2563,69 @@ namespace System {
                        if (value.GetType () == conversionType)
                                return value;
                        
-                       if (value is IConvertible) {
-                               IConvertible convertValue = (IConvertible) value;
+                       IConvertible convertValue = value as IConvertible;
+                       if (convertValue != null) {
 
                                if (conversionType == conversionTable[0]) // 0 Empty
                                        throw new ArgumentNullException ();
                                
-                               else if (conversionType == conversionTable[1]) // 1 TypeCode.Object
-                                       return (object) value;
+                               if (conversionType == conversionTable[1]) // 1 TypeCode.Object
+                                       return value;
                                        
-                               else if (conversionType == conversionTable[2]) // 2 TypeCode.DBNull
+                               if (conversionType == conversionTable[2]) // 2 TypeCode.DBNull
                                        throw new InvalidCastException (
                                                "Cannot cast to DBNull, it's not IConvertible");
                  
-                               else if (conversionType == conversionTable[3]) // 3 TypeCode.Boolean
-                                       return (object) convertValue.ToBoolean (provider);
+                               if (conversionType == conversionTable[3]) // 3 TypeCode.Boolean
+                                       return convertValue.ToBoolean (provider);
                                        
-                               else if (conversionType == conversionTable[4]) // 4 TypeCode.Char
-                                       return (object) convertValue.ToChar (provider);
+                               if (conversionType == conversionTable[4]) // 4 TypeCode.Char
+                                       return convertValue.ToChar (provider);
                  
-                               else if (conversionType == conversionTable[5]) // 5 TypeCode.SByte
-                                       return (object) convertValue.ToSByte (provider);
+                               if (conversionType == conversionTable[5]) // 5 TypeCode.SByte
+                                       return convertValue.ToSByte (provider);
 
-                               else if (conversionType == conversionTable[6]) // 6 TypeCode.Byte
-                                       return (object) convertValue.ToByte (provider);
+                               if (conversionType == conversionTable[6]) // 6 TypeCode.Byte
+                                       return convertValue.ToByte (provider);
                                
-                               else if (conversionType == conversionTable[7]) // 7 TypeCode.Int16
-                                       return (object) convertValue.ToInt16 (provider);
+                               if (conversionType == conversionTable[7]) // 7 TypeCode.Int16
+                                       return convertValue.ToInt16 (provider);
                                        
-                               else if (conversionType == conversionTable[8]) // 8 TypeCode.UInt16
-                                       return (object) convertValue.ToUInt16 (provider);
+                               if (conversionType == conversionTable[8]) // 8 TypeCode.UInt16
+                                       return convertValue.ToUInt16 (provider);
                  
-                               else if (conversionType == conversionTable[9]) // 9 TypeCode.Int32
-                                       return (object) convertValue.ToInt32 (provider);
+                               if (conversionType == conversionTable[9]) // 9 TypeCode.Int32
+                                       return convertValue.ToInt32 (provider);
                        
-                               else if (conversionType == conversionTable[10]) // 10 TypeCode.UInt32
-                                       return (object) convertValue.ToUInt32 (provider);
+                               if (conversionType == conversionTable[10]) // 10 TypeCode.UInt32
+                                       return convertValue.ToUInt32 (provider);
                  
-                               else if (conversionType == conversionTable[11]) // 11 TypeCode.Int64
-                                       return (object) convertValue.ToInt64 (provider);
+                               if (conversionType == conversionTable[11]) // 11 TypeCode.Int64
+                                       return convertValue.ToInt64 (provider);
                  
-                               else if (conversionType == conversionTable[12]) // 12 TypeCode.UInt64
-                                       return (object) convertValue.ToUInt64 (provider);
+                               if (conversionType == conversionTable[12]) // 12 TypeCode.UInt64
+                                       return convertValue.ToUInt64 (provider);
                  
-                               else if (conversionType == conversionTable[13]) // 13 TypeCode.Single
-                                       return (object) convertValue.ToSingle (provider);
+                               if (conversionType == conversionTable[13]) // 13 TypeCode.Single
+                                       return convertValue.ToSingle (provider);
                  
-                               else if (conversionType == conversionTable[14]) // 14 TypeCode.Double
-                                       return (object) convertValue.ToDouble (provider);
+                               if (conversionType == conversionTable[14]) // 14 TypeCode.Double
+                                       return convertValue.ToDouble (provider);
 
-                               else if (conversionType == conversionTable[15]) // 15 TypeCode.Decimal
-                                       return (object) convertValue.ToDecimal (provider);
+                               if (conversionType == conversionTable[15]) // 15 TypeCode.Decimal
+                                       return convertValue.ToDecimal (provider);
 
-                               else if (conversionType == conversionTable[16]) // 16 TypeCode.DateTime
-                                       return (object) convertValue.ToDateTime (provider);
+                               if (conversionType == conversionTable[16]) // 16 TypeCode.DateTime
+                                       return convertValue.ToDateTime (provider);
                                
-                               else if (conversionType == conversionTable[18]) // 18 TypeCode.String
-                                       return (object) convertValue.ToString (provider);
-                               else {
-                                       if (try_target_to_type)
-                                               return convertValue.ToType (conversionType, provider);
-                               }
+                               if (conversionType == conversionTable[18]) // 18 TypeCode.String
+                                       return convertValue.ToString (provider);
+
+                               if (conversionType == conversionTable[19] && value is Enum) // System.Enum
+                                       return value;
+
+                               if (try_target_to_type)
+                                       return convertValue.ToType (conversionType, provider);
                        } 
                        // Not in the conversion table
                        throw new InvalidCastException ((Locale.GetText (
index c16e604d977e84bbfc257b129bb7956267fc3bdd..ecf2ed189815cec3f6271bac2324ee8ac3d50279 100644 (file)
@@ -278,9 +278,8 @@ namespace System
                {
                        if (targetType == null)
                                throw new ArgumentNullException ("targetType");
-                       if (targetType == typeof (string))
-                               return ToString (provider);
-                       return Convert.ToType (Value, targetType, provider, false);
+
+                       return Convert.ToType (this, targetType, provider, false);
                }
 
                ushort IConvertible.ToUInt16 (IFormatProvider provider)
index ab7583652c2fd5cf6a75f28c27d4c4a79dd53722..0550ff82843fd239d47fd94d68bf4d071ae3e5de 100644 (file)
@@ -43,19 +43,17 @@ namespace System
        [StructLayout (LayoutKind.Sequential)]
        public abstract class MulticastDelegate : Delegate
        {
-               private MulticastDelegate prev;
-               private MulticastDelegate kpm_next;
+               MulticastDelegate prev;
+               MulticastDelegate kpm_next;
 
                protected MulticastDelegate (object target, string method)
                        : base (target, method)
                {
-                       prev = null;
                }
 
                protected MulticastDelegate (Type target, string method)
                        : base (target, method)
                {
-                       prev = null;
                }
                
                public override void GetObjectData (SerializationInfo info, StreamingContext context)
@@ -72,9 +70,6 @@ namespace System
                        return base.DynamicInvokeImpl (args);
                }
 
-               internal bool HasSingleTarget {
-                       get { return prev == null; }
-               }
                // <remarks>
                //   Equals: two multicast delegates are equal if their base is equal
                //   and their invocations list is equal.
index d3a1e2de3c4df48af34024155eb0582a0a96284e..4c84824c912b1a374e9f52263533836562f02f65 100644 (file)
@@ -213,9 +213,6 @@ namespace MonoTests.System.Security.Principal {
                }
 
                [Test]
-#if __IOS__
-               [Ignore ("https://bugzilla.xamarin.com/show_bug.cgi?id=12789")]
-#endif
                public void SerializeRoundTrip () 
                {
                        WindowsIdentity wi = WindowsIdentity.GetCurrent ();
index 1f53af7e3eb278bf0d91e8055f74da125d866764..91a465c13d3f80b37aef743ba5ec2c943af1f98c 100644 (file)
@@ -125,34 +125,36 @@ namespace MonoTests.System.Text
                }
 
                [Test]
-#if NET_2_0
-               [Category ("NotWorking")]
-#endif
                public void TestMaxCharCount()
                {
                        UTF8Encoding UTF8enc = new UTF8Encoding ();
-#if NET_2_0
-                       // hmm, where is this extra 1 coming from?
+                       Encoding UTF8encWithBOM = new UTF8Encoding(true);
                        Assert.AreEqual (51, UTF8enc.GetMaxCharCount(50), "UTF #1");
-#else
-                       Assert.AreEqual (50, UTF8enc.GetMaxCharCount(50), "UTF #1");
-#endif
+                       Assert.AreEqual (UTF8enc.GetMaxByteCount(50), UTF8encWithBOM.GetMaxByteCount(50), "UTF #2");
+               }
+
+               [Test]
+               public void TestMaxCharCountWithCustomFallback()
+               {
+                       Encoding encoding = Encoding.GetEncoding("utf-8", new EncoderReplacementFallback("\u2047\u2047"), new DecoderReplacementFallback("\u2047\u2047"));
+                       Assert.AreEqual (102, encoding.GetMaxCharCount(50), "UTF #1");
                }
 
                [Test]
-#if NET_2_0
-               [Category ("NotWorking")]
-#endif
                public void TestMaxByteCount()
                {
                        UTF8Encoding UTF8enc = new UTF8Encoding ();
-#if NET_2_0
-                       // maybe under .NET 2.0 insufficient surrogate pair is
-                       // just not handled, and 3 is Preamble size.
+                       Encoding UTF8encWithBOM = new UTF8Encoding(true);
+
                        Assert.AreEqual (153, UTF8enc.GetMaxByteCount(50), "UTF #1");
-#else
-                       Assert.AreEqual (200, UTF8enc.GetMaxByteCount(50), "UTF #1");
-#endif
+                       Assert.AreEqual (UTF8enc.GetMaxByteCount(50), UTF8encWithBOM.GetMaxByteCount(50), "UTF #2");
+               }
+
+               [Test]
+               public void TestMaxByteCountWithCustomFallback()
+               {
+                       Encoding encoding = Encoding.GetEncoding("utf-8", new EncoderReplacementFallback("\u2047\u2047"), new DecoderReplacementFallback("?"));
+                       Assert.AreEqual (306, encoding.GetMaxByteCount(50), "UTF #1");
                }
 
                // regression for bug #59648
index d9811306fba9c568247bbfbbf888c2c5c636b4fd..feff0e8b06f234afa871dfb8c18570b201ba566a 100644 (file)
@@ -1125,6 +1125,15 @@ namespace MonoTests.System.Threading.Tasks
                        }
                }
 
+               [Test]
+               public void Delay_TimeManagement ()
+               {
+                       var delay1 = Task.Delay(50);
+                       var delay2 = Task.Delay(25);
+                       Assert.IsTrue (Task.WhenAny(new[] { delay1, delay2 }).Wait (1000));
+                       Assert.AreEqual (TaskStatus.RanToCompletion, delay2.Status);
+               }
+
                [Test]
                public void WaitAny_WithNull ()
                {
index 951e41ee1aaed8284ced896501d6e5aeccf3612c..88803e5c2d53e3e8f275677bf695629cfa299843 100644 (file)
@@ -49,6 +49,37 @@ namespace MonoTests.System.Threading
                                Assert.Fail ("#2");
                        } catch (ArgumentNullException) {
                        }                       
-               }       
+               }
+
+               [Test]
+               public void UnsafeQueueUserWorkItem_InvalidArguments ()
+               {
+                       try {
+                               ThreadPool.UnsafeQueueUserWorkItem (null, 1);
+                               Assert.Fail ("#1");
+                       } catch (ArgumentNullException) {
+                       }
+               }
+
+#if NET_4_0
+               event WaitCallback e;
+
+               [Test]
+               public void UnsafeQueueUserWorkItem_MulticastDelegate ()
+               {
+                       CountdownEvent ev = new CountdownEvent (2);
+
+                       e += delegate {
+                               ev.Signal ();
+                       };
+
+                       e += delegate {
+                               ev.Signal ();
+                       };
+
+                       ThreadPool.UnsafeQueueUserWorkItem (e, null);
+                       Assert.IsTrue (ev.Wait (3000));
+               }
+#endif
        }
 }
\ No newline at end of file
index 2c05538c722a2f1d52986cafb13af6804b6dcc4c..ee60eb53aa23b42e028e1c2d69ca64e41bb92602 100644 (file)
@@ -60,11 +60,11 @@ namespace MonoTests.System.Threading {
                        Timer t = new Timer (new TimerCallback (Callback), bucket, 10, 10);
                        Thread.Sleep (500);
                        int c = bucket.count;
-                       Assert.IsTrue(c > 20, "#1");
+                       Assert.IsTrue (c > 20, "#1 " + c.ToString ());
                        t.Change (100, 100);
                        c = bucket.count;
                        Thread.Sleep (500);
-                       Assert.IsTrue(bucket.count <= c + 20, "#2");
+                       Assert.IsTrue (bucket.count <= c + 20, "#2 " + c.ToString ());
                        t.Dispose ();
                }
 
@@ -193,8 +193,7 @@ namespace MonoTests.System.Threading {
                        Thread.Sleep(100);
                        t.Change (int.MaxValue, Timeout.Infinite);
                        // since period is 0 the callback should happen once (bug #340212)
-                       Assert.IsTrue(b.count == 1);
-                       
+                       Assert.AreEqual (1, b.count, "only once");
                }
 
                [Test]
index f6c0dca2a5932b0aef51d7387f74fc450585ef75..973b068e823ee28ebde1fcd9d94ce270b8aa8a4a 100644 (file)
@@ -849,9 +849,12 @@ namespace MonoTests.System
                }
 
                [Test]
-               public void ConvertToStringType ()
+               public void IConvertible_Valid ()
                {
-                       Assert.AreEqual ("This", ((IConvertible) TestingEnum.This).ToType (typeof (string), null));
+                       IConvertible ic = TestingEnum.This;
+                       Assert.AreEqual ("This", ic.ToType (typeof (string), null), "#1");
+                       Assert.AreEqual (TestingEnum.This, ic.ToType (typeof (TestingEnum), null), "#2");
+                       Assert.AreEqual (TestingEnum.This, ic.ToType (typeof (Enum), null), "#3");
                }
 
                [Test]
index 9293b85f7671a284be47b515892ace8ada8c9da5..efdeedf63a623c36c620cf40d09b86c715ebe79c 100644 (file)
@@ -551,10 +551,11 @@ namespace Monodoc.Providers
                                break;
                        // binary operators: overloading is possible [ECMA-335 §10.3.2]
                        default:
-                               memberSignature =
-                                       nicename + "("
-                                       + string.Join (",", member.Element ("Parameters").Elements ("Parameter").Select (p => (string)p.Attribute ("Type")))
-                                       + ")";
+                               if (member.Element ("Parameters") != null)
+                                       memberSignature =
+                                               nicename + "("
+                                               + string.Join (",", member.Element ("Parameters").Elements ("Parameter").Select (p => (string)p.Attribute ("Type")))
+                                               + ")";
                                break;
                        }
 
diff --git a/mcs/errors/cs0037-8.cs b/mcs/errors/cs0037-8.cs
deleted file mode 100644 (file)
index 5f54e10..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
-// CS0037: Cannot convert null to `int' because it is a value type
-// Line: 9
-
-class C
-{
-       public static void Main ()
-       {
-               int i = 44;
-               i <<= null;
-       }
-}
diff --git a/mcs/errors/cs0165-21.cs b/mcs/errors/cs0165-21.cs
new file mode 100644 (file)
index 0000000..2f6bbc1
--- /dev/null
@@ -0,0 +1,19 @@
+// CS0165: Use of unassigned local variable `v'
+// Line: 17
+
+using System;
+
+class C
+{
+       void Test (int arg)
+       {
+               int v;
+               switch (arg) {
+                       case 1:
+                               v = 0;
+                               break;
+               }
+
+               Console.WriteLine (v);
+       }
+}
\ No newline at end of file
diff --git a/mcs/errors/cs0429-3.cs b/mcs/errors/cs0429-3.cs
new file mode 100644 (file)
index 0000000..b8572b5
--- /dev/null
@@ -0,0 +1,11 @@
+// CS0429: Unreachable expression code detected
+// Line: 9
+// Compiler options: -warn:4 -warnaserror
+
+class Main
+{
+       public void Method (int i)
+       {
+               var x = true ? 1 : i;
+       }
+}
diff --git a/mcs/errors/cs0458-17.cs b/mcs/errors/cs0458-17.cs
new file mode 100644 (file)
index 0000000..748f773
--- /dev/null
@@ -0,0 +1,12 @@
+// CS0458: The result of the expression is always `null' of type `int?'
+// Line: 10
+// Compiler options: -warnaserror -warn:2
+
+class C
+{
+       public static void Main ()
+       {
+               int i = 44;
+               i <<= null;
+       }
+}
index 5d05d2ad6766f3bcd7e4264273210a53e983d2e3..cbad5a36cf827d4e439d0aa053eac24762d86eea 100644 (file)
@@ -15,6 +15,7 @@
 cs0080.cs 
 
 cs0162-7.cs NO ERROR
+cs0165-3.cs
 
 # Operators
 cs0457-2.cs
index 03ee9cc3b072236eefc71749d4696bb6a5c73690..80468e43ccafa8f01bc755e7b7cc99e671580807 100644 (file)
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>\r
-<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
   <ItemGroup Label="ProjectConfigurations">\r
     <ProjectConfiguration Include="Debug|Win32">\r
       <Configuration>Debug</Configuration>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">\r
     <ConfigurationType>Application</ConfigurationType>\r
     <CharacterSet>MultiByte</CharacterSet>\r
-    <PlatformToolset>v110</PlatformToolset>\r
+    <PlatformToolset>v120</PlatformToolset>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">\r
     <ConfigurationType>Application</ConfigurationType>\r
     <CharacterSet>MultiByte</CharacterSet>\r
-    <PlatformToolset>v110</PlatformToolset>\r
+    <PlatformToolset>v120</PlatformToolset>\r
   </PropertyGroup>\r
   <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />\r
   <ImportGroup Label="ExtensionSettings">\r
index f8a8d55f81f8c262845dfcfcf7c8f240d3877889..27b1485f56a92473f0ca42559ea8b3edb8b4620d 100644 (file)
@@ -191,15 +191,27 @@ namespace Mono.CSharp {
                sealed class ThisInitializer : Statement
                {
                        readonly HoistedThis hoisted_this;
+                       readonly AnonymousMethodStorey parent;
 
-                       public ThisInitializer (HoistedThis hoisted_this)
+                       public ThisInitializer (HoistedThis hoisted_this, AnonymousMethodStorey parent)
                        {
                                this.hoisted_this = hoisted_this;
+                               this.parent = parent;
                        }
 
                        protected override void DoEmit (EmitContext ec)
                        {
-                               hoisted_this.EmitAssign (ec, new CompilerGeneratedThis (ec.CurrentType, loc), false, false);
+                               Expression source;
+
+                               if (parent == null)
+                                       source = new CompilerGeneratedThis (ec.CurrentType, loc);
+                               else {
+                                       source = new FieldExpr (parent.HoistedThis.Field, Location.Null) {
+                                               InstanceExpression = new CompilerGeneratedThis (ec.CurrentType, Location.Null)
+                                       };
+                               }
+
+                               hoisted_this.EmitAssign (ec, source, false, false);
                        }
 
                        protected override void CloneTo (CloneContext clonectx, Statement target)
@@ -229,22 +241,24 @@ namespace Mono.CSharp {
                public Expression Instance;
 
                bool initialize_hoisted_this;
+               AnonymousMethodStorey hoisted_this_parent;
 
                public AnonymousMethodStorey (ExplicitBlock block, TypeDefinition parent, MemberBase host, TypeParameters tparams, string name, MemberKind kind)
-                       : base (parent, MakeMemberName (host, name, parent.Module.CounterAnonymousContainers, tparams, block.StartLocation),
+                       : base (parent, MakeMemberName (host, name, parent.PartialContainer.CounterAnonymousContainers, tparams, block.StartLocation),
                                tparams, 0, kind)
                {
                        OriginalSourceBlock = block;
-                       ID = parent.Module.CounterAnonymousContainers++;
+                       ID = parent.PartialContainer.CounterAnonymousContainers++;
                }
 
-               public void AddCapturedThisField (EmitContext ec)
+               public void AddCapturedThisField (EmitContext ec, AnonymousMethodStorey parent)
                {
                        TypeExpr type_expr = new TypeExpression (ec.CurrentType, Location);
                        Field f = AddCompilerGeneratedField ("$this", type_expr);
                        hoisted_this = new HoistedThis (this, f);
 
                        initialize_hoisted_this = true;
+                       hoisted_this_parent = parent;
                }
 
                public Field AddCapturedVariable (string name, TypeSpec type)
@@ -553,7 +567,7 @@ namespace Mono.CSharp {
                        // referenced indirectly
                        //
                        if (initialize_hoisted_this) {
-                               rc.CurrentBlock.AddScopeStatement (new ThisInitializer (hoisted_this));
+                               rc.CurrentBlock.AddScopeStatement (new ThisInitializer (hoisted_this, hoisted_this_parent));
                        }
 
                        //
@@ -1508,7 +1522,7 @@ namespace Mono.CSharp {
 
                        var bc = ec as BlockContext;
                        if (bc != null)
-                               aec.FlowOffset = bc.FlowOffset;
+                               aec.AssignmentInfoOffset = bc.AssignmentInfoOffset;
 
                        var errors = ec.Report.Errors;
 
@@ -1521,10 +1535,14 @@ namespace Mono.CSharp {
 
                                //
                                // If e is synchronous the inferred return type is T
-                               // If e is asynchronous the inferred return type is Task<T>
+                               // If e is asynchronous and the body of F is either an expression classified as nothing
+                               // or a statement block where no return statements have expressions, the inferred return type is Task
+                               // If e is async and has an inferred result type T, the inferred return type is Task<T>
                                //
                                if (block.IsAsync && ReturnType != null) {
-                                       ReturnType = ec.Module.PredefinedTypes.TaskGeneric.TypeSpec.MakeGenericType (ec, new [] { ReturnType });
+                                       ReturnType = ReturnType.Kind == MemberKind.Void ?
+                                               ec.Module.PredefinedTypes.Task.TypeSpec :
+                                               ec.Module.PredefinedTypes.TaskGeneric.TypeSpec.MakeGenericType (ec, new [] { ReturnType });
                                }
                        }
 
@@ -1679,14 +1697,13 @@ namespace Mono.CSharp {
                                                        // use ldftn on non-boxed instances either to share mutated state
                                                        //
                                                        parent = sm_parent.Parent.PartialContainer;
+                                               } else if (sm is IteratorStorey) {
+                                                       //
+                                                       // For iterators we can host everything in one class
+                                                       //
+                                                       parent = storey = sm;
                                                }
                                        }
-
-                                       //
-                                       // For iterators we can host everything in one class
-                                       //
-                                       if (sm is IteratorStorey)
-                                               parent = storey = sm;
                                }
 
                                modifiers = storey != null ? Modifiers.INTERNAL : Modifiers.PRIVATE;
@@ -1701,7 +1718,7 @@ namespace Mono.CSharp {
                                parent = ec.CurrentTypeDefinition.Parent.PartialContainer;
 
                        string name = CompilerGeneratedContainer.MakeName (parent != storey ? block_name : null,
-                               "m", null, ec.Module.CounterAnonymousMethods++);
+                               "m", null, parent.PartialContainer.CounterAnonymousMethods++);
 
                        MemberName member_name;
                        if (storey == null && ec.CurrentTypeParameters != null) {
index b2e4e9a20181b84e86a02b000a20ffed083fdd32..4bbb7f3231377eb9c76dfc15d732a0c1a8c00284 100644 (file)
@@ -919,7 +919,7 @@ namespace Mono.CSharp
                                                return;
                                        }
 
-                                       var mtype = texpr.Type.MemberDefinition as ClassOrStruct;
+                                       var mtype = texpr.MemberDefinition as ClassOrStruct;
                                        if (mtype == null) {
                                                Report.Error (1556, "`{0}' specified for Main method must be a valid class or struct", main_class);
                                                return;
@@ -1110,13 +1110,13 @@ namespace Mono.CSharp
                }
        }
 
-       abstract class AssemblyReferencesLoader<T>
+       abstract class AssemblyReferencesLoader<T> where T : class
        {
                protected readonly CompilerContext compiler;
 
                protected readonly List<string> paths;
 
-               public AssemblyReferencesLoader (CompilerContext compiler)
+               protected AssemblyReferencesLoader (CompilerContext compiler)
                {
                        this.compiler = compiler;
 
index 61cb8e239275e94c9375e11e2958f804567b6f8d..49595edd0f473212d53faef69c0af454ae60bfbf 100644 (file)
@@ -807,7 +807,9 @@ namespace Mono.CSharp {
                        if (b == null) {
                                if (source is ReducedExpression)
                                        b = ((ReducedExpression) source).OriginalExpression as Binary;
-                               else if (source is Nullable.LiftedBinaryOperator) {
+                               else if (source is ReducedExpression.ReducedConstantExpression) {
+                                       b = ((ReducedExpression.ReducedConstantExpression) source).OriginalExpression as Binary;
+                               } else if (source is Nullable.LiftedBinaryOperator) {
                                        var po = ((Nullable.LiftedBinaryOperator) source);
                                        if (po.UserOperator == null)
                                                b = po.Binary;
index 05f9a63f635fab3773f90e1cd5fedcbb79c8a46f..daa0073136204c4679d02a28290e89e11654c31b 100644 (file)
@@ -221,7 +221,7 @@ namespace Mono.CSharp
 
                public void EmitPrologue (EmitContext ec)
                {
-                       awaiter = ((AsyncTaskStorey) machine_initializer.Storey).AddAwaiter (expr.Type, loc);
+                       awaiter = ((AsyncTaskStorey) machine_initializer.Storey).AddAwaiter (expr.Type);
 
                        var fe_awaiter = new FieldExpr (awaiter, loc);
                        fe_awaiter.InstanceExpression = new CompilerGeneratedThis (ec.CurrentType, loc);
@@ -409,11 +409,6 @@ namespace Mono.CSharp
                        return ctx;
                }
 
-               public override Expression CreateExpressionTree (ResolveContext ec)
-               {
-                       return base.CreateExpressionTree (ec);
-               }
-
                public override void Emit (EmitContext ec)
                {
                        throw new NotImplementedException ();
@@ -483,7 +478,7 @@ namespace Mono.CSharp
 
                #endregion
 
-               public Field AddAwaiter (TypeSpec type, Location loc)
+               public Field AddAwaiter (TypeSpec type)
                {
                        if (mutator != null)
                                type = mutator.Mutate (type);
index 1bc873648327ebb85c87f0de605080c49dbba9e0..87174664d48c31202fac13d59a1e44b2e973b4d8 100644 (file)
@@ -1650,6 +1650,7 @@ namespace Mono.CSharp {
                public readonly PredefinedAttribute UnsafeValueType;
                public readonly PredefinedAttribute UnmanagedFunctionPointer;
                public readonly PredefinedDebuggerBrowsableAttribute DebuggerBrowsable;
+               public readonly PredefinedAttribute DebuggerStepThrough;
 
                // New in .NET 3.5
                public readonly PredefinedAttribute Extension;
@@ -1716,6 +1717,7 @@ namespace Mono.CSharp {
                        UnsafeValueType = new PredefinedAttribute (module, "System.Runtime.CompilerServices", "UnsafeValueTypeAttribute");
                        UnmanagedFunctionPointer = new PredefinedAttribute (module, "System.Runtime.InteropServices", "UnmanagedFunctionPointerAttribute");
                        DebuggerBrowsable = new PredefinedDebuggerBrowsableAttribute (module, "System.Diagnostics", "DebuggerBrowsableAttribute");
+                       DebuggerStepThrough = new PredefinedAttribute (module, "System.Diagnostics", "DebuggerStepThroughAttribute");
 
                        Extension = new PredefinedAttribute (module, "System.Runtime.CompilerServices", "ExtensionAttribute");
 
index 361216652889d2eea740cefa33189a5b8fb9d8d1..96062f2748e744c51360f607ad2de8f492dc889d 100644 (file)
@@ -920,7 +920,7 @@ namespace Mono.CSharp {
 
                                IntConstant sic = right.ConvertImplicitly (ec.BuiltinTypes.Int) as IntConstant;
                                if (sic == null){
-                                       Binary.Error_OperatorCannotBeApplied (ec, left, right, oper, loc); ;
+                                       Binary.Error_OperatorCannotBeApplied (ec, left, right, oper, loc);
                                        return null;
                                }
                                int rshift_val = sic.Value;
index d6e1e8ed2cecfbadcbf52bb3990feb2c8c6a8bca..69c39d5be7a721f0950c56cfced70fd0a3734a52 100644 (file)
@@ -53,7 +53,11 @@ namespace Mono.CSharp
 
                protected bool is_defined;
 
-               public TypeContainer (TypeContainer parent, MemberName name, Attributes attrs, MemberKind kind)
+               public int CounterAnonymousMethods { get; set; }
+               public int CounterAnonymousContainers { get; set; }
+               public int CounterSwitchTypes { get; set; }
+
+               protected TypeContainer (TypeContainer parent, MemberName name, Attributes attrs, MemberKind kind)
                        : base (parent, name, attrs)
                {
                        this.Kind = kind;
@@ -556,7 +560,7 @@ namespace Mono.CSharp
                /// </remarks>
                PendingImplementation pending;
 
-               public TypeDefinition (TypeContainer parent, MemberName name, Attributes attrs, MemberKind kind)
+               protected TypeDefinition (TypeContainer parent, MemberName name, Attributes attrs, MemberKind kind)
                        : base (parent, name, attrs, kind)
                {
                        PartialContainer = this;
@@ -971,7 +975,7 @@ namespace Mono.CSharp
                                        if (s == null) {
                                                s = EmptyExpressionStatement.Instance;
                                        } else if (!fi.IsSideEffectFree) {
-                                               has_complex_initializer |= true;
+                                               has_complex_initializer = true;
                                        }
 
                                        init [i] = s;
@@ -2474,7 +2478,7 @@ namespace Mono.CSharp
 
                SecurityType declarative_security;
 
-               public ClassOrStruct (TypeContainer parent, MemberName name, Attributes attrs, MemberKind kind)
+               protected ClassOrStruct (TypeContainer parent, MemberName name, Attributes attrs, MemberKind kind)
                        : base (parent, name, attrs, kind)
                {
                }
@@ -3137,7 +3141,7 @@ namespace Mono.CSharp
                readonly Modifiers explicit_mod_flags;
                public MethodAttributes flags;
 
-               public InterfaceMemberBase (TypeDefinition parent, FullNamedExpression type, Modifiers mod, Modifiers allowed_mod, MemberName name, Attributes attrs)
+               protected InterfaceMemberBase (TypeDefinition parent, FullNamedExpression type, Modifiers mod, Modifiers allowed_mod, MemberName name, Attributes attrs)
                        : base (parent, type, mod, allowed_mod, Modifiers.PRIVATE, name, attrs)
                {
                        IsInterface = parent.Kind == MemberKind.Interface;
index f51bfab660900ca6aa8dab4783b4e446778341dc..799d81bfac6adb3706ede095c5177c615d7714e4 100644 (file)
@@ -70,7 +70,7 @@ namespace Mono.CSharp {
                        }
                }
 
-               public Constant ImplicitConversionRequired (ResolveContext ec, TypeSpec type, Location loc)
+               public Constant ImplicitConversionRequired (ResolveContext ec, TypeSpec type)
                {
                        Constant c = ConvertImplicitly (type);
                        if (c == null)
index f636ffdb0a004740dad6eacb846f872068f3f54b..49c4f5bfe750cd00db623ae6ff23e63398501e9a 100644 (file)
@@ -73,7 +73,10 @@ namespace Mono.CSharp
 
                readonly TypeSpec return_type;
 
-               public int FlowOffset;
+               //
+               // Tracks the last offset used by VariableInfo
+               //
+               public int AssignmentInfoOffset;
 
                public BlockContext (IMemberContext mc, ExplicitBlock block, TypeSpec returnType)
                        : base (mc)
@@ -325,7 +328,7 @@ namespace Mono.CSharp
                // it's public so that we can use a struct at the callsite
                public struct FlagsHandle : IDisposable
                {
-                       ResolveContext ec;
+                       readonly ResolveContext ec;
                        readonly Options invmask, oldval;
 
                        public FlagsHandle (ResolveContext ec, Options flagsToSet)
@@ -730,7 +733,7 @@ namespace Mono.CSharp
                // it's public so that we can use a struct at the callsite
                public struct FlagsHandle : IDisposable
                {
-                       BuilderContext ec;
+                       readonly BuilderContext ec;
                        readonly Options invmask, oldval;
 
                        public FlagsHandle (BuilderContext ec, Options flagsToSet)
index 2d2d60d3cf3766c686c6b74b8d88361b30a54fca..90c4a871009e0e74a1b37b619bbb587ec4eaa3a2 100644 (file)
@@ -3938,7 +3938,7 @@ unary_expression
                         if (current_anonymous_method is LambdaExpression) {
                                report.Error (4034, GetLocation ($1),
                                        "The `await' operator can only be used when its containing lambda expression is marked with the `async' modifier");
-                       } else if (current_anonymous_method is AnonymousMethodExpression) {
+                       } else if (current_anonymous_method != null) {
                                report.Error (4035, GetLocation ($1),
                                        "The `await' operator can only be used when its containing anonymous method is marked with the `async' modifier");
                        } else if (interactive_async != null) {
index 37447f6df9b474f548b0f7c708b3f66ef719d6fe..3f7f49dbfdd1d0710cab10bca8c99f562a9e149c 100644 (file)
@@ -2391,7 +2391,7 @@ namespace Mono.CSharp
                /// <summary>
                /// Handles #pragma directive
                /// </summary>
-               void ParsePragmaDirective (string arg)
+               void ParsePragmaDirective ()
                {
                        int c;
                        int length = TokenizePreprocessorIdentifier (out c);
@@ -2861,7 +2861,7 @@ namespace Mono.CSharp
                                        Report.FeatureIsNotAvailable (context, Location, "#pragma");
                                }
 
-                               ParsePragmaDirective (arg);
+                               ParsePragmaDirective ();
                                return true;
 
                        case PreprocessorDirective.Line:
index b48e147f5b6711625e765a44d38e01372ec3952d..56d423ad23d6ccb754014c5a28a574cb027f69f1 100644 (file)
@@ -303,7 +303,7 @@ namespace Mono.CSharp {
                /// </summary>
                internal Flags caching_flags;
 
-               public MemberCore (TypeContainer parent, MemberName name, Attributes attrs)
+               protected MemberCore (TypeContainer parent, MemberName name, Attributes attrs)
                {
                        this.Parent = parent;
                        member_name = name;
@@ -435,7 +435,7 @@ namespace Mono.CSharp {
                                if ((mod_flags & Modifiers.COMPILER_GENERATED) != 0)
                                        return true;
 
-                               return Parent == null ? false : Parent.IsCompilerGenerated;
+                               return Parent != null && Parent.IsCompilerGenerated;
                        }
                }
 
@@ -884,7 +884,7 @@ namespace Mono.CSharp {
                                if (GetAttributeObsolete () != null)
                                        return true;
 
-                               return Parent == null ? false : Parent.IsObsolete;
+                               return Parent != null && Parent.IsObsolete;
                        }
                }
 
@@ -893,7 +893,7 @@ namespace Mono.CSharp {
                                if ((ModFlags & Modifiers.UNSAFE) != 0)
                                        return true;
 
-                               return Parent == null ? false : Parent.IsUnsafe;
+                               return Parent != null && Parent.IsUnsafe;
                        }
                }
 
index 46fdb3c9e1555239000539caa08551ed7ee1273f..4abcf6a0ef40a10f85aa879270c0495c22b161f6 100644 (file)
@@ -147,16 +147,13 @@ namespace Mono.CSharp
                                }
 
                                // FIXME: it could be done with XmlReader
-                               var ds_target = mc as TypeContainer;
-                               if (ds_target == null)
-                                       ds_target = mc.Parent;
 
                                foreach (XmlElement see in n.SelectNodes (".//see"))
-                                       HandleSee (mc, ds_target, see);
+                                       HandleSee (mc, see);
                                foreach (XmlElement seealso in n.SelectNodes (".//seealso"))
-                                       HandleSeeAlso (mc, ds_target, seealso);
+                                       HandleSeeAlso (mc, seealso);
                                foreach (XmlElement see in n.SelectNodes (".//exception"))
-                                       HandleException (mc, ds_target, see);
+                                       HandleException (mc, see);
                                foreach (XmlElement node in n.SelectNodes (".//typeparam"))
                                        HandleTypeParam (mc, node);
                                foreach (XmlElement node in n.SelectNodes (".//typeparamref"))
@@ -228,25 +225,25 @@ namespace Mono.CSharp
                //
                // Handles <see> elements.
                //
-               void HandleSee (MemberCore mc, TypeContainer ds, XmlElement see)
+               void HandleSee (MemberCore mc, XmlElement see)
                {
-                       HandleXrefCommon (mc, ds, see);
+                       HandleXrefCommon (mc, see);
                }
 
                //
                // Handles <seealso> elements.
                //
-               void HandleSeeAlso (MemberCore mc, TypeContainer ds, XmlElement seealso)
+               void HandleSeeAlso (MemberCore mc, XmlElement seealso)
                {
-                       HandleXrefCommon (mc, ds, seealso);
+                       HandleXrefCommon (mc, seealso);
                }
 
                //
                // Handles <exception> elements.
                //
-               void HandleException (MemberCore mc, TypeContainer ds, XmlElement seealso)
+               void HandleException (MemberCore mc, XmlElement seealso)
                {
-                       HandleXrefCommon (mc, ds, seealso);
+                       HandleXrefCommon (mc, seealso);
                }
 
                //
@@ -319,7 +316,7 @@ namespace Mono.CSharp
                //
                // Processes "see" or "seealso" elements from cref attribute.
                //
-               void HandleXrefCommon (MemberCore mc, TypeContainer ds, XmlElement xref)
+               void HandleXrefCommon (MemberCore mc, XmlElement xref)
                {
                        string cref = xref.GetAttribute ("cref");
                        // when, XmlReader, "if (cref == null)"
@@ -340,7 +337,7 @@ namespace Mono.CSharp
                        var report = new Report (doc_module.Compiler, new NullReportPrinter ());
 
                        if (session == null)
-                               session = new ParserSession () {
+                               session = new ParserSession {
                                        UseJayGlobalArrays = true
                                };
 
index 45c9719ea6a51b987ade77acc0da32e5fa0b18b5..9dbd05becde51065ab29cbf91e752e76e82406a4 100644 (file)
@@ -78,7 +78,7 @@ namespace Mono.CSharp
 
                        Location.Initialize (sources);
 
-                       var session = new ParserSession () {
+                       var session = new ParserSession {
                                UseJayGlobalArrays = true,
                                LocatedTokens = new LocatedToken[15000]
                        };
index 0246c43a1b67fa9cba25972b19e283fd7558a5b2..2124f0fda088d89e5febb0092edb68e3dd115246 100644 (file)
@@ -224,8 +224,8 @@ namespace Mono.CSharp
                //
                protected class BinderFlags : EnumConstant
                {
-                       DynamicExpressionStatement statement;
-                       CSharpBinderFlags flags;
+                       readonly DynamicExpressionStatement statement;
+                       readonly CSharpBinderFlags flags;
 
                        public BinderFlags (CSharpBinderFlags flags, DynamicExpressionStatement statement)
                                : base (statement.loc)
@@ -391,7 +391,7 @@ namespace Mono.CSharp
                        if (!has_ref_out_argument) {
                                string d_name = isStatement ? "Action" : "Func";
 
-                               TypeExpr te = null;
+                               TypeSpec te = null;
                                Namespace type_ns = module.GlobalRootNamespace.GetNamespace ("System", true);
                                if (type_ns != null) {
                                        te = type_ns.LookupType (module, d_name, dyn_args_count + default_args, LookupMode.Normal, loc);
@@ -412,9 +412,9 @@ namespace Mono.CSharp
                                                targs[targs.Length - 1] = new TypeExpression (t, loc);
                                        }
 
-                                       del_type = new GenericTypeExpr (te.Type, new TypeArguments (targs), loc);
+                                       del_type = new GenericTypeExpr (te, new TypeArguments (targs), loc);
                                        if (targs_for_instance != null)
-                                               del_type_instance_access = new GenericTypeExpr (te.Type, new TypeArguments (targs_for_instance), loc);
+                                               del_type_instance_access = new GenericTypeExpr (te, new TypeArguments (targs_for_instance), loc);
                                        else
                                                del_type_instance_access = del_type;
                                }
index 8366235eb21054bd10f918601347be14ddea15ec..77c74df81157db74389aad6004437012ba7be7b8 100644 (file)
@@ -339,7 +339,7 @@ namespace Mono.CSharp {
                        }
                }
 
-               public void Error_TypeArgumentsCannotBeUsed (IMemberContext context, string exprType, string name, Location loc)
+               public static void Error_TypeArgumentsCannotBeUsed (IMemberContext context, string exprType, string name, Location loc)
                {
                        context.Module.Compiler.Report.Error (307, loc, "The {0} `{1}' cannot be used with type arguments",
                                exprType, name);
@@ -373,6 +373,11 @@ namespace Mono.CSharp {
                        rc.Report.Error (242, loc, "The operation in question is undefined on void pointers");
                }
 
+               public static void Warning_UnreachableExpression (ResolveContext rc, Location loc)
+               {
+                       rc.Report.Warning (429, 4, loc, "Unreachable expression code detected");
+               }
+
                public ResolveFlags ExprClassToResolveFlags {
                        get {
                                switch (eclass) {
@@ -989,7 +994,7 @@ namespace Mono.CSharp {
                /// <summary>
                ///   Reports that we were expecting `expr' to be of class `expected'
                /// </summary>
-               public void Error_UnexpectedKind (IMemberContext ctx, Expression memberExpr, string expected, string was, Location loc)
+               public static void Error_UnexpectedKind (IMemberContext ctx, Expression memberExpr, string expected, string was, Location loc)
                {
                        var name = memberExpr.GetSignatureForError ();
 
@@ -2057,6 +2062,12 @@ namespace Mono.CSharp {
                                this.orig_expr = orig_expr;
                        }
 
+                       public Expression OriginalExpression {
+                               get {
+                                       return orig_expr;
+                               }
+                       }
+
                        public override Constant ConvertImplicitly (TypeSpec target_type)
                        {
                                Constant c = base.ConvertImplicitly (target_type);
@@ -2479,7 +2490,7 @@ namespace Mono.CSharp {
                        if (ctx.CurrentType != null) {
                                var member = MemberLookup (ctx, false, ctx.CurrentType, Name, 0, MemberLookupRestrictions.ExactArity, loc) as MemberExpr;
                                if (member != null) {
-                                       member.Error_UnexpectedKind (ctx, member, "type", member.KindName, loc);
+                                       Error_UnexpectedKind (ctx, member, "type", member.KindName, loc);
                                        return;
                                }
                        }
@@ -2724,7 +2735,7 @@ namespace Mono.CSharp {
                                                } else {
                                                        var me = MemberLookup (rc, false, rc.CurrentType, Name, Arity, restrictions & ~MemberLookupRestrictions.InvocableOnly, loc) as MemberExpr;
                                                        if (me != null) {
-                                                               me.Error_UnexpectedKind (rc, me, "method group", me.KindName, loc);
+                                                               Error_UnexpectedKind (rc, me, "method group", me.KindName, loc);
                                                                return ErrorExpression.Instance;
                                                        }
                                                }
@@ -2770,7 +2781,7 @@ namespace Mono.CSharp {
                                return null;
 
                        if (e is FullNamedExpression && e.eclass != ExprClass.Unresolved) {
-                               e.Error_UnexpectedKind (ec, e, "variable", e.ExprClassName, loc);
+                               Error_UnexpectedKind (ec, e, "variable", e.ExprClassName, loc);
                                return e;
                        }
 
@@ -2827,7 +2838,7 @@ namespace Mono.CSharp {
 
                        TypeExpr te = fne as TypeExpr;
                        if (te == null) {
-                               fne.Error_UnexpectedKind (mc, fne, "type", fne.ExprClassName, loc);
+                               Error_UnexpectedKind (mc, fne, "type", fne.ExprClassName, loc);
                                return null;
                        }
 
@@ -3535,8 +3546,7 @@ namespace Mono.CSharp {
 
                public override bool IsSideEffectFree {
                        get {
-                               return InstanceExpression != null ?
-                                       InstanceExpression.IsSideEffectFree : true;
+                               return InstanceExpression == null || InstanceExpression.IsSideEffectFree;
                        }
                }
 
@@ -5003,8 +5013,7 @@ namespace Mono.CSharp {
                                                }
 
                                                // Restore expanded arguments
-                                               if (candidate_args != args)
-                                                       candidate_args = args;
+                                               candidate_args = args;
                                        }
                                } while (best_candidate_rate != 0 && (type_members = base_provider.GetBaseMembers (type_members[0].DeclaringType.BaseType)) != null);
 
@@ -6745,7 +6754,7 @@ namespace Mono.CSharp {
                        // Don't capture temporary variables except when using
                        // state machine redirection and block yields
                        //
-                       if (ec.CurrentAnonymousMethod != null && ec.CurrentAnonymousMethod is StateMachineInitializer &&
+                       if (ec.CurrentAnonymousMethod is StateMachineInitializer &&
                                (ec.CurrentBlock.Explicit.HasYield || ec.CurrentBlock.Explicit.HasAwait) &&
                                ec.IsVariableCapturingRequired) {
                                AnonymousMethodStorey storey = li.Block.Explicit.CreateAnonymousMethodStorey (ec);
@@ -6804,7 +6813,7 @@ namespace Mono.CSharp {
                        get { return null; }
                }
 
-               public override void VerifyAssigned (ResolveContext rc)
+               public override void VerifyDefiniteAssignment (ResolveContext rc)
                {
                }
        }
index 1081e0e551e55849bf18118da5bab9b941b87d3d..d2a031bd01960a220b28583df64f92fbae01991d 100644 (file)
@@ -66,7 +66,7 @@ namespace Mono.CSharp {
 
                        var underlying = ((Enum) Parent).UnderlyingType;
                        if (expr != null) {
-                               expr = expr.ImplicitConversionRequired (rc, underlying, Location);
+                               expr = expr.ImplicitConversionRequired (rc, underlying);
                                if (expr != null && !IsValidEnumType (expr.Type)) {
                                        Enum.Error_1008 (Location, Report);
                                        expr = null;
index 9607ffd8b7945c0535fe516305dca14b20b2059d..5d9a291b1c51f1c3bc99b1dbfa36b37530c8202f 100644 (file)
@@ -1216,10 +1216,6 @@ namespace Mono.CSharp
        public class Undo
        {
                List<Action> undo_actions;
-               
-               public Undo ()
-               {
-               }
 
                public void AddTypeContainer (TypeContainer current_container, TypeDefinition tc)
                {
index f21fba77c75f353be33d2816b0ba6f0daeeb889f..017af8618e3e8f5c025950c74dbd414c03f0bdb6 100644 (file)
@@ -1319,7 +1319,7 @@ namespace Mono.CSharp
                protected Expression expr;
                protected TypeSpec probe_type_expr;
                
-               public Probe (Expression expr, Expression probe_type, Location l)
+               protected Probe (Expression expr, Expression probe_type, Location l)
                {
                        ProbeType = probe_type;
                        loc = l;
@@ -1505,6 +1505,12 @@ namespace Mono.CSharp
                                //
                                if (Convert.ExplicitReferenceConversionExists (d, t))
                                        return this;
+
+                               //
+                               // open generic type
+                               //
+                               if (d is InflatedTypeSpec && InflatedTypeSpec.ContainsTypeParameter (d))
+                                       return this;
                        } else {
                                var tps = t as TypeParameterSpec;
                                if (tps != null)
@@ -1530,11 +1536,17 @@ namespace Mono.CSharp
                                        }
                                } else {
                                        if (Convert.ImplicitReferenceConversionExists (d, t)) {
+                                               var c = expr as Constant;
+                                               if (c != null)
+                                                       return CreateConstantResult (ec, !c.IsNull);
+
                                                //
                                                // Do not optimize for imported type
                                                //
-                                               if (d.MemberDefinition.IsImported && d.BuiltinType != BuiltinTypeSpec.Type.None)
+                                               if (d.MemberDefinition.IsImported && d.BuiltinType != BuiltinTypeSpec.Type.None &&
+                                                       d.MemberDefinition.DeclaringAssembly != t.MemberDefinition.DeclaringAssembly) {
                                                        return this;
+                                               }
                                                
                                                //
                                                // Turn is check into simple null check for implicitly convertible reference types
@@ -1544,9 +1556,14 @@ namespace Mono.CSharp
                                                        this).Resolve (ec);
                                        }
 
-                                       if (Convert.ExplicitReferenceConversionExists (d, t)) {
+                                       if (Convert.ExplicitReferenceConversionExists (d, t))
+                                               return this;
+
+                                       //
+                                       // open generic type
+                                       //
+                                       if ((d is InflatedTypeSpec || d.IsArray) && InflatedTypeSpec.ContainsTypeParameter (d))
                                                return this;
-                                       }
                                }
                        }
 
@@ -1993,11 +2010,17 @@ namespace Mono.CSharp
                                                        b.left = Convert.ImplicitConversion (rc, b.left, left, b.left.Location);
                                                        return ReducedExpression.Create (b.left, b).Resolve (rc);
                                                }
-                                       } else {
+
                                                //
-                                               // Optimizes
+                                               // Optimizes (value &/&& 0) to 0
                                                //
-                                               // (bool? & true) to bool?
+                                               if ((b.oper == Operator.BitwiseAnd || b.oper == Operator.LogicalAnd) && !IsLifted) {
+                                                       Constant side_effect = new SideEffectConstant (c, b.left, c.Location);
+                                                       return ReducedExpression.Create (side_effect, b);
+                                               }
+                                       } else {
+                                               //
+                                               // Optimizes (bool? & true) to bool?
                                                //
                                                if (IsLifted && left_unwrap.BuiltinType == BuiltinTypeSpec.Type.Bool && b.oper == Operator.BitwiseAnd) {
                                                        return ReducedExpression.Create (b.left, b).Resolve (rc);
@@ -2026,15 +2049,39 @@ namespace Mono.CSharp
                                                        b.right = Convert.ImplicitConversion (rc, b.right, right, b.right.Location);
                                                        return ReducedExpression.Create (b.right, b).Resolve (rc);
                                                }
-                                       } else {
+
                                                //
-                                               // Optimizes
+                                               // Optimizes (false && expr) to false
+                                               //
+                                               if (b.oper == Operator.LogicalAnd && c.Type.BuiltinType == BuiltinTypeSpec.Type.Bool) {
+                                                       // No rhs side-effects
+                                                       Expression.Warning_UnreachableExpression (rc, b.right.StartLocation);
+                                                       return ReducedExpression.Create (c, b);
+                                               }
+
+                                               //
+                                               // Optimizes (0 & value) to 0
                                                //
-                                               // (true & bool?) to bool?
+                                               if (b.oper == Operator.BitwiseAnd && !IsLifted) {
+                                                       Constant side_effect = new SideEffectConstant (c, b.right, c.Location);
+                                                       return ReducedExpression.Create (side_effect, b);
+                                               }
+                                       } else {
+                                               //
+                                               // Optimizes (true & bool?) to bool?
                                                //
                                                if (IsLifted && left_unwrap.BuiltinType == BuiltinTypeSpec.Type.Bool && b.oper == Operator.BitwiseAnd) {
                                                        return ReducedExpression.Create (b.right, b).Resolve (rc);
                                                }
+
+                                               //
+                                               // Optimizes (true || expr) to true
+                                               //
+                                               if (b.oper == Operator.LogicalOr && c.Type.BuiltinType == BuiltinTypeSpec.Type.Bool) {
+                                                       // No rhs side-effects
+                                                       Expression.Warning_UnreachableExpression (rc, b.right.StartLocation);
+                                                       return ReducedExpression.Create (c, b);
+                                               }
                                        }
 
                                        if (b.oper == Operator.Multiply && c.IsOneInteger)
@@ -2845,7 +2892,7 @@ namespace Mono.CSharp
 
                // at least one of 'left' or 'right' is an enumeration constant (EnumConstant or SideEffectConstant or ...)
                // if 'left' is not an enumeration constant, create one from the type of 'right'
-               Constant EnumLiftUp (ResolveContext ec, Constant left, Constant right, Location loc)
+               Constant EnumLiftUp (ResolveContext ec, Constant left, Constant right)
                {
                        switch (oper) {
                        case Operator.BitwiseOr:
@@ -3216,30 +3263,18 @@ namespace Mono.CSharp
                        if (left == null)
                                return null;
 
-                       Constant lc = left as Constant;
-
-                       if (lc != null && lc.Type.BuiltinType == BuiltinTypeSpec.Type.Bool &&
-                               ((oper == Operator.LogicalAnd && lc.IsDefaultValue) ||
-                                (oper == Operator.LogicalOr && !lc.IsDefaultValue))) {
-
-                               // FIXME: resolve right expression as unreachable
-                               // right.Resolve (ec);
-
-                               ec.Report.Warning (429, 4, right.StartLocation, "Unreachable expression code detected");
-                               return left;
-                       }
-
                        right = right.Resolve (ec);
                        if (right == null)
                                return null;
 
+                       Constant lc = left as Constant;
                        Constant rc = right as Constant;
 
                        // The conversion rules are ignored in enum context but why
                        if (!ec.HasSet (ResolveContext.Options.EnumScope) && lc != null && rc != null && (left.Type.IsEnum || right.Type.IsEnum)) {
-                               lc = EnumLiftUp (ec, lc, rc, loc);
+                               lc = EnumLiftUp (ec, lc, rc);
                                if (lc != null)
-                                       rc = EnumLiftUp (ec, rc, lc, loc);
+                                       rc = EnumLiftUp (ec, rc, lc);
                        }
 
                        if (rc != null && lc != null) {
@@ -4012,17 +4047,11 @@ namespace Mono.CSharp
                        if (best_operator == null)
                                return null;
 
-                       var expr = best_operator.ConvertResult (ec, this);
-
-                       if ((oper == Operator.BitwiseAnd || oper == Operator.LogicalAnd) && !best_operator.IsLifted) {
-                               expr = OptimizeAndOperation (expr);
-                       }
-
-                       return expr;
+                       return best_operator.ConvertResult (ec, this);
                }
 
                //
-               // Optimize &/&& constant expressions with 0 value
+               // Optimize & constant expressions with 0 value
                //
                Expression OptimizeAndOperation (Expression expr)
                {
@@ -4950,7 +4979,7 @@ namespace Mono.CSharp
 
        public class PointerArithmetic : Expression {
                Expression left, right;
-               Binary.Operator op;
+               readonly Binary.Operator op;
 
                //
                // We assume that `l' is always a pointer
@@ -5325,8 +5354,8 @@ namespace Mono.CSharp
                                // Don't issue the warning for constant expressions
                                //
                                if (!(is_false ? true_expr is Constant : false_expr is Constant)) {
-                                       ec.Report.Warning (429, 4, is_false ? true_expr.Location : false_expr.Location,
-                                               "Unreachable expression code detected");
+                                       // CSC: Missing warning
+                                       Warning_UnreachableExpression (ec, is_false ? true_expr.Location : false_expr.Location);
                                }
 
                                return ReducedExpression.Create (
@@ -5380,7 +5409,7 @@ namespace Mono.CSharp
                #region Abstract
                public abstract HoistedVariable GetHoistedVariable (AnonymousExpression ae);
                public abstract void SetHasAddressTaken ();
-               public abstract void VerifyAssigned (ResolveContext rc);
+               public abstract void VerifyDefiniteAssignment (ResolveContext rc);
 
                public abstract bool IsLockedByStatement { get; set; }
 
@@ -5613,9 +5642,9 @@ namespace Mono.CSharp
 
                #endregion
 
-               public override void VerifyAssigned (ResolveContext rc)
+               public override void VerifyDefiniteAssignment (ResolveContext rc)
                {
-                       VariableInfo variable_info = local_info.VariableInfo;
+                       VariableInfo variable_info = VariableInfo;
                        if (variable_info == null)
                                return;
 
@@ -5660,7 +5689,7 @@ namespace Mono.CSharp
                {
                        local_info.SetIsUsed ();
 
-                       VerifyAssigned (ec);
+                       VerifyDefiniteAssignment (ec);
 
                        DoResolveBase (ec);
                        return this;
@@ -5880,24 +5909,12 @@ namespace Mono.CSharp
                        return Parameter.ExpressionTreeVariableReference ();
                }
 
-               //
-               // Notice that for ref/out parameters, the type exposed is not the
-               // same type exposed externally.
-               //
-               // for "ref int a":
-               //   externally we expose "int&"
-               //   here we expose       "int".
-               //
-               // We record this in "is_ref".  This means that the type system can treat
-               // the type as it is expected, but when we generate the code, we generate
-               // the alternate kind of code.
-               //
                protected override Expression DoResolve (ResolveContext ec)
                {
                        if (!DoResolveBase (ec))
                                return null;
 
-                       VerifyAssigned (ec);
+                       VerifyDefiniteAssignment (ec);
                        return this;
                }
 
@@ -5910,15 +5927,17 @@ namespace Mono.CSharp
                        return base.DoResolveLValue (ec, right_side);
                }
 
-               public override void VerifyAssigned (ResolveContext rc)
+               public override void VerifyDefiniteAssignment (ResolveContext rc)
                {
-                       // HACK: Variables are not captured in probing mode
-                       if (rc.IsInProbingMode)
+                       VariableInfo variable_info = VariableInfo;
+                       if (variable_info == null)
                                return;
 
-                       if (HasOutModifier && !VariableInfo.IsAssigned (rc)) {
-                               rc.Report.Error (269, loc, "Use of unassigned out parameter `{0}'", Name);
-                       }
+                       if (variable_info.IsAssigned (rc))
+                               return;
+
+                       rc.Report.Error (269, loc, "Use of unassigned out parameter `{0}'", Name);
+                       variable_info.SetAssigned (rc);
                }
        }
        
@@ -6070,7 +6089,7 @@ namespace Mono.CSharp
                                } else {
                                        if (member_expr is RuntimeValueExpression) {
                                                ec.Report.Error (Report.RuntimeErrorId, loc, "Cannot invoke a non-delegate type `{0}'",
-                                                       member_expr.Type.GetSignatureForError ()); ;
+                                                       member_expr.Type.GetSignatureForError ());
                                                return null;
                                        }
 
@@ -6786,7 +6805,7 @@ namespace Mono.CSharp
                protected List<Expression> arguments;
                
                protected TypeSpec array_element_type;
-               int num_arguments = 0;
+               int num_arguments;
                protected int dimensions;
                protected readonly ComposedTypeSpecifier rank;
                Expression first_emit;
@@ -7800,7 +7819,7 @@ namespace Mono.CSharp
                        // Nothing
                }
 
-               public override void VerifyAssigned (ResolveContext rc)
+               public override void VerifyDefiniteAssignment (ResolveContext rc)
                {
                }
                
@@ -8713,7 +8732,7 @@ namespace Mono.CSharp
                                if (sn != null) {
                                        var vr = expr as VariableReference;
                                        if (vr != null)
-                                               vr.VerifyAssigned (rc);
+                                               vr.VerifyDefiniteAssignment (rc);
                                }
 
                                Arguments args = new Arguments (1);
@@ -8753,7 +8772,7 @@ namespace Mono.CSharp
                                                        if (sn != null && !errorMode) {
                                                                var vr = expr as VariableReference;
                                                                if (vr != null)
-                                                                       vr.VerifyAssigned (rc);
+                                                                       vr.VerifyDefiniteAssignment (rc);
                                                        }
 
                                                        // TODO: it should really skip the checks bellow
@@ -8835,7 +8854,7 @@ namespace Mono.CSharp
                        if (sn != null && !(me is FieldExpr && TypeSpec.IsValueType (expr_type))) {
                                var vr = expr as VariableReference;
                                if (vr != null)
-                                       vr.VerifyAssigned (rc);
+                                       vr.VerifyDefiniteAssignment (rc);
                        }
 
                        return me;
@@ -8944,7 +8963,7 @@ namespace Mono.CSharp
 
                        var any_other_member = MemberLookup (rc, false, expr_type, Name, 0, MemberLookupRestrictions.None, loc);
                        if (any_other_member != null) {
-                               any_other_member.Error_UnexpectedKind (rc, any_other_member, "type", any_other_member.ExprClassName, loc);
+                               Error_UnexpectedKind (rc, any_other_member, "type", any_other_member.ExprClassName, loc);
                                return;
                        }
 
@@ -8962,7 +8981,7 @@ namespace Mono.CSharp
                        if (ec.Module.Compiler.Settings.Version > LanguageVersion.ISO_2 && !ec.IsRuntimeBinder && MethodGroupExpr.IsExtensionMethodArgument (expr)) {
                                ec.Report.SymbolRelatedToPreviousError (type);
 
-                               var cand = ec.Module.GlobalRootNamespace.FindExtensionMethodNamespaces (ec, type, name, Arity);
+                               var cand = ec.Module.GlobalRootNamespace.FindExtensionMethodNamespaces (ec, name, Arity);
                                string missing;
                                // a using directive or an assembly reference
                                if (cand != null) {
@@ -11086,11 +11105,6 @@ namespace Mono.CSharp
                        eclass = ExprClass.Value;
                        return this;
                }
-
-               public override void EmitStatement (EmitContext ec)
-               {
-                       base.EmitStatement (ec);
-               }
                
                public override object Accept (StructuralVisitor visitor)
                {
index f5603b4fae4ebecd7daa335c60ed08f4bf131d4f..fa3b07334da6f9a6e2d458de502e49e0df54ed8d 100644 (file)
@@ -370,7 +370,7 @@ namespace Mono.CSharp
        public class FixedField : FieldBase
        {
                public const string FixedElementName = "FixedElementField";
-               static int GlobalCounter = 0;
+               static int GlobalCounter;
 
                TypeBuilder fixed_buffer_type;
 
@@ -400,7 +400,7 @@ namespace Mono.CSharp
 
                public override Constant ConvertInitializer (ResolveContext rc, Constant expr)
                {
-                       return expr.ImplicitConversionRequired (rc, rc.BuiltinTypes.Int, Location);
+                       return expr.ImplicitConversionRequired (rc, rc.BuiltinTypes.Int);
                }
 
                public override bool Define ()
index 4fee5a1f707ac72a1ed102aabc7701f259be7778..3e2b2c82dab33511775ee9740b9964bab188c3b2 100644 (file)
@@ -1317,14 +1317,16 @@ namespace Mono.CSharp
                }
        }
 
-       // <summary>
-       //   This is used by the flow analysis code to store information about a single local variable
-       //   or parameter.  Depending on the variable's type, we need to allocate one or more elements
-       //   in the BitVector - if it's a fundamental or reference type, we just need to know whether
-       //   it has been assigned or not, but for structs, we need this information for each of its fields.
-       // </summary>
-       public class VariableInfo {
+       //
+       // This is used by definite assignment analysis code to store information about a local variable
+       // or parameter.  Depending on the variable's type, we need to allocate one or more elements
+       // in the BitVector - if it's a fundamental or reference type, we just need to know whether
+       // it has been assigned or not, but for structs, we need this information for each of its fields.
+       //
+       public class VariableInfo
+       {
                readonly string Name;
+
                readonly TypeInfo TypeInfo;
 
                // <summary>
@@ -1337,12 +1339,12 @@ namespace Mono.CSharp
                //   The first bit always specifies whether the variable as such has been assigned while
                //   the remaining bits contain this information for each of a struct's fields.
                // </summary>
-               public readonly int Length;
+               readonly int Length;
 
                // <summary>
                //   If this is a parameter of local variable.
                // </summary>
-               public readonly bool IsParameter;
+               public bool IsParameter;
 
                VariableInfo[] sub_info;
 
@@ -1369,7 +1371,7 @@ namespace Mono.CSharp
                        Initialize ();
                }
 
-               protected void Initialize ()
+               void Initialize ()
                {
                        TypeInfo[] sub_fields = TypeInfo.SubStructInfo;
                        if (sub_fields != null) {
@@ -1382,16 +1384,21 @@ namespace Mono.CSharp
                                sub_info = new VariableInfo [0];
                }
 
-               public VariableInfo (LocalVariable local_info, int offset)
-                       : this (local_info.Name, local_info.Type, offset)
+               public static VariableInfo Create (BlockContext bc, LocalVariable variable)
                {
-                       this.IsParameter = false;
+                       var info = new VariableInfo (variable.Name, variable.Type, bc.AssignmentInfoOffset);
+                       bc.AssignmentInfoOffset += info.Length;
+                       return info;
                }
 
-               public VariableInfo (ParametersCompiled ip, int i, int offset)
-                       : this (ip.FixedParameters [i].Name, ip.Types [i], offset)
+               public static VariableInfo Create (BlockContext bc, Parameter parameter)
                {
-                       this.IsParameter = true;
+                       var info = new VariableInfo (parameter.Name, parameter.Type, bc.AssignmentInfoOffset) {
+                               IsParameter = true
+                       };
+
+                       bc.AssignmentInfoOffset += info.Length;
+                       return info;
                }
 
                public bool IsAssigned (ResolveContext ec)
index 972e3a8b1c4c5a9cc467b2cb60f0272f870c3aa8..13836984421c838a1ebb27f52be72b66091c30d6 100644 (file)
@@ -117,9 +117,9 @@ namespace Mono.CSharp {
        //
        public class Constraints
        {
-               SimpleMemberName tparam;
-               List<FullNamedExpression> constraints;
-               Location loc;
+               readonly SimpleMemberName tparam;
+               readonly List<FullNamedExpression> constraints;
+               readonly Location loc;
                bool resolved;
                bool resolving;
                
@@ -398,7 +398,7 @@ namespace Mono.CSharp {
        //
        public class TypeParameter : MemberCore, ITypeDefinition
        {
-               static readonly string[] attribute_target = new string [] { "type parameter" };
+               static readonly string[] attribute_target = { "type parameter" };
                
                Constraints constraints;
                GenericTypeParameterBuilder builder;
@@ -2849,7 +2849,7 @@ namespace Mono.CSharp {
                                var mi = Delegate.GetInvokeMethod (t_i);
                                TypeSpec rtype = mi.ReturnType;
 
-                               if (tic.IsReturnTypeNonDependent (ec, mi, rtype)) {
+                               if (tic.IsReturnTypeNonDependent (mi, rtype)) {
                                        // It can be null for default arguments
                                        if (arguments[i] == null)
                                                continue;
@@ -2948,15 +2948,20 @@ namespace Mono.CSharp {
 
                public void AddCommonTypeBound (TypeSpec type)
                {
-                       AddToBounds (new BoundInfo (type, BoundKind.Lower), 0);
+                       AddToBounds (new BoundInfo (type, BoundKind.Lower), 0, false);
                }
 
-               void AddToBounds (BoundInfo bound, int index)
+               public void AddCommonTypeBoundAsync (TypeSpec type)
+               {
+                       AddToBounds (new BoundInfo (type, BoundKind.Lower), 0, true);
+               }
+
+               void AddToBounds (BoundInfo bound, int index, bool voidAllowed)
                {
                        //
                        // Some types cannot be used as type arguments
                        //
-                       if (bound.Type.Kind == MemberKind.Void || bound.Type.IsPointer || bound.Type.IsSpecialRuntimeType ||
+                       if ((bound.Type.Kind == MemberKind.Void && !voidAllowed) || bound.Type.IsPointer || bound.Type.IsSpecialRuntimeType ||
                                bound.Type == InternalType.MethodGroup || bound.Type == InternalType.AnonymousMethod)
                                return;
 
@@ -3030,7 +3035,7 @@ namespace Mono.CSharp {
                        if (pos == -1)
                                return 0;
 
-                       AddToBounds (new BoundInfo (u, BoundKind.Exact), pos);
+                       AddToBounds (new BoundInfo (u, BoundKind.Exact), pos, false);
                        return 1;
                }
 
@@ -3296,7 +3301,7 @@ namespace Mono.CSharp {
                // Tests whether all delegate input arguments are fixed and generic output type
                // requires output type inference 
                //
-               public bool IsReturnTypeNonDependent (ResolveContext ec, MethodSpec invoke, TypeSpec returnType)
+               public bool IsReturnTypeNonDependent (MethodSpec invoke, TypeSpec returnType)
                {
                        AParametersCollection d_parameters = invoke.Parameters;
 
@@ -3361,7 +3366,7 @@ namespace Mono.CSharp {
                        // If V is one of the unfixed type arguments
                        int pos = IsUnfixed (v);
                        if (pos != -1) {
-                               AddToBounds (new BoundInfo (u, inversed ? BoundKind.Upper : BoundKind.Lower), pos);
+                               AddToBounds (new BoundInfo (u, inversed ? BoundKind.Upper : BoundKind.Lower), pos, false);
                                return 1;
                        }                       
 
@@ -3529,7 +3534,7 @@ namespace Mono.CSharp {
                                var invoke = Delegate.GetInvokeMethod (t);
                                TypeSpec rtype = invoke.ReturnType;
 
-                               if (!IsReturnTypeNonDependent (ec, invoke, rtype))
+                               if (!IsReturnTypeNonDependent (invoke, rtype))
                                        return 0;
 
                                // LAMESPEC: Standard does not specify that all methodgroup arguments
index 3e0cb71209c12454f3c66bafd9d5b33b552a32e8..3204ed11a085b849c962ef4b2cc31b8c75b322dc 100644 (file)
@@ -91,12 +91,12 @@ namespace Mono.CSharp
 
                public void ImportAssembly (Assembly assembly, RootNamespace targetNamespace)
                {
-                       // It can be used more than once when importing same assembly
-                       // into 2 or more global aliases
-                       // TODO: Should be just Add
-                       GetAssemblyDefinition (assembly);
-
                        try {
+                               // It can be used more than once when importing same assembly
+                               // into 2 or more global aliases
+                               // TODO: Should be just Add
+                               GetAssemblyDefinition (assembly);
+
                                var all_types = assembly.GetTypes ();
                                ImportTypes (all_types, targetNamespace, true);
 
@@ -226,7 +226,7 @@ namespace Mono.CSharp
                readonly StaticImporter importer;
                readonly Universe domain;
                Assembly corlib;
-               List<Tuple<AssemblyName, string, Assembly>> loaded_names;
+               readonly List<Tuple<AssemblyName, string, Assembly>> loaded_names;
                static readonly Dictionary<string, string[]> sdk_directory;
 
                static StaticLoader ()
index 423ce77d66c0a730b042886a9d7819f965d0fe4a..72538a2da18ecf16cded87dfe6ee278b9feffbfa 100644 (file)
@@ -56,10 +56,10 @@ namespace Mono.CSharp
                        //
                        // Returns true when object at local position has dynamic attribute flag
                        //
-                       public bool IsDynamicObject (MetadataImporter importer)
+                       public bool IsDynamicObject ()
                        {
                                if (provider != null)
-                                       ReadAttribute (importer);
+                                       ReadAttribute ();
 
                                return flags != null && Position < flags.Length && flags[Position];
                        }
@@ -67,15 +67,15 @@ namespace Mono.CSharp
                        //
                        // Returns true when DynamicAttribute exists
                        //
-                       public bool HasDynamicAttribute (MetadataImporter importer)
+                       public bool HasDynamicAttribute ()
                        {
                                if (provider != null)
-                                       ReadAttribute (importer);
+                                       ReadAttribute ();
 
                                return flags != null;
                        }
 
-                       void ReadAttribute (MetadataImporter importer)
+                       void ReadAttribute ()
                        {
                                IList<CustomAttributeData> cad;
                                if (provider is MemberInfo) {
@@ -713,7 +713,7 @@ namespace Mono.CSharp
                        TypeSpec spec;
                        if (import_cache.TryGetValue (type, out spec)) {
                                if (spec.BuiltinType == BuiltinTypeSpec.Type.Object) {
-                                       if (dtype.IsDynamicObject (this))
+                                       if (dtype.IsDynamicObject ())
                                                return module.Compiler.BuiltinTypes.Dynamic;
 
                                        return spec;
@@ -722,7 +722,7 @@ namespace Mono.CSharp
                                if (!spec.IsGeneric || type.IsGenericTypeDefinition)
                                        return spec;
 
-                               if (!dtype.HasDynamicAttribute (this))
+                               if (!dtype.HasDynamicAttribute ())
                                        return spec;
 
                                // We've found same object in the cache but this one has a dynamic custom attribute
@@ -1372,7 +1372,7 @@ namespace Mono.CSharp
                protected AttributesBag cattrs;
                protected readonly MetadataImporter importer;
 
-               public ImportedDefinition (MemberInfo provider, MetadataImporter importer)
+               protected ImportedDefinition (MemberInfo provider, MetadataImporter importer)
                {
                        this.provider = provider;
                        this.importer = importer;
index 841ad5dc31bcc5bc4ef2c326fc515db4ab7a3da5..89e94af3963898f878f9b26d0980e9b7b7b0017c 100644 (file)
@@ -226,7 +226,7 @@ namespace Mono.CSharp {
                                                continue;
 
                                        if (list is MemberSpec[]) {
-                                               list = new List<MemberSpec> () { list [0] };
+                                               list = new List<MemberSpec> { list [0] };
                                                member_hash[entry.Key] = list;
                                        }
 
@@ -335,7 +335,7 @@ namespace Mono.CSharp {
                                        member_hash[name] = list;
                        } else {
                                if (list.Count == 1) {
-                                       list = new List<MemberSpec> () { list[0] };
+                                       list = new List<MemberSpec> { list[0] };
                                        member_hash[name] = list;
                                }
 
@@ -390,7 +390,7 @@ namespace Mono.CSharp {
                        }
 
                        if (existing.Count == 1) {
-                               existing = new List<MemberSpec> () { existing[0], member };
+                               existing = new List<MemberSpec> { existing[0], member };
                                return true;
                        }
 
index fe08a9bfbc77f1991d07b9971d724de750f90039..03568fa9230613951753346426259123f20e93b0 100644 (file)
@@ -47,7 +47,7 @@ namespace Mono.CSharp {
                protected ToplevelBlock block;
                protected MethodSpec spec;
 
-               public MethodCore (TypeDefinition parent, FullNamedExpression type, Modifiers mod, Modifiers allowed_mod,
+               protected MethodCore (TypeDefinition parent, FullNamedExpression type, Modifiers mod, Modifiers allowed_mod,
                        MemberName name, Attributes attrs, ParametersCompiled parameters)
                        : base (parent, type, mod, allowed_mod, name, attrs)
                {
@@ -685,6 +685,8 @@ namespace Mono.CSharp {
                                Module.PredefinedAttributes.CompilerGenerated.EmitAttribute (MethodBuilder);
                        if ((ModFlags & Modifiers.DEBUGGER_HIDDEN) != 0)
                                Module.PredefinedAttributes.DebuggerHidden.EmitAttribute (MethodBuilder);
+                       if ((ModFlags & Modifiers.DEBUGGER_STEP_THROUGH) != 0)
+                               Module.PredefinedAttributes.DebuggerStepThrough.EmitAttribute (MethodBuilder);
 
                        if (ReturnType.BuiltinType == BuiltinTypeSpec.Type.Dynamic) {
                                return_attributes = new ReturnParameter (this, MethodBuilder, Location);
@@ -1232,7 +1234,7 @@ namespace Mono.CSharp {
                                        }
 
                                        block = (ToplevelBlock) block.ConvertToAsyncTask (this, Parent.PartialContainer, parameters, ReturnType, null, Location);
-                                       ModFlags |= Modifiers.DEBUGGER_HIDDEN;
+                                       ModFlags |= Modifiers.DEBUGGER_STEP_THROUGH;
                                }
 
                                if (Compiler.Settings.WriteMetadataOnly)
@@ -1403,7 +1405,7 @@ namespace Mono.CSharp {
                Arguments argument_list;
                MethodSpec base_ctor;
 
-               public ConstructorInitializer (Arguments argument_list, Location loc)
+               protected ConstructorInitializer (Arguments argument_list, Location loc)
                {
                        this.argument_list = argument_list;
                        this.loc = loc;
@@ -2265,7 +2267,7 @@ namespace Mono.CSharp {
 
                ReturnParameter return_attributes;
 
-               public AbstractPropertyEventMethod (InterfaceMemberBase member, string prefix, Attributes attrs, Location loc)
+               protected AbstractPropertyEventMethod (InterfaceMemberBase member, string prefix, Attributes attrs, Location loc)
                        : base (member.Parent, SetupName (prefix, member, loc), attrs)
                {
                        this.prefix = prefix;
index f842410c7f74461ea15a897f31f603e66f414581..970e8dedd71108a70e1402940573f1748f0d7191 100644 (file)
@@ -51,6 +51,7 @@ namespace Mono.CSharp
                COMPILER_GENERATED              = 0x100000,
                BACKING_FIELD                   = 0x200000,
                DEBUGGER_HIDDEN                 = 0x400000,
+               DEBUGGER_STEP_THROUGH   = 0x800000,
 
                AccessibilityMask = PUBLIC | PROTECTED | INTERNAL | PRIVATE,
                AllowedExplicitImplFlags = UNSAFE | EXTERN,
index ceb73afc743f3fade798f311f549721e88ef43fe..e7e02a0bf14d7f0a1fe29840919fcb06dac0f745 100644 (file)
@@ -187,9 +187,6 @@ namespace Mono.CSharp
                }
 
                public int CounterAnonymousTypes { get; set; }
-               public int CounterAnonymousMethods { get; set; }
-               public int CounterAnonymousContainers { get; set; }
-               public int CounterSwitchTypes { get; set; }
 
                public AssemblyDefinition DeclaringAssembly {
                        get {
index 4e7c58472f45787c93b8f8e0c14386a878be7b08..6a6f17e8e9d7ceee288929f262704b4b5ad924f6 100644 (file)
@@ -64,12 +64,12 @@ namespace Mono.CSharp {
                //
                // For better error reporting where compiler tries to guess missing using directive
                //
-               public List<string> FindExtensionMethodNamespaces (IMemberContext ctx, TypeSpec extensionType, string name, int arity)
+               public List<string> FindExtensionMethodNamespaces (IMemberContext ctx, string name, int arity)
                {
                        List<string> res = null;
 
                        foreach (var ns in all_namespaces) {
-                               var methods = ns.Value.LookupExtensionMethod (ctx, extensionType, name, arity);
+                               var methods = ns.Value.LookupExtensionMethod (ctx, name, arity);
                                if (methods != null) {
                                        if (res == null)
                                                res = new List<string> ();
@@ -125,7 +125,7 @@ namespace Mono.CSharp {
                protected Dictionary<string, Namespace> namespaces;
                protected Dictionary<string, IList<TypeSpec>> types;
                List<TypeSpec> extension_method_types;
-               Dictionary<string, TypeExpr> cached_types;
+               Dictionary<string, TypeSpec> cached_types;
                RootNamespace root;
                bool cls_checked;
 
@@ -171,7 +171,7 @@ namespace Mono.CSharp {
                                MemberName = new MemberName (name, Location.Null);
 
                        namespaces = new Dictionary<string, Namespace> ();
-                       cached_types = new Dictionary<string, TypeExpr> ();
+                       cached_types = new Dictionary<string, TypeSpec> ();
 
                        root.RegisterNamespace (this);
                }
@@ -204,14 +204,14 @@ namespace Mono.CSharp {
                {
                        var retval = LookupType (ctx, name, arity, LookupMode.IgnoreAccessibility, loc);
                        if (retval != null) {
-                               ctx.Module.Compiler.Report.SymbolRelatedToPreviousError (retval.Type);
+//                             ctx.Module.Compiler.Report.SymbolRelatedToPreviousError (retval.MemberDefinition);
                                ErrorIsInaccesible (ctx, retval.GetSignatureForError (), loc);
                                return;
                        }
 
                        retval = LookupType (ctx, name, -System.Math.Max (1, arity), LookupMode.Probing, loc);
                        if (retval != null) {
-                               Error_TypeArgumentsCannotBeUsed (ctx, retval.Type, loc);
+                               Error_TypeArgumentsCannotBeUsed (ctx, retval, loc);
                                return;
                        }
 
@@ -327,20 +327,21 @@ namespace Mono.CSharp {
                        return found;
                }
 
-               public TypeExpr LookupType (IMemberContext ctx, string name, int arity, LookupMode mode, Location loc)
+               public TypeSpec LookupType (IMemberContext ctx, string name, int arity, LookupMode mode, Location loc)
                {
                        if (types == null)
                                return null;
 
-                       TypeExpr te;
-                       if (arity == 0 && cached_types.TryGetValue (name, out te))
-                               return te;
+                       TypeSpec best = null;
+                       if (arity == 0 && cached_types.TryGetValue (name, out best)) {
+                               if (best != null || mode != LookupMode.IgnoreAccessibility)
+                                       return best;
+                       }
 
                        IList<TypeSpec> found;
                        if (!types.TryGetValue (name, out found))
                                return null;
 
-                       TypeSpec best = null;
                        foreach (var ts in found) {
                                if (ts.Arity == arity) {
                                        if (best == null) {
@@ -391,16 +392,11 @@ namespace Mono.CSharp {
                                }
                        }
 
-                       if (best == null)
-                               return null;
-
-                       te = new TypeExpression (best, Location.Null);
-
                        // TODO MemberCache: Cache more
                        if (arity == 0 && mode == LookupMode.Normal)
-                               cached_types.Add (name, te);
+                               cached_types.Add (name, best);
 
-                       return te;
+                       return best;
                }
 
                public FullNamedExpression LookupTypeOrNamespace (IMemberContext ctx, string name, int arity, LookupMode mode, Location loc)
@@ -413,18 +409,21 @@ namespace Mono.CSharp {
                                        return ns;
 
                                if (mode != LookupMode.Probing) {
-                                       ctx.Module.Compiler.Report.SymbolRelatedToPreviousError (texpr.Type);
+                                       //ctx.Module.Compiler.Report.SymbolRelatedToPreviousError (texpr.Type);
                                        // ctx.Module.Compiler.Report.SymbolRelatedToPreviousError (ns.loc, "");
                                        ctx.Module.Compiler.Report.Warning (437, 2, loc,
                                                "The type `{0}' conflicts with the imported namespace `{1}'. Using the definition found in the source file",
                                                texpr.GetSignatureForError (), ns.GetSignatureForError ());
                                }
 
-                               if (texpr.Type.MemberDefinition.IsImported)
+                               if (texpr.MemberDefinition.IsImported)
                                        return ns;
                        }
 
-                       return texpr;
+                       if (texpr == null)
+                               return null;
+
+                       return new TypeExpression (texpr, loc);
                }
 
                //
@@ -448,7 +447,7 @@ namespace Mono.CSharp {
                // 
                // Looks for extension method in this namespace
                //
-               public List<MethodSpec> LookupExtensionMethod (IMemberContext invocationContext, TypeSpec extensionType, string name, int arity)
+               public List<MethodSpec> LookupExtensionMethod (IMemberContext invocationContext, string name, int arity)
                {
                        if (extension_method_types == null)
                                return null;
@@ -730,7 +729,7 @@ namespace Mono.CSharp {
                void CreateUnitSymbolInfo (MonoSymbolFile symwriter)
                {
                        var si = file.CreateSymbolInfo (symwriter);
-                       comp_unit = new CompileUnitEntry (symwriter, si);;
+                       comp_unit = new CompileUnitEntry (symwriter, si);
 
                        if (include_files != null) {
                                foreach (SourceFile include in include_files.Values) {
@@ -873,7 +872,7 @@ namespace Mono.CSharp {
                public override void AddPartial (TypeDefinition next_part)
                {
                        var existing = ns.LookupType (this, next_part.MemberName.Name, next_part.MemberName.Arity, LookupMode.Probing, Location.Null);
-                       var td = existing != null ? existing.Type.MemberDefinition as TypeDefinition : null;
+                       var td = existing != null ? existing.MemberDefinition as TypeDefinition : null;
                        AddPartial (next_part, td);
                }
 
@@ -969,7 +968,7 @@ namespace Mono.CSharp {
                        ExtensionMethodCandidates candidates;
                        var container = this;
                        do {
-                               candidates = container.LookupExtensionMethodCandidates (invocationContext, extensionType, name, arity, ref position);
+                               candidates = container.LookupExtensionMethodCandidates (invocationContext, name, arity, ref position);
                                if (candidates != null || container.MemberName == null)
                                        return candidates;
 
@@ -984,7 +983,7 @@ namespace Mono.CSharp {
                                while (mn != null) {
                                        ++position;
 
-                                       var methods = container_ns.LookupExtensionMethod (invocationContext, extensionType, name, arity);
+                                       var methods = container_ns.LookupExtensionMethod (invocationContext, name, arity);
                                        if (methods != null) {
                                                return new ExtensionMethodCandidates (invocationContext, methods, container, position);
                                        }
@@ -1000,14 +999,14 @@ namespace Mono.CSharp {
                        return null;
                }
 
-               ExtensionMethodCandidates LookupExtensionMethodCandidates (IMemberContext invocationContext, TypeSpec extensionType, string name, int arity, ref int position)
+               ExtensionMethodCandidates LookupExtensionMethodCandidates (IMemberContext invocationContext, string name, int arity, ref int position)
                {
                        List<MethodSpec> candidates = null;
 
                        if (position == 0) {
                                ++position;
 
-                               candidates = ns.LookupExtensionMethod (invocationContext, extensionType, name, arity);
+                               candidates = ns.LookupExtensionMethod (invocationContext, name, arity);
                                if (candidates != null) {
                                        return new ExtensionMethodCandidates (invocationContext, candidates, this, position);
                                }
@@ -1017,7 +1016,7 @@ namespace Mono.CSharp {
                                ++position;
 
                                foreach (Namespace n in namespace_using_table) {
-                                       var a = n.LookupExtensionMethod (invocationContext, extensionType, name, arity);
+                                       var a = n.LookupExtensionMethod (invocationContext, name, arity);
                                        if (a == null)
                                                continue;
 
@@ -1172,10 +1171,11 @@ namespace Mono.CSharp {
                                // A using directive imports only types contained in the namespace, it
                                // does not import any nested namespaces
                                //
-                               fne = using_ns.LookupType (this, name, arity, mode, loc);
-                               if (fne == null)
+                               var t = using_ns.LookupType (this, name, arity, mode, loc);
+                               if (t == null)
                                        continue;
 
+                               fne = new TypeExpression (t, loc);
                                if (match == null) {
                                        match = fne;
                                        continue;
index 5e82efa85c50f2f0d382d6b977cfaac143601b0f..1732a9b9c5c46edda117e4104b1d1637ad617bda 100644 (file)
@@ -1145,7 +1145,7 @@ namespace Mono.CSharp.Nullable
                        }
 
                        TypeSpec rtype = right.Type;
-                       if (!Convert.ImplicitConversionExists (ec, unwrap != null ? unwrap : left, rtype) || right.eclass == ExprClass.MethodGroup)
+                       if (!Convert.ImplicitConversionExists (ec, unwrap ?? left, rtype) || right.eclass == ExprClass.MethodGroup)
                                return null;
 
                        //
@@ -1154,7 +1154,7 @@ namespace Mono.CSharp.Nullable
                        if (left.IsNull)
                                return ReducedExpression.Create (right, this).Resolve (ec);
 
-                       left = Convert.ImplicitConversion (ec, unwrap != null ? unwrap : left, rtype, loc);
+                       left = Convert.ImplicitConversion (ec, unwrap ?? left, rtype, loc);
                        type = rtype;
                        return this;
                }
index fb940b4c2269c2f9f90fa966ee7f6ce515bba06a..bcd814149a28d60acc37e3c10fb9927bda02cae7 100644 (file)
@@ -501,7 +501,7 @@ namespace Mono.CSharp {
                                        } else {
                                                rc.Report.Error (1909, default_expr.Location,
                                                        "The DefaultParameterValue attribute is not applicable on parameters of type `{0}'",
-                                                       default_expr.Type.GetSignatureForError ()); ;
+                                                       default_expr.Type.GetSignatureForError ());
                                        }
 
                                        default_expr = null;
@@ -1333,11 +1333,6 @@ namespace Mono.CSharp {
                {
                }
 
-               protected override Expression DoResolve (ResolveContext rc)
-               {
-                       return base.DoResolve (rc);
-               }
-
                public void Resolve (ResolveContext rc, Parameter p)
                {
                        var expr = Resolve (rc);
index 0c8b3c52973fdf45f5bd0e8a1e6ee55f6534fa21..eb95d388da7cd20bcb61921abc30df502b5c62a2 100644 (file)
@@ -408,7 +408,7 @@ namespace Mono.CSharp
                PropertyMethod get, set, first;
                PropertyBuilder PropertyBuilder;
 
-               public PropertyBase (TypeDefinition parent, FullNamedExpression type, Modifiers mod_flags, Modifiers allowed_mod, MemberName name, Attributes attrs)
+               protected PropertyBase (TypeDefinition parent, FullNamedExpression type, Modifiers mod_flags, Modifiers allowed_mod, MemberName name, Attributes attrs)
                        : base (parent, type, mod_flags, allowed_mod, name, attrs)
                {
                }
index f49a2980d7aa08a37ad608d4a1e958b934a35208..009007b0d529ca45d1cc0de85de61a5cb4f1dab8 100644 (file)
@@ -954,7 +954,7 @@ namespace Mono.CSharp {
                        if (timers == null)
                                return;
 
-                       Dictionary<TimerType, string> timer_names = new Dictionary<TimerType,string> () {
+                       Dictionary<TimerType, string> timer_names = new Dictionary<TimerType,string> {
                                { TimerType.ParseTotal, "Parsing source files" },
                                { TimerType.AssemblyBuilderSetup, "Assembly builder setup" },
                                { TimerType.CreateTypeTotal, "Compiled types created" },
@@ -1053,7 +1053,7 @@ namespace Mono.CSharp {
 
                        public override bool IsEnabled (int code, bool previous)
                        {
-                               return this.code == code ? false : previous;
+                               return this.code != code && previous;
                        }
                }
 
@@ -1079,7 +1079,7 @@ namespace Mono.CSharp {
 
                        public override bool IsEnabled(int code, bool previous)
                        {
-                               return this.code == code ? true : previous;
+                               return this.code == code || previous;
                        }
                }
 
index c1b0a32e01bb2a564012bff43f63f5f68c924521..eaac5974126955f51533576127d8b57967e548bc 100644 (file)
@@ -301,8 +301,8 @@ namespace Mono.CSharp {
                        UnknownOption
                }
 
-               static readonly char[] argument_value_separator = new char[] { ';', ',' };
-               static readonly char[] numeric_value_separator = new char[] { ';', ',', ' ' };
+               static readonly char[] argument_value_separator = { ';', ',' };
+               static readonly char[] numeric_value_separator = { ';', ',', ' ' };
 
                readonly TextWriter output;
                readonly Report report;
@@ -469,7 +469,7 @@ namespace Mono.CSharp {
                                return;
                        }
 
-                       string[] files = null;
+                       string[] files;
                        try {
                                files = Directory.GetFiles (path, pattern);
                        } catch (System.IO.DirectoryNotFoundException) {
@@ -975,7 +975,7 @@ namespace Mono.CSharp {
                                        settings.WarningsAreErrors = true;
                                        parser_settings.WarningsAreErrors = true;
                                } else {
-                                       if (!ProcessWarningsList (value, v => settings.AddWarningAsError (v)))
+                                       if (!ProcessWarningsList (value, settings.AddWarningAsError))
                                                return ParseResult.Error;
                                }
                                return ParseResult.Success;
@@ -984,7 +984,7 @@ namespace Mono.CSharp {
                                if (value.Length == 0) {
                                        settings.WarningsAreErrors = false;
                                } else {
-                                       if (!ProcessWarningsList (value, v => settings.AddWarningOnly (v)))
+                                       if (!ProcessWarningsList (value, settings.AddWarningOnly))
                                                return ParseResult.Error;
                                }
                                return ParseResult.Success;
@@ -1005,7 +1005,7 @@ namespace Mono.CSharp {
                                        return ParseResult.Error;
                                }
 
-                               if (!ProcessWarningsList (value, v => settings.SetIgnoreWarning (v)))
+                               if (!ProcessWarningsList (value, settings.SetIgnoreWarning))
                                        return ParseResult.Error;
 
                                return ParseResult.Success;
index b56cbf3c88d75b30bc33bdda458b0cb29b21238c..b9bb8302eaca16d14aba215ba3268124e1577bb6 100644 (file)
@@ -28,7 +28,7 @@ namespace Mono.CSharp {
                /// <summary>
                ///   Resolves the statement, true means that all sub-statements
                ///   did resolve ok.
-               //  </summary>
+               ///  </summary>
                public virtual bool Resolve (BlockContext bc)
                {
                        return true;
@@ -51,6 +51,10 @@ namespace Mono.CSharp {
 
                        bool unreachable = false;
                        if (warn && !ec.UnreachableReported) {
+
+                               // TODO: This is wrong, need to form of flow-analysis branch specific flag
+                               // or multiple unrelared unreachable code won't be reported
+                               // if (false) { // ok } if (false) { // not reported }
                                ec.UnreachableReported = true;
                                unreachable = true;
                                ec.Report.Warning (162, 2, loc, "Unreachable code detected");
@@ -187,7 +191,6 @@ namespace Mono.CSharp {
                                //
                                if (expr is Constant) {
                                        bool take = !((Constant) expr).IsDefaultValue;
-
                                        if (take) {
                                                if (!TrueStatement.Resolve (ec))
                                                        return false;
@@ -751,7 +754,7 @@ namespace Mono.CSharp {
 
                public StatementList (Statement first, Statement second)
                {
-                       statements = new List<Statement> () { first, second };
+                       statements = new List<Statement> { first, second };
                }
 
                #region Properties
@@ -899,7 +902,7 @@ namespace Mono.CSharp {
                                                var async_type = storey.ReturnType;
 
                                                if (async_type == null && async_block.ReturnTypeInference != null) {
-                                                       async_block.ReturnTypeInference.AddCommonTypeBound (expr.Type);
+                                                       async_block.ReturnTypeInference.AddCommonTypeBoundAsync (expr.Type);
                                                        return true;
                                                }
 
@@ -1625,7 +1628,7 @@ namespace Mono.CSharp {
                        if (eval_global) {
                                CreateEvaluatorVariable (bc, li);
                        } else if (type != InternalType.ErrorType) {
-                               li.PrepareForFlowAnalysis (bc);
+                               li.PrepareAssignmentAnalysis (bc);
                        }
 
                        if (initializer != null) {
@@ -1639,7 +1642,7 @@ namespace Mono.CSharp {
                                        if (eval_global) {
                                                CreateEvaluatorVariable (bc, d.Variable);
                                        } else if (type != InternalType.ErrorType) {
-                                               d.Variable.PrepareForFlowAnalysis (bc);
+                                               d.Variable.PrepareAssignmentAnalysis (bc);
                                        }
 
                                        if (d.Initializer != null && resolveDeclaratorInitializers) {
@@ -2017,16 +2020,15 @@ namespace Mono.CSharp {
                        return !ec.DoFlowAnalysis || ec.CurrentBranching.IsAssigned (VariableInfo);
                }
 
-               public void PrepareForFlowAnalysis (BlockContext bc)
+               public void PrepareAssignmentAnalysis (BlockContext bc)
                {
                        //
-                       // No need for definitely assigned check for these guys
+                       // No need to run assignment analysis for these guys
                        //
                        if ((flags & (Flags.Constant | Flags.ReadonlyMask | Flags.CompilerGenerated)) != 0)
                                return;
 
-                       VariableInfo = new VariableInfo (this, bc.FlowOffset);
-                       bc.FlowOffset += VariableInfo.Length;
+                       VariableInfo = VariableInfo.Create (bc, this);
                }
 
                //
@@ -2609,7 +2611,7 @@ namespace Mono.CSharp {
                                                        continue;
 
                                                if (storey.HoistedThis == null) {
-                                                       storey.AddCapturedThisField (ec);
+                                                       storey.AddCapturedThisField (ec, null);
                                                }
 
                                                for (ExplicitBlock b = ref_block; b.AnonymousMethodStorey != storey; b = b.Parent.Explicit) {
@@ -2628,8 +2630,10 @@ namespace Mono.CSharp {
                                                                                        break;
                                                                        }
 
+                                                                       // Needs to be in sync with AnonymousMethodBody::DoCreateMethodHost
                                                                        if (s == null) {
-                                                                               b.AnonymousMethodStorey.AddCapturedThisField (ec);
+                                                                               var parent = storey == null || storey.Kind == MemberKind.Struct ? null : storey;
+                                                                               b.AnonymousMethodStorey.AddCapturedThisField (ec, parent);
                                                                                break;
                                                                        }
                                                                }
@@ -2664,7 +2668,7 @@ namespace Mono.CSharp {
                                                                }
 
                                                                if (parent_storey_block.AnonymousMethodStorey == null) {
-                                                                       pb.StateMachine.AddCapturedThisField (ec);
+                                                                       pb.StateMachine.AddCapturedThisField (ec, null);
                                                                        b.HasCapturedThis = true;
                                                                        continue;
                                                                }
@@ -3089,7 +3093,7 @@ namespace Mono.CSharp {
                                flags |= Flags.IsExpressionTree;
 
                        try {
-                               ResolveMeta (rc);
+                               PrepareAssignmentAnalysis (rc);
 
                                using (rc.With (ResolveContext.Options.DoFlowAnalysis, true)) {
                                        FlowBranchingToplevel top_level = rc.StartFlowBranching (this, parent);
@@ -3145,19 +3149,15 @@ namespace Mono.CSharp {
                        return true;
                }
 
-               void ResolveMeta (BlockContext ec)
+               void PrepareAssignmentAnalysis (BlockContext bc)
                {
-                       int orig_count = parameters.Count;
-
-                       for (int i = 0; i < orig_count; ++i) {
-                               Parameter.Modifier mod = parameters.FixedParameters[i].ModFlags;
+                       for (int i = 0; i < parameters.Count; ++i) {
+                               var par = parameters.FixedParameters[i];
 
-                               if ((mod & Parameter.Modifier.OUT) == 0)
+                               if ((par.ModFlags & Parameter.Modifier.OUT) == 0)
                                        continue;
 
-                               VariableInfo vi = new VariableInfo (parameters, i, ec.FlowOffset);
-                               parameter_info[i].VariableInfo = vi;
-                               ec.FlowOffset += vi.Length;
+                               parameter_info [i].VariableInfo = VariableInfo.Create (bc, (Parameter) par);
                        }
                }
 
@@ -3571,7 +3571,7 @@ namespace Mono.CSharp {
 
                        this_variable = new LocalVariable (this, "this", LocalVariable.Flags.IsThis | LocalVariable.Flags.Used, StartLocation);
                        this_variable.Type = bc.CurrentType;
-                       this_variable.PrepareForFlowAnalysis (bc);
+                       this_variable.PrepareAssignmentAnalysis (bc);
                }
 
                public bool IsThisAssigned (BlockContext ec)
@@ -3711,7 +3711,7 @@ namespace Mono.CSharp {
                                return true;
                        }
 
-                       converted = c.ImplicitConversionRequired (rc, rc.Switch.SwitchType, loc);
+                       converted = c.ImplicitConversionRequired (rc, rc.Switch.SwitchType);
                        return converted != null;
                }
 
@@ -5126,7 +5126,7 @@ namespace Mono.CSharp {
                {
                        LocalVariable pinned_string;
 
-                       public StringEmitter (Expression expr, LocalVariable li, Location loc)
+                       public StringEmitter (Expression expr, LocalVariable li)
                                : base (expr, li)
                        {
                        }
@@ -5249,7 +5249,7 @@ namespace Mono.CSharp {
                                // Case 2: string
                                //
                                if (initializer.Type.BuiltinType == BuiltinTypeSpec.Type.String) {
-                                       return new StringEmitter (initializer, li, loc).Resolve (bc);
+                                       return new StringEmitter (initializer, li).Resolve (bc);
                                }
 
                                // Case 3: fixed buffer
@@ -5457,7 +5457,7 @@ namespace Mono.CSharp {
                                                ec.Report.Error (155, loc, "The type caught or thrown must be derived from System.Exception");
                                        } else if (li != null) {
                                                li.Type = type;
-                                               li.PrepareForFlowAnalysis (ec);
+                                               li.PrepareAssignmentAnalysis (ec);
 
                                                // source variable is at the top of the stack
                                                Expression source = new EmptyExpression (li.Type);
index be59fc64afe04fcc731c615549f1751dc5309c1a..10874fecc65e0333a0b325b7c7e2aa425ab4b086 100644 (file)
@@ -378,7 +378,7 @@ namespace Mono.CSharp
                                throw new InternalErrorException ("Modifying expanded interface list");
 
                        if (ifaces == null) {
-                               ifaces = new List<TypeSpec> () { iface };
+                               ifaces = new List<TypeSpec> { iface };
                                return true;
                        }
 
index 8c9c43a16023869b9c1d343fbb6218f9e4c4c313..7596032d16fcf14d71e45222d72469f2d00056f5 100644 (file)
@@ -88,4 +88,13 @@ class C
                
                return 0;
        }
+       
+       // This does not look right but C# spec needs tidying up to special case it
+       void BrokenLiftedNull ()
+       {
+               int i = 44;
+               int? u = null;
+               i <<= u;
+               i <<= null;
+       }
 }
\ No newline at end of file
index 9def4cd52c8f9c53a670f9f5c92c3a2b253e3ebf..615312c36b299d98b9c13c7753d2307988b4dfd8 100644 (file)
@@ -9,12 +9,23 @@ public class G<U, V> : IA<G<V, string>>
 
 public class C
 {
+       static bool Test_2 <T2>(T2[] t)
+       {
+               return t is byte[];
+       }
+
        public static int Main ()
        {
                G<long, short> p = new G<long, short> ();
                if (p is IA<G<string, string>>)
                        return 1;
 
+               if (Test_2 (new int [0]))
+                       return 2;
+
+               if (!Test_2 (new byte [0]))
+                       return 3;
+
                return 0;
        }
 }
\ No newline at end of file
diff --git a/mcs/tests/gtest-597.cs b/mcs/tests/gtest-597.cs
new file mode 100644 (file)
index 0000000..cbf9e73
--- /dev/null
@@ -0,0 +1,44 @@
+using System;
+
+namespace Test
+{
+       class MainClass
+       {
+               public static int Main ()
+               {
+                       if (!Test_1 (new Derived ()))
+                               return 1;
+
+                       if (!Test_2 (new S ()))
+                               return 2;
+
+                       return 0;
+               }
+
+               static bool Test_1<T> (Templated<T> template)
+               {
+                       return template is Derived;
+               }
+
+               static bool Test_2<U> (IA<U> arg)
+               {
+                       return arg is S;
+               }
+       }
+
+       public abstract class Templated<T>
+       {
+       }
+
+       public class Derived : Templated<Derived>
+       {
+       }
+
+       public interface IA<T>
+       {
+       }
+
+       public struct S : IA<S>
+       {
+       }
+}
diff --git a/mcs/tests/gtest-iter-30.cs b/mcs/tests/gtest-iter-30.cs
new file mode 100644 (file)
index 0000000..192c82b
--- /dev/null
@@ -0,0 +1,33 @@
+using System;
+using System.Collections.Generic;
+
+public class Program
+{
+       public static void Main ()
+       {
+               foreach (var x in new M ().Test ()) {
+                       Console.WriteLine (x);
+               }
+       }
+}
+
+class M
+{
+       public IEnumerable<int> Test ()
+       {
+               Action a = delegate {
+                       int k = 0;
+                       Action x = delegate {
+                               Console.WriteLine (this);
+                               Console.WriteLine (k);
+                       };
+
+                       x ();
+                       Console.WriteLine (this);
+               };
+
+               a ();
+               
+               yield return 1;
+       }
+}
diff --git a/mcs/tests/gtest-iter-31.cs b/mcs/tests/gtest-iter-31.cs
new file mode 100644 (file)
index 0000000..5bd2ea0
--- /dev/null
@@ -0,0 +1,31 @@
+using System.Collections.Generic;
+using System.Linq;
+
+class B
+{
+       public object Foo (object obj)
+       {
+               return null;
+       }
+}
+
+class C
+{
+       B ctx = new B ();
+
+       public static void Main ()
+       {
+               foreach (var c in new C ().Test ()) {                   
+               }
+       }
+
+       IEnumerable<ushort> Test ()
+       {
+               string[] s = new[] { "a", "b", "c" };
+
+               var m = s.Select (l => ctx.Foo (l)).ToArray ();
+
+               yield break;
+       }
+}
+
diff --git a/mcs/tests/test-870.cs b/mcs/tests/test-870.cs
new file mode 100644 (file)
index 0000000..5faceb7
--- /dev/null
@@ -0,0 +1,17 @@
+public class Test
+{
+       static void Foo (ushort p)
+       {
+               p = 0x0000;
+               p |= 0x0000;
+               p &= 0x0000;
+
+               const ushort c = 0x0000;
+               p &= c;
+       }
+
+       public static void Main ()
+       {
+               Foo (1);
+       }
+}
\ No newline at end of file
diff --git a/mcs/tests/test-871.cs b/mcs/tests/test-871.cs
new file mode 100644 (file)
index 0000000..19ebf8a
--- /dev/null
@@ -0,0 +1,42 @@
+using System;
+
+class D
+{
+       int arg;
+
+       public D (int arg)
+       {
+               this.arg = arg;
+       }
+
+       public static D operator & (D x, D y)
+       {
+               return new D (100);
+       }
+
+       public static bool operator false (D d)
+       {
+               return false;
+       }
+
+       public static bool operator true (D d)
+       {
+               return true;
+       }
+
+       public static implicit operator D(bool b)
+       {
+               return new D (5);
+       }
+
+       static int Main ()
+       {
+               D d = false && new D (1);
+               Console.WriteLine (d.arg);
+               if (d.arg != 100)
+                       return 1;
+
+               Console.WriteLine ("ok");
+               return 0;
+       }
+}
\ No newline at end of file
diff --git a/mcs/tests/test-async-52.cs b/mcs/tests/test-async-52.cs
new file mode 100644 (file)
index 0000000..36230ac
--- /dev/null
@@ -0,0 +1,23 @@
+using System;
+using System.Threading.Tasks;
+
+public delegate T ActualValueDelegate<T> ();
+
+class X
+{
+       public static void Main ()
+       {
+               Matches (async () => await Throw());
+       }
+
+       static bool Matches<T>(ActualValueDelegate<T> del) where T : Task
+       {
+               del ().Wait ();
+               return true;
+       }
+
+       static async Task Throw()
+       {
+               await Task.Delay (1);
+       }
+}
\ No newline at end of file
index e81bea74865747aa25130cfcb2184665e314eb0f..dc38568b3f782acdc81fdf0de96e66a252891a28 100644 (file)
       <method name="Int32 Main()" attrs="150">\r
         <size>187</size>\r
       </method>\r
-      <method name="Void &lt;BinaryAdd_1&gt;m__4(System.Dynamic.BinaryOperationBinder, System.Object)" attrs="145">\r
+      <method name="Void .ctor()" attrs="6278">\r
+        <size>8</size>\r
+      </method>\r
+      <method name="Void .ctor(Object)" attrs="6278">\r
+        <size>8</size>\r
+      </method>\r
+      <method name="Void .cctor()" attrs="6289">\r
+        <size>34</size>\r
+      </method>\r
+    </type>\r
+    <type name="AssertDynamicObject+&lt;GetFakeMetaObject&gt;c__AnonStorey0">\r
+      <method name="Void .ctor()" attrs="6278">\r
+        <size>7</size>\r
+      </method>\r
+    </type>\r
+    <type name="Tester+&lt;InvokeMember_3&gt;c__DynamicSite32+Container0">\r
+      <method name="Void Invoke(System.Runtime.CompilerServices.CallSite, System.Object, Int32 ByRef)" attrs="454">\r
+        <size>0</size>\r
+      </method>\r
+      <method name="Void .ctor(Object, IntPtr)" attrs="6278">\r
+        <size>0</size>\r
+      </method>\r
+    </type>\r
+    <type name="Tester+&lt;InvokeMember_4&gt;c__DynamicSite33+Container0">\r
+      <method name="Void Invoke(System.Runtime.CompilerServices.CallSite, System.Object, Int32 ByRef)" attrs="454">\r
+        <size>0</size>\r
+      </method>\r
+      <method name="Void .ctor(Object, IntPtr)" attrs="6278">\r
+        <size>0</size>\r
+      </method>\r
+    </type>\r
+    <type name="Tester+&lt;InvokeMember_8&gt;c__DynamicSite37+Container0">\r
+      <method name="Void Invoke(System.Runtime.CompilerServices.CallSite, System.Object, System.Object ByRef)" attrs="454">\r
+        <size>0</size>\r
+      </method>\r
+      <method name="Void .ctor(Object, IntPtr)" attrs="6278">\r
+        <size>0</size>\r
+      </method>\r
+    </type>\r
+    <type name="Tester">\r
+      <method name="Void Assert[T](System.Collections.Generic.IList`1[T], System.Collections.Generic.IList`1[T], System.String)" attrs="145">\r
+        <size>257</size>\r
+      </method>\r
+      <method name="Void &lt;BinaryAdd_1&gt;m__0(System.Dynamic.BinaryOperationBinder, System.Object)" attrs="145">\r
         <size>73</size>\r
       </method>\r
-      <method name="Void &lt;BinaryAdd_2&gt;m__5(System.Dynamic.BinaryOperationBinder, System.Object)" attrs="145">\r
+      <method name="Void &lt;BinaryAdd_2&gt;m__1(System.Dynamic.BinaryOperationBinder, System.Object)" attrs="145">\r
         <size>68</size>\r
       </method>\r
-      <method name="Void &lt;BinaryAdd_3&gt;m__6(System.Dynamic.BinaryOperationBinder, System.Object)" attrs="145">\r
+      <method name="Void &lt;BinaryAdd_3&gt;m__2(System.Dynamic.BinaryOperationBinder, System.Object)" attrs="145">\r
         <size>73</size>\r
       </method>\r
-      <method name="Void &lt;BinaryAdd_4&gt;m__7(System.Dynamic.BinaryOperationBinder, System.Object)" attrs="145">\r
+      <method name="Void &lt;BinaryAdd_4&gt;m__3(System.Dynamic.BinaryOperationBinder, System.Object)" attrs="145">\r
         <size>73</size>\r
       </method>\r
-      <method name="Void &lt;BinaryAddChecked_1&gt;m__8(System.Dynamic.BinaryOperationBinder, System.Object)" attrs="145">\r
+      <method name="Void &lt;BinaryAddChecked_1&gt;m__4(System.Dynamic.BinaryOperationBinder, System.Object)" attrs="145">\r
         <size>73</size>\r
       </method>\r
-      <method name="Void &lt;BinaryAddChecked_2&gt;m__9(System.Dynamic.BinaryOperationBinder, System.Object)" attrs="145">\r
+      <method name="Void &lt;BinaryAddChecked_2&gt;m__5(System.Dynamic.BinaryOperationBinder, System.Object)" attrs="145">\r
         <size>73</size>\r
       </method>\r
-      <method name="Void &lt;BinaryAddAssign_1&gt;m__B(System.Dynamic.BinaryOperationBinder, System.Object)" attrs="145">\r
+      <method name="Void &lt;BinaryAddAssign_1&gt;m__6(System.Dynamic.BinaryOperationBinder, System.Object)" attrs="145">\r
         <size>74</size>\r
       </method>\r
-      <method name="Void &lt;BinaryAddAssignChecked_1&gt;m__C(System.Dynamic.BinaryOperationBinder, System.Object)" attrs="145">\r
+      <method name="Void &lt;BinaryAddAssignChecked_1&gt;m__7(System.Dynamic.BinaryOperationBinder, System.Object)" attrs="145">\r
         <size>74</size>\r
       </method>\r
-      <method name="Void &lt;BinaryAnd_1&gt;m__D(System.Dynamic.BinaryOperationBinder, System.Object)" attrs="145">\r
+      <method name="Void &lt;BinaryAnd_1&gt;m__8(System.Dynamic.BinaryOperationBinder, System.Object)" attrs="145">\r
         <size>73</size>\r
       </method>\r
-      <method name="Void &lt;BinaryAndAssign_1&gt;m__E(System.Dynamic.BinaryOperationBinder, System.Object)" attrs="145">\r
+      <method name="Void &lt;BinaryAndAssign_1&gt;m__9(System.Dynamic.BinaryOperationBinder, System.Object)" attrs="145">\r
         <size>74</size>\r
       </method>\r
-      <method name="Void &lt;BinaryDivide_1&gt;m__F(System.Dynamic.BinaryOperationBinder, System.Object)" attrs="145">\r
+      <method name="Void &lt;BinaryDivide_1&gt;m__A(System.Dynamic.BinaryOperationBinder, System.Object)" attrs="145">\r
         <size>74</size>\r
       </method>\r
-      <method name="Void &lt;BinaryDivideAssign_1&gt;m__10(System.Dynamic.BinaryOperationBinder, System.Object)" attrs="145">\r
+      <method name="Void &lt;BinaryDivideAssign_1&gt;m__B(System.Dynamic.BinaryOperationBinder, System.Object)" attrs="145">\r
         <size>74</size>\r
       </method>\r
-      <method name="Void &lt;BinaryEqual_1&gt;m__11(System.Dynamic.BinaryOperationBinder, System.Object)" attrs="145">\r
+      <method name="Void &lt;BinaryEqual_1&gt;m__C(System.Dynamic.BinaryOperationBinder, System.Object)" attrs="145">\r
         <size>74</size>\r
       </method>\r
-      <method name="Void &lt;BinaryExclusiveOr_1&gt;m__12(System.Dynamic.BinaryOperationBinder, System.Object)" attrs="145">\r
+      <method name="Void &lt;BinaryExclusiveOr_1&gt;m__D(System.Dynamic.BinaryOperationBinder, System.Object)" attrs="145">\r
         <size>74</size>\r
       </method>\r
-      <method name="Void &lt;BinaryExclusiveOrAssign_1&gt;m__13(System.Dynamic.BinaryOperationBinder, System.Object)" attrs="145">\r
+      <method name="Void &lt;BinaryExclusiveOrAssign_1&gt;m__E(System.Dynamic.BinaryOperationBinder, System.Object)" attrs="145">\r
         <size>74</size>\r
       </method>\r
-      <method name="Void &lt;BinaryGreaterThan_1&gt;m__14(System.Dynamic.BinaryOperationBinder, System.Object)" attrs="145">\r
+      <method name="Void &lt;BinaryGreaterThan_1&gt;m__F(System.Dynamic.BinaryOperationBinder, System.Object)" attrs="145">\r
         <size>74</size>\r
       </method>\r
-      <method name="Void &lt;BinaryGreaterThanOrEqual_1&gt;m__15(System.Dynamic.BinaryOperationBinder, System.Object)" attrs="145">\r
+      <method name="Void &lt;BinaryGreaterThanOrEqual_1&gt;m__10(System.Dynamic.BinaryOperationBinder, System.Object)" attrs="145">\r
         <size>74</size>\r
       </method>\r
-      <method name="Void &lt;BinaryLeftShift_1&gt;m__16(System.Dynamic.BinaryOperationBinder, System.Object)" attrs="145">\r
+      <method name="Void &lt;BinaryLeftShift_1&gt;m__11(System.Dynamic.BinaryOperationBinder, System.Object)" attrs="145">\r
         <size>74</size>\r
       </method>\r
-      <method name="Void &lt;BinaryLeftShiftAssign_1&gt;m__17(System.Dynamic.BinaryOperationBinder, System.Object)" attrs="145">\r
+      <method name="Void &lt;BinaryLeftShiftAssign_1&gt;m__12(System.Dynamic.BinaryOperationBinder, System.Object)" attrs="145">\r
         <size>74</size>\r
       </method>\r
-      <method name="Void &lt;BinaryLessThan_1&gt;m__18(System.Dynamic.BinaryOperationBinder, System.Object)" attrs="145">\r
+      <method name="Void &lt;BinaryLessThan_1&gt;m__13(System.Dynamic.BinaryOperationBinder, System.Object)" attrs="145">\r
         <size>74</size>\r
       </method>\r
-      <method name="Void &lt;BinaryLessThanOrEqual_1&gt;m__19(System.Dynamic.BinaryOperationBinder, System.Object)" attrs="145">\r
+      <method name="Void &lt;BinaryLessThanOrEqual_1&gt;m__14(System.Dynamic.BinaryOperationBinder, System.Object)" attrs="145">\r
         <size>74</size>\r
       </method>\r
-      <method name="Void &lt;BinaryModulo_1&gt;m__1A(System.Dynamic.BinaryOperationBinder, System.Object)" attrs="145">\r
+      <method name="Void &lt;BinaryModulo_1&gt;m__15(System.Dynamic.BinaryOperationBinder, System.Object)" attrs="145">\r
         <size>74</size>\r
       </method>\r
-      <method name="Void &lt;BinaryModuloAssign_1&gt;m__1B(System.Dynamic.BinaryOperationBinder, System.Object)" attrs="145">\r
+      <method name="Void &lt;BinaryModuloAssign_1&gt;m__16(System.Dynamic.BinaryOperationBinder, System.Object)" attrs="145">\r
         <size>74</size>\r
       </method>\r
-      <method name="Void &lt;BinaryMultiply_1&gt;m__1C(System.Dynamic.BinaryOperationBinder, System.Object)" attrs="145">\r
+      <method name="Void &lt;BinaryMultiply_1&gt;m__17(System.Dynamic.BinaryOperationBinder, System.Object)" attrs="145">\r
         <size>74</size>\r
       </method>\r
-      <method name="Void &lt;BinaryMultiplyAssign_1&gt;m__1D(System.Dynamic.BinaryOperationBinder, System.Object)" attrs="145">\r
+      <method name="Void &lt;BinaryMultiplyAssign_1&gt;m__18(System.Dynamic.BinaryOperationBinder, System.Object)" attrs="145">\r
         <size>74</size>\r
       </method>\r
-      <method name="Void &lt;BinaryNotEqual_1&gt;m__1E(System.Dynamic.BinaryOperationBinder, System.Object)" attrs="145">\r
+      <method name="Void &lt;BinaryNotEqual_1&gt;m__19(System.Dynamic.BinaryOperationBinder, System.Object)" attrs="145">\r
         <size>74</size>\r
       </method>\r
-      <method name="Void &lt;BinaryOr_1&gt;m__1F(System.Dynamic.BinaryOperationBinder, System.Object)" attrs="145">\r
+      <method name="Void &lt;BinaryOr_1&gt;m__1A(System.Dynamic.BinaryOperationBinder, System.Object)" attrs="145">\r
         <size>74</size>\r
       </method>\r
-      <method name="Void &lt;BinaryOrAssign_1&gt;m__20(System.Dynamic.BinaryOperationBinder, System.Object)" attrs="145">\r
+      <method name="Void &lt;BinaryOrAssign_1&gt;m__1B(System.Dynamic.BinaryOperationBinder, System.Object)" attrs="145">\r
         <size>74</size>\r
       </method>\r
-      <method name="Void &lt;BinaryRightShift_1&gt;m__21(System.Dynamic.BinaryOperationBinder, System.Object)" attrs="145">\r
+      <method name="Void &lt;BinaryRightShift_1&gt;m__1C(System.Dynamic.BinaryOperationBinder, System.Object)" attrs="145">\r
         <size>74</size>\r
       </method>\r
-      <method name="Void &lt;BinaryRightShiftAssign_1&gt;m__22(System.Dynamic.BinaryOperationBinder, System.Object)" attrs="145">\r
+      <method name="Void &lt;BinaryRightShiftAssign_1&gt;m__1D(System.Dynamic.BinaryOperationBinder, System.Object)" attrs="145">\r
         <size>74</size>\r
       </method>\r
-      <method name="Void &lt;BinarySubtract_1&gt;m__23(System.Dynamic.BinaryOperationBinder, System.Object)" attrs="145">\r
+      <method name="Void &lt;BinarySubtract_1&gt;m__1E(System.Dynamic.BinaryOperationBinder, System.Object)" attrs="145">\r
         <size>74</size>\r
       </method>\r
-      <method name="Void &lt;BinarySubtractAssign_1&gt;m__24(System.Dynamic.BinaryOperationBinder, System.Object)" attrs="145">\r
+      <method name="Void &lt;BinarySubtractAssign_1&gt;m__1F(System.Dynamic.BinaryOperationBinder, System.Object)" attrs="145">\r
         <size>74</size>\r
       </method>\r
-      <method name="System.Object &lt;Convert_1&gt;m__25(System.Dynamic.ConvertBinder)" attrs="145">\r
+      <method name="System.Object &lt;Convert_1&gt;m__20(System.Dynamic.ConvertBinder)" attrs="145">\r
         <size>58</size>\r
       </method>\r
-      <method name="System.Object &lt;Convert_2&gt;m__26(System.Dynamic.ConvertBinder)" attrs="145">\r
+      <method name="System.Object &lt;Convert_2&gt;m__21(System.Dynamic.ConvertBinder)" attrs="145">\r
         <size>58</size>\r
       </method>\r
-      <method name="System.Object &lt;Convert_3&gt;m__27(System.Dynamic.ConvertBinder)" attrs="145">\r
+      <method name="System.Object &lt;Convert_3&gt;m__22(System.Dynamic.ConvertBinder)" attrs="145">\r
         <size>58</size>\r
       </method>\r
-      <method name="System.Object &lt;Convert_4&gt;m__28(System.Dynamic.ConvertBinder)" attrs="145">\r
+      <method name="System.Object &lt;Convert_4&gt;m__23(System.Dynamic.ConvertBinder)" attrs="145">\r
         <size>58</size>\r
       </method>\r
-      <method name="System.Object &lt;Convert_5&gt;m__29(System.Dynamic.ConvertBinder)" attrs="145">\r
+      <method name="System.Object &lt;Convert_5&gt;m__24(System.Dynamic.ConvertBinder)" attrs="145">\r
         <size>67</size>\r
       </method>\r
-      <method name="Void &lt;GetIndex_1&gt;m__2A(System.Dynamic.GetIndexBinder, System.Object[])" attrs="145">\r
+      <method name="Void &lt;GetIndex_1&gt;m__25(System.Dynamic.GetIndexBinder, System.Object[])" attrs="145">\r
         <size>93</size>\r
       </method>\r
-      <method name="Void &lt;GetIndex_2&gt;m__2B(System.Dynamic.GetIndexBinder, System.Object[])" attrs="145">\r
+      <method name="Void &lt;GetIndex_2&gt;m__26(System.Dynamic.GetIndexBinder, System.Object[])" attrs="145">\r
         <size>112</size>\r
       </method>\r
-      <method name="System.Object &lt;GetMember_1&gt;m__2D(System.Dynamic.GetMemberBinder)" attrs="145">\r
+      <method name="System.Object &lt;GetMember_1&gt;m__27(System.Dynamic.GetMemberBinder)" attrs="145">\r
         <size>75</size>\r
       </method>\r
-      <method name="Void &lt;Invoke_1&gt;m__2E(System.Dynamic.InvokeBinder, System.Object[])" attrs="145">\r
+      <method name="Void &lt;Invoke_1&gt;m__28(System.Dynamic.InvokeBinder, System.Object[])" attrs="145">\r
         <size>102</size>\r
       </method>\r
-      <method name="Void &lt;Invoke_2&gt;m__2F(System.Dynamic.InvokeBinder, System.Object[])" attrs="145">\r
+      <method name="Void &lt;Invoke_2&gt;m__29(System.Dynamic.InvokeBinder, System.Object[])" attrs="145">\r
         <size>74</size>\r
       </method>\r
-      <method name="Void &lt;Invoke_4&gt;m__30(System.Dynamic.InvokeBinder, System.Object[])" attrs="145">\r
+      <method name="Void &lt;Invoke_4&gt;m__2A(System.Dynamic.InvokeBinder, System.Object[])" attrs="145">\r
         <size>128</size>\r
       </method>\r
-      <method name="Void &lt;Invoke_5&gt;m__31(System.Dynamic.InvokeBinder, System.Object[])" attrs="145">\r
+      <method name="Void &lt;Invoke_5&gt;m__2B(System.Dynamic.InvokeBinder, System.Object[])" attrs="145">\r
         <size>92</size>\r
       </method>\r
-      <method name="Void &lt;Invoke_5&gt;m__32(System.Object)" attrs="145">\r
+      <method name="Void &lt;Invoke_5&gt;m__2C(System.Object)" attrs="145">\r
         <size>94</size>\r
       </method>\r
-      <method name="Void &lt;Invoke_6&gt;m__33(System.Dynamic.InvokeBinder, System.Object[])" attrs="145">\r
+      <method name="Void &lt;Invoke_6&gt;m__2D(System.Dynamic.InvokeBinder, System.Object[])" attrs="145">\r
         <size>93</size>\r
       </method>\r
-      <method name="Void &lt;InvokeMember_1&gt;m__34(System.Dynamic.InvokeMemberBinder, System.Object[])" attrs="145">\r
+      <method name="Void &lt;InvokeMember_1&gt;m__2E(System.Dynamic.InvokeMemberBinder, System.Object[])" attrs="145">\r
         <size>111</size>\r
       </method>\r
-      <method name="Void &lt;InvokeMember_3&gt;m__36(System.Dynamic.InvokeMemberBinder, System.Object[])" attrs="145">\r
+      <method name="Void &lt;InvokeMember_3&gt;m__2F(System.Dynamic.InvokeMemberBinder, System.Object[])" attrs="145">\r
         <size>112</size>\r
       </method>\r
-      <method name="Void &lt;InvokeMember_4&gt;m__37(System.Dynamic.InvokeMemberBinder, System.Object[])" attrs="145">\r
+      <method name="Void &lt;InvokeMember_4&gt;m__30(System.Dynamic.InvokeMemberBinder, System.Object[])" attrs="145">\r
         <size>111</size>\r
       </method>\r
-      <method name="Void &lt;InvokeMember_7&gt;m__39(System.Dynamic.InvokeMemberBinder, System.Object[])" attrs="145">\r
+      <method name="Void &lt;InvokeMember_7&gt;m__31(System.Dynamic.InvokeMemberBinder, System.Object[])" attrs="145">\r
         <size>91</size>\r
       </method>\r
-      <method name="Void &lt;InvokeMember_8&gt;m__3A(System.Dynamic.InvokeMemberBinder, System.Object[])" attrs="145">\r
+      <method name="Void &lt;InvokeMember_8&gt;m__32(System.Dynamic.InvokeMemberBinder, System.Object[])" attrs="145">\r
         <size>112</size>\r
       </method>\r
-      <method name="Void &lt;SetIndex_1&gt;m__3B(System.Dynamic.SetIndexBinder, System.Object[], System.Object)" attrs="145">\r
+      <method name="Void &lt;SetIndex_1&gt;m__33(System.Dynamic.SetIndexBinder, System.Object[], System.Object)" attrs="145">\r
         <size>125</size>\r
       </method>\r
-      <method name="Void &lt;SetIndex_2&gt;m__3C(System.Dynamic.SetIndexBinder, System.Object[], System.Object)" attrs="145">\r
+      <method name="Void &lt;SetIndex_2&gt;m__34(System.Dynamic.SetIndexBinder, System.Object[], System.Object)" attrs="145">\r
         <size>140</size>\r
       </method>\r
-      <method name="Void &lt;SetMember_1&gt;m__3E(System.Dynamic.SetMemberBinder, System.Object)" attrs="145">\r
+      <method name="Void &lt;SetMember_1&gt;m__35(System.Dynamic.SetMemberBinder, System.Object)" attrs="145">\r
         <size>102</size>\r
       </method>\r
-      <method name="Void &lt;SetMember_2&gt;m__40(System.Dynamic.BinaryOperationBinder, System.Object)" attrs="145">\r
+      <method name="Void &lt;SetMember_2&gt;m__36(System.Dynamic.BinaryOperationBinder, System.Object)" attrs="145">\r
         <size>69</size>\r
       </method>\r
-      <method name="Void &lt;SetMember_2&gt;m__41(System.Dynamic.SetMemberBinder, System.Object)" attrs="145">\r
+      <method name="Void &lt;SetMember_2&gt;m__37(System.Dynamic.SetMemberBinder, System.Object)" attrs="145">\r
         <size>77</size>\r
       </method>\r
-      <method name="System.Object &lt;UnaryPlus_1&gt;m__42(System.Dynamic.UnaryOperationBinder)" attrs="145">\r
+      <method name="System.Object &lt;UnaryPlus_1&gt;m__38(System.Dynamic.UnaryOperationBinder)" attrs="145">\r
         <size>55</size>\r
       </method>\r
-      <method name="System.Object &lt;UnaryMinus_1&gt;m__43(System.Dynamic.UnaryOperationBinder)" attrs="145">\r
+      <method name="System.Object &lt;UnaryMinus_1&gt;m__39(System.Dynamic.UnaryOperationBinder)" attrs="145">\r
         <size>55</size>\r
       </method>\r
-      <method name="System.Object &lt;UnaryNot_1&gt;m__44(System.Dynamic.UnaryOperationBinder)" attrs="145">\r
+      <method name="System.Object &lt;UnaryNot_1&gt;m__3A(System.Dynamic.UnaryOperationBinder)" attrs="145">\r
         <size>55</size>\r
       </method>\r
-      <method name="System.Object &lt;UnaryOnesComplement_1&gt;m__45(System.Dynamic.UnaryOperationBinder)" attrs="145">\r
+      <method name="System.Object &lt;UnaryOnesComplement_1&gt;m__3B(System.Dynamic.UnaryOperationBinder)" attrs="145">\r
         <size>55</size>\r
       </method>\r
-      <method name="System.Object &lt;UnaryDecrement_1&gt;m__46(System.Dynamic.UnaryOperationBinder)" attrs="145">\r
+      <method name="System.Object &lt;UnaryDecrement_1&gt;m__3C(System.Dynamic.UnaryOperationBinder)" attrs="145">\r
         <size>55</size>\r
       </method>\r
-      <method name="System.Object &lt;UnaryDecrement_2&gt;m__47(System.Dynamic.UnaryOperationBinder)" attrs="145">\r
+      <method name="System.Object &lt;UnaryDecrement_2&gt;m__3D(System.Dynamic.UnaryOperationBinder)" attrs="145">\r
         <size>59</size>\r
       </method>\r
-      <method name="System.Object &lt;UnaryIncrement_1&gt;m__48(System.Dynamic.UnaryOperationBinder)" attrs="145">\r
+      <method name="System.Object &lt;UnaryIncrement_1&gt;m__3E(System.Dynamic.UnaryOperationBinder)" attrs="145">\r
         <size>55</size>\r
       </method>\r
-      <method name="System.Object &lt;UnaryIncrement_2&gt;m__49(System.Dynamic.UnaryOperationBinder)" attrs="145">\r
+      <method name="System.Object &lt;UnaryIncrement_2&gt;m__3F(System.Dynamic.UnaryOperationBinder)" attrs="145">\r
         <size>59</size>\r
       </method>\r
-      <method name="System.Object &lt;UnaryIsFalse_1&gt;m__4A(System.Dynamic.UnaryOperationBinder)" attrs="145">\r
+      <method name="System.Object &lt;UnaryIsFalse_1&gt;m__40(System.Dynamic.UnaryOperationBinder)" attrs="145">\r
         <size>60</size>\r
       </method>\r
-      <method name="Void &lt;UnaryIsFalse_1&gt;m__4B(System.Dynamic.BinaryOperationBinder, System.Object)" attrs="145">\r
+      <method name="Void &lt;UnaryIsFalse_1&gt;m__41(System.Dynamic.BinaryOperationBinder, System.Object)" attrs="145">\r
         <size>69</size>\r
       </method>\r
-      <method name="System.Object &lt;UnaryIsFalse_2&gt;m__4C(System.Dynamic.UnaryOperationBinder)" attrs="145">\r
+      <method name="System.Object &lt;UnaryIsFalse_2&gt;m__42(System.Dynamic.UnaryOperationBinder)" attrs="145">\r
         <size>60</size>\r
       </method>\r
-      <method name="Void &lt;UnaryIsFalse_2&gt;m__4D(System.Dynamic.BinaryOperationBinder, System.Object)" attrs="145">\r
+      <method name="Void &lt;UnaryIsFalse_2&gt;m__43(System.Dynamic.BinaryOperationBinder, System.Object)" attrs="145">\r
         <size>69</size>\r
       </method>\r
-      <method name="System.Object &lt;UnaryIsFalse_3&gt;m__4E(System.Dynamic.UnaryOperationBinder)" attrs="145">\r
+      <method name="System.Object &lt;UnaryIsFalse_3&gt;m__44(System.Dynamic.UnaryOperationBinder)" attrs="145">\r
         <size>60</size>\r
       </method>\r
-      <method name="Void &lt;UnaryIsFalse_3&gt;m__4F(System.Dynamic.BinaryOperationBinder, System.Object)" attrs="145">\r
+      <method name="Void &lt;UnaryIsFalse_3&gt;m__45(System.Dynamic.BinaryOperationBinder, System.Object)" attrs="145">\r
         <size>68</size>\r
       </method>\r
-      <method name="System.Object &lt;UnaryIsTrue_1&gt;m__50(System.Dynamic.UnaryOperationBinder)" attrs="145">\r
+      <method name="System.Object &lt;UnaryIsTrue_1&gt;m__46(System.Dynamic.UnaryOperationBinder)" attrs="145">\r
         <size>60</size>\r
       </method>\r
-      <method name="System.Object &lt;UnaryIsTrue_2&gt;m__51(System.Dynamic.UnaryOperationBinder)" attrs="145">\r
+      <method name="System.Object &lt;UnaryIsTrue_2&gt;m__47(System.Dynamic.UnaryOperationBinder)" attrs="145">\r
         <size>60</size>\r
       </method>\r
-      <method name="Void &lt;UnaryIsTrue_2&gt;m__52(System.Dynamic.BinaryOperationBinder, System.Object)" attrs="145">\r
+      <method name="Void &lt;UnaryIsTrue_2&gt;m__48(System.Dynamic.BinaryOperationBinder, System.Object)" attrs="145">\r
         <size>69</size>\r
       </method>\r
-      <method name="System.Object &lt;UnaryIsTrue_3&gt;m__53(System.Dynamic.UnaryOperationBinder)" attrs="145">\r
+      <method name="System.Object &lt;UnaryIsTrue_3&gt;m__49(System.Dynamic.UnaryOperationBinder)" attrs="145">\r
         <size>60</size>\r
       </method>\r
-      <method name="Void &lt;UnaryIsTrue_3&gt;m__54(System.Dynamic.BinaryOperationBinder, System.Object)" attrs="145">\r
+      <method name="Void &lt;UnaryIsTrue_3&gt;m__4A(System.Dynamic.BinaryOperationBinder, System.Object)" attrs="145">\r
         <size>74</size>\r
       </method>\r
-      <method name="Boolean &lt;Main&gt;m__55(System.Reflection.MethodInfo)" attrs="145">\r
+      <method name="Boolean &lt;Main&gt;m__4B(System.Reflection.MethodInfo)" attrs="145">\r
         <size>20</size>\r
       </method>\r
-      <method name="System.String &lt;Main&gt;m__56(System.Reflection.MethodInfo)" attrs="145">\r
+      <method name="System.String &lt;Main&gt;m__4C(System.Reflection.MethodInfo)" attrs="145">\r
         <size>15</size>\r
       </method>\r
-      <method name="Boolean &lt;Main&gt;m__57(System.Reflection.MethodInfo)" attrs="145">\r
+      <method name="Boolean &lt;Main&gt;m__4D(System.Reflection.MethodInfo)" attrs="145">\r
         <size>15</size>\r
       </method>\r
-      <method name="Boolean &lt;Main&gt;m__58(Boolean)" attrs="145">\r
+      <method name="Boolean &lt;Main&gt;m__4E(Boolean)" attrs="145">\r
         <size>12</size>\r
       </method>\r
-      <method name="Void .ctor()" attrs="6278">\r
-        <size>8</size>\r
-      </method>\r
-      <method name="Void .ctor(Object)" attrs="6278">\r
-        <size>8</size>\r
-      </method>\r
-      <method name="Void .cctor()" attrs="6289">\r
-        <size>34</size>\r
-      </method>\r
-    </type>\r
-    <type name="AssertDynamicObject+&lt;GetFakeMetaObject&gt;c__AnonStorey0">\r
-      <method name="Void .ctor()" attrs="6278">\r
-        <size>7</size>\r
-      </method>\r
     </type>\r
-    <type name="Tester+&lt;BinaryAddChecked_2&gt;c__AnonStorey1">\r
-      <method name="System.Object &lt;&gt;m__A()" attrs="131">\r
+    <type name="Tester+&lt;BinaryAddChecked_2&gt;c__AnonStorey0">\r
+      <method name="System.Object &lt;&gt;m__0()" attrs="131">\r
         <size>98</size>\r
       </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
     </type>\r
-    <type name="Tester+&lt;GetIndex_3&gt;c__AnonStorey2">\r
-      <method name="Void &lt;&gt;m__2C(System.Dynamic.GetIndexBinder, System.Object[])" attrs="131">\r
+    <type name="Tester+&lt;GetIndex_3&gt;c__AnonStorey1">\r
+      <method name="Void &lt;&gt;m__0(System.Dynamic.GetIndexBinder, System.Object[])" attrs="131">\r
         <size>93</size>\r
       </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
     </type>\r
-    <type name="Tester+&lt;InvokeMember_2&gt;c__AnonStorey3">\r
-      <method name="Void &lt;&gt;m__35(System.Dynamic.InvokeMemberBinder, System.Object[])" attrs="131">\r
+    <type name="Tester+&lt;InvokeMember_2&gt;c__AnonStorey2">\r
+      <method name="Void &lt;&gt;m__0(System.Dynamic.InvokeMemberBinder, System.Object[])" attrs="131">\r
         <size>110</size>\r
       </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
     </type>\r
-    <type name="Tester+&lt;InvokeMember_3&gt;c__DynamicSite32+Container0">\r
-      <method name="Void Invoke(System.Runtime.CompilerServices.CallSite, System.Object, Int32 ByRef)" attrs="454">\r
-        <size>0</size>\r
-      </method>\r
-      <method name="Void .ctor(Object, IntPtr)" attrs="6278">\r
-        <size>0</size>\r
-      </method>\r
-    </type>\r
-    <type name="Tester+&lt;InvokeMember_4&gt;c__DynamicSite33+Container0">\r
-      <method name="Void Invoke(System.Runtime.CompilerServices.CallSite, System.Object, Int32 ByRef)" attrs="454">\r
-        <size>0</size>\r
-      </method>\r
-      <method name="Void .ctor(Object, IntPtr)" attrs="6278">\r
-        <size>0</size>\r
-      </method>\r
-    </type>\r
-    <type name="Tester+&lt;InvokeMember_6&gt;c__AnonStorey4">\r
-      <method name="Void &lt;&gt;m__38(System.Dynamic.InvokeMemberBinder, System.Object[])" attrs="131">\r
+    <type name="Tester+&lt;InvokeMember_6&gt;c__AnonStorey3">\r
+      <method name="Void &lt;&gt;m__0(System.Dynamic.InvokeMemberBinder, System.Object[])" attrs="131">\r
         <size>120</size>\r
       </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
     </type>\r
-    <type name="Tester+&lt;InvokeMember_8&gt;c__DynamicSite37+Container0">\r
-      <method name="Void Invoke(System.Runtime.CompilerServices.CallSite, System.Object, System.Object ByRef)" attrs="454">\r
-        <size>0</size>\r
-      </method>\r
-      <method name="Void .ctor(Object, IntPtr)" attrs="6278">\r
-        <size>0</size>\r
-      </method>\r
-    </type>\r
-    <type name="Tester+&lt;SetIndex_3&gt;c__AnonStorey5">\r
-      <method name="Void &lt;&gt;m__3D(System.Dynamic.SetIndexBinder, System.Object[], System.Object)" attrs="131">\r
+    <type name="Tester+&lt;SetIndex_3&gt;c__AnonStorey4">\r
+      <method name="Void &lt;&gt;m__0(System.Dynamic.SetIndexBinder, System.Object[], System.Object)" attrs="131">\r
         <size>120</size>\r
       </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
     </type>\r
-    <type name="Tester+&lt;SetMember_2&gt;c__AnonStorey6">\r
-      <method name="System.Object &lt;&gt;m__3F(System.Dynamic.GetMemberBinder)" attrs="131">\r
+    <type name="Tester+&lt;SetMember_2&gt;c__AnonStorey5">\r
+      <method name="System.Object &lt;&gt;m__0(System.Dynamic.GetMemberBinder)" attrs="131">\r
         <size>80</size>\r
       </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
     </type>\r
-    <type name="Tester">\r
-      <method name="Void Assert[T](System.Collections.Generic.IList`1[T], System.Collections.Generic.IList`1[T], System.String)" attrs="145">\r
-        <size>257</size>\r
-      </method>\r
-    </type>\r
   </test>\r
   <test name="dtest-004.cs">\r
     <type name="G`1[T]">\r
       <method name="Int32 Main()" attrs="150">\r
         <size>187</size>\r
       </method>\r
-      <method name="Void &lt;SubtractAssignEvent&gt;m__C()" attrs="145">\r
-        <size>12</size>\r
-      </method>\r
-      <method name="Boolean &lt;Main&gt;m__F(System.Reflection.MethodInfo)" attrs="145">\r
-        <size>20</size>\r
-      </method>\r
-      <method name="System.String &lt;Main&gt;m__10(System.Reflection.MethodInfo)" attrs="145">\r
-        <size>15</size>\r
-      </method>\r
-      <method name="Boolean &lt;Main&gt;m__11(System.Reflection.MethodInfo)" attrs="145">\r
-        <size>15</size>\r
-      </method>\r
-      <method name="Boolean &lt;Main&gt;m__12(Boolean)" attrs="145">\r
-        <size>12</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
       </method>\r
     </type>\r
     <type name="Tester+&lt;AddAssignCheckedTest&gt;c__AnonStorey2">\r
-      <method name="Void &lt;&gt;m__2()" attrs="131">\r
-        <size>234</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
       </method>\r
     </type>\r
     <type name="Tester+&lt;ConvertExplicitCheckedTest&gt;c__AnonStorey3">\r
-      <method name="Int32 &lt;&gt;m__3()" attrs="131">\r
-        <size>81</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
     </type>\r
     <type name="Tester+&lt;MultiplyCheckedTest&gt;c__AnonStorey4">\r
-      <method name="System.Object &lt;&gt;m__5()" attrs="131">\r
-        <size>104</size>\r
-      </method>\r
-      <method name="System.Object &lt;&gt;m__6()" attrs="131">\r
-        <size>104</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
     </type>\r
     <type name="Tester+&lt;MultiplyAssignCheckedTest&gt;c__AnonStorey5">\r
-      <method name="Void &lt;&gt;m__7()" attrs="131">\r
-        <size>234</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
     </type>\r
     <type name="Tester+&lt;NegateChecked&gt;c__AnonStorey6">\r
-      <method name="System.Object &lt;&gt;m__8()" attrs="131">\r
-        <size>88</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
     </type>\r
     <type name="Tester+&lt;SubtractCheckedTest&gt;c__AnonStorey7">\r
-      <method name="System.Object &lt;&gt;m__9()" attrs="131">\r
-        <size>104</size>\r
-      </method>\r
-      <method name="System.Object &lt;&gt;m__A()" attrs="131">\r
-        <size>104</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
     </type>\r
     <type name="Tester+&lt;SubtractAssignCheckedTest&gt;c__AnonStorey8">\r
-      <method name="Void &lt;&gt;m__B()" attrs="131">\r
-        <size>234</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
     </type>\r
     <type name="Tester+&lt;UnaryDecrementCheckedTest&gt;c__AnonStorey9">\r
-      <method name="Void &lt;&gt;m__D()" attrs="131">\r
-        <size>224</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
     </type>\r
     <type name="Tester+&lt;UnaryIncrementCheckedTest&gt;c__AnonStoreyA">\r
-      <method name="Void &lt;&gt;m__E()" attrs="131">\r
-        <size>220</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
         <size>26</size>\r
       </method>\r
     </type>\r
+    <type name="Tester">\r
+      <method name="Void &lt;SubtractAssignEvent&gt;m__0()" attrs="145">\r
+        <size>12</size>\r
+      </method>\r
+      <method name="Boolean &lt;Main&gt;m__1(System.Reflection.MethodInfo)" attrs="145">\r
+        <size>20</size>\r
+      </method>\r
+      <method name="System.String &lt;Main&gt;m__2(System.Reflection.MethodInfo)" attrs="145">\r
+        <size>15</size>\r
+      </method>\r
+      <method name="Boolean &lt;Main&gt;m__3(System.Reflection.MethodInfo)" attrs="145">\r
+        <size>15</size>\r
+      </method>\r
+      <method name="Boolean &lt;Main&gt;m__4(Boolean)" attrs="145">\r
+        <size>12</size>\r
+      </method>\r
+    </type>\r
+    <type name="Tester+&lt;AddAssignCheckedTest&gt;c__AnonStorey2">\r
+      <method name="Void &lt;&gt;m__0()" attrs="131">\r
+        <size>234</size>\r
+      </method>\r
+    </type>\r
     <type name="Tester+&lt;ConvertExplicitCheckedTest&gt;c__AnonStorey3">\r
-      <method name="System.Nullable`1[System.UInt32] &lt;&gt;m__4()" attrs="131">\r
+      <method name="Int32 &lt;&gt;m__0()" attrs="131">\r
         <size>81</size>\r
       </method>\r
+      <method name="System.Nullable`1[System.UInt32] &lt;&gt;m__1()" attrs="131">\r
+        <size>81</size>\r
+      </method>\r
+    </type>\r
+    <type name="Tester+&lt;MultiplyCheckedTest&gt;c__AnonStorey4">\r
+      <method name="System.Object &lt;&gt;m__0()" attrs="131">\r
+        <size>104</size>\r
+      </method>\r
+      <method name="System.Object &lt;&gt;m__1()" attrs="131">\r
+        <size>104</size>\r
+      </method>\r
+    </type>\r
+    <type name="Tester+&lt;MultiplyAssignCheckedTest&gt;c__AnonStorey5">\r
+      <method name="Void &lt;&gt;m__0()" attrs="131">\r
+        <size>234</size>\r
+      </method>\r
+    </type>\r
+    <type name="Tester+&lt;NegateChecked&gt;c__AnonStorey6">\r
+      <method name="System.Object &lt;&gt;m__0()" attrs="131">\r
+        <size>88</size>\r
+      </method>\r
+    </type>\r
+    <type name="Tester+&lt;SubtractCheckedTest&gt;c__AnonStorey7">\r
+      <method name="System.Object &lt;&gt;m__0()" attrs="131">\r
+        <size>104</size>\r
+      </method>\r
+      <method name="System.Object &lt;&gt;m__1()" attrs="131">\r
+        <size>104</size>\r
+      </method>\r
+    </type>\r
+    <type name="Tester+&lt;SubtractAssignCheckedTest&gt;c__AnonStorey8">\r
+      <method name="Void &lt;&gt;m__0()" attrs="131">\r
+        <size>234</size>\r
+      </method>\r
+    </type>\r
+    <type name="Tester+&lt;UnaryDecrementCheckedTest&gt;c__AnonStorey9">\r
+      <method name="Void &lt;&gt;m__0()" attrs="131">\r
+        <size>224</size>\r
+      </method>\r
+    </type>\r
+    <type name="Tester+&lt;UnaryIncrementCheckedTest&gt;c__AnonStoreyA">\r
+      <method name="Void &lt;&gt;m__0()" attrs="131">\r
+        <size>220</size>\r
+      </method>\r
     </type>\r
   </test>\r
   <test name="dtest-007.cs">\r
       <method name="Int32 Main()" attrs="150">\r
         <size>187</size>\r
       </method>\r
-      <method name="Int32 &lt;InvokeTest&gt;m__1(System.String)" attrs="145">\r
-        <size>9</size>\r
-      </method>\r
-      <method name="Void &lt;InvokeMember_Error&gt;m__2()" attrs="145">\r
-        <size>112</size>\r
-      </method>\r
-      <method name="Void &lt;InvokeConstructor&gt;m__3(Decimal)" attrs="145">\r
-        <size>2</size>\r
-      </method>\r
       <method name="Int32 &lt;IsEvent&gt;m__4()" attrs="145">\r
-        <size>9</size>\r
-      </method>\r
-      <method name="Int32 &lt;IsEvent&gt;m__5()" attrs="145">\r
         <size>10</size>\r
       </method>\r
-      <method name="Boolean &lt;Main&gt;m__9(System.Reflection.MethodInfo)" attrs="145">\r
-        <size>20</size>\r
-      </method>\r
-      <method name="System.String &lt;Main&gt;m__A(System.Reflection.MethodInfo)" attrs="145">\r
-        <size>15</size>\r
-      </method>\r
-      <method name="Boolean &lt;Main&gt;m__B(System.Reflection.MethodInfo)" attrs="145">\r
-        <size>15</size>\r
-      </method>\r
-      <method name="Boolean &lt;Main&gt;m__C(Boolean)" attrs="145">\r
-        <size>12</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
       </method>\r
     </type>\r
     <type name="Tester+&lt;MemberGetError_Null&gt;c__AnonStorey1">\r
-      <method name="Void &lt;&gt;m__6()" attrs="131">\r
-        <size>86</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
     </type>\r
     <type name="Tester+&lt;MemberSetError_Null&gt;c__AnonStorey2">\r
-      <method name="Void &lt;&gt;m__7()" attrs="131">\r
-        <size>96</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
     </type>\r
     <type name="Tester+&lt;SetIndexError_Null&gt;c__AnonStorey3">\r
-      <method name="Void &lt;&gt;m__8()" attrs="131">\r
-        <size>102</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
     </type>\r
+    <type name="Tester">\r
+      <method name="Int32 &lt;InvokeTest&gt;m__0(System.String)" attrs="145">\r
+        <size>9</size>\r
+      </method>\r
+      <method name="Void &lt;InvokeMember_Error&gt;m__1()" attrs="145">\r
+        <size>112</size>\r
+      </method>\r
+      <method name="Void &lt;InvokeConstructor&gt;m__2(Decimal)" attrs="145">\r
+        <size>2</size>\r
+      </method>\r
+      <method name="Int32 &lt;IsEvent&gt;m__3()" attrs="145">\r
+        <size>9</size>\r
+      </method>\r
+      <method name="Boolean &lt;Main&gt;m__5(System.Reflection.MethodInfo)" attrs="145">\r
+        <size>20</size>\r
+      </method>\r
+      <method name="System.String &lt;Main&gt;m__6(System.Reflection.MethodInfo)" attrs="145">\r
+        <size>15</size>\r
+      </method>\r
+      <method name="Boolean &lt;Main&gt;m__7(System.Reflection.MethodInfo)" attrs="145">\r
+        <size>15</size>\r
+      </method>\r
+      <method name="Boolean &lt;Main&gt;m__8(Boolean)" attrs="145">\r
+        <size>12</size>\r
+      </method>\r
+    </type>\r
+    <type name="Tester+&lt;MemberGetError_Null&gt;c__AnonStorey1">\r
+      <method name="Void &lt;&gt;m__0()" attrs="131">\r
+        <size>86</size>\r
+      </method>\r
+    </type>\r
+    <type name="Tester+&lt;MemberSetError_Null&gt;c__AnonStorey2">\r
+      <method name="Void &lt;&gt;m__0()" attrs="131">\r
+        <size>96</size>\r
+      </method>\r
+    </type>\r
+    <type name="Tester+&lt;SetIndexError_Null&gt;c__AnonStorey3">\r
+      <method name="Void &lt;&gt;m__0()" attrs="131">\r
+        <size>102</size>\r
+      </method>\r
+    </type>\r
   </test>\r
   <test name="dtest-008.cs">\r
     <type name="Disposable">\r
       <method name="Void &lt;Test`1&gt;m__0[T](T)" attrs="145">\r
         <size>103</size>\r
       </method>\r
-      <method name="Void &lt;Test3`1&gt;m__2[T](T)" attrs="145">\r
-        <size>105</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
     </type>\r
     <type name="C+&lt;Test2&gt;c__AnonStorey0`1[T]">\r
-      <method name="Void &lt;&gt;m__1()" attrs="131">\r
-        <size>46</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
     </type>\r
     <type name="C+&lt;Test4&gt;c__AnonStorey2`1[T]">\r
-      <method name="Void &lt;&gt;m__3()" attrs="131">\r
-        <size>114</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
     </type>\r
     <type name="C+&lt;Test2&gt;c__AnonStorey0`1+&lt;Test2&gt;c__AnonStorey1`1[T]">\r
-      <method name="Void &lt;&gt;m__4()" attrs="131">\r
-        <size>118</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
     </type>\r
-    <type name="C+&lt;&lt;Test3`1&gt;m__2&gt;c__DynamicSite1`1+Container0[T]">\r
+    <type name="C">\r
+      <method name="Void &lt;Test3`1&gt;m__1[T](T)" attrs="145">\r
+        <size>105</size>\r
+      </method>\r
+    </type>\r
+    <type name="C+&lt;Test2&gt;c__AnonStorey0`1[T]">\r
+      <method name="Void &lt;&gt;m__0()" attrs="131">\r
+        <size>46</size>\r
+      </method>\r
+    </type>\r
+    <type name="C+&lt;Test4&gt;c__AnonStorey2`1[T]">\r
+      <method name="Void &lt;&gt;m__0()" attrs="131">\r
+        <size>114</size>\r
+      </method>\r
+    </type>\r
+    <type name="C+&lt;Test2&gt;c__AnonStorey0`1+&lt;Test2&gt;c__AnonStorey1`1[T]">\r
+      <method name="Void &lt;&gt;m__0()" attrs="131">\r
+        <size>118</size>\r
+      </method>\r
+    </type>\r
+    <type name="C+&lt;&lt;Test3`1&gt;m__1&gt;c__DynamicSite1`1+Container0[T]">\r
       <method name="Void Invoke(System.Runtime.CompilerServices.CallSite, System.Object, T ByRef)" attrs="454">\r
         <size>0</size>\r
       </method>\r
         <size>0</size>\r
       </method>\r
     </type>\r
-    <type name="C+&lt;Test4&gt;c__AnonStorey2`1+&lt;&lt;&gt;m__3&gt;c__DynamicSite0+Container0[T]">\r
+    <type name="C+&lt;Test4&gt;c__AnonStorey2`1+&lt;&lt;&gt;m__0&gt;c__DynamicSite0+Container0[T]">\r
       <method name="Void Invoke(System.Runtime.CompilerServices.CallSite, System.Object, T ByRef)" attrs="454">\r
         <size>0</size>\r
       </method>\r
       <method name="Void &lt;Using_1&gt;m__1()" attrs="145">\r
         <size>92</size>\r
       </method>\r
-      <method name="Void &lt;NullableConversion&gt;m__3()" attrs="145">\r
+      <method name="Void .ctor()" attrs="6278">\r
+        <size>7</size>\r
+      </method>\r
+    </type>\r
+    <type name="Tester+&lt;Unsafe_1&gt;c__AnonStorey0">\r
+      <method name="Void .ctor()" attrs="6278">\r
+        <size>7</size>\r
+      </method>\r
+    </type>\r
+    <type name="Tester">\r
+      <method name="Void &lt;NullableConversion&gt;m__2()" attrs="145">\r
         <size>106</size>\r
       </method>\r
-      <method name="Boolean &lt;Main&gt;m__4(System.Reflection.MethodInfo)" attrs="145">\r
+      <method name="Boolean &lt;Main&gt;m__3(System.Reflection.MethodInfo)" attrs="145">\r
         <size>20</size>\r
       </method>\r
-      <method name="System.String &lt;Main&gt;m__5(System.Reflection.MethodInfo)" attrs="145">\r
+      <method name="System.String &lt;Main&gt;m__4(System.Reflection.MethodInfo)" attrs="145">\r
         <size>15</size>\r
       </method>\r
-      <method name="Boolean &lt;Main&gt;m__6(System.Reflection.MethodInfo)" attrs="145">\r
+      <method name="Boolean &lt;Main&gt;m__5(System.Reflection.MethodInfo)" attrs="145">\r
         <size>15</size>\r
       </method>\r
-      <method name="Boolean &lt;Main&gt;m__7(Boolean)" attrs="145">\r
+      <method name="Boolean &lt;Main&gt;m__6(Boolean)" attrs="145">\r
         <size>12</size>\r
       </method>\r
-      <method name="Void .ctor()" attrs="6278">\r
-        <size>7</size>\r
-      </method>\r
     </type>\r
     <type name="Tester+&lt;Unsafe_1&gt;c__AnonStorey0">\r
-      <method name="Void &lt;&gt;m__2()" attrs="131">\r
+      <method name="Void &lt;&gt;m__0()" attrs="131">\r
         <size>110</size>\r
       </method>\r
-      <method name="Void .ctor()" attrs="6278">\r
-        <size>7</size>\r
-      </method>\r
     </type>\r
   </test>\r
   <test name="dtest-error-02.cs">\r
         <size>7</size>\r
       </method>\r
     </type>\r
-    <type name="Test2.Test`1+&lt;Replace&gt;c__Iterator1`1[S,T]">\r
+    <type name="Test1.Test">\r
+      <method name="System.Collections.Generic.IEnumerable`1[T] Replace[T]()" attrs="150">\r
+        <size>23</size>\r
+      </method>\r
+    </type>\r
+    <type name="Test2.Test`1[S]">\r
+      <method name="System.Collections.Generic.IEnumerable`1[T] Replace[T]()" attrs="150">\r
+        <size>23</size>\r
+      </method>\r
+    </type>\r
+    <type name="Test3.Test`1[S]">\r
+      <method name="System.Collections.Generic.IEnumerable`1[System.Collections.Generic.KeyValuePair`2[S,T]] Replace[T](System.Collections.Generic.IEnumerable`1[T], System.Collections.Generic.IEnumerable`1[S])" attrs="150">\r
+        <size>23</size>\r
+      </method>\r
+    </type>\r
+    <type name="Test4.Test">\r
+      <method name="System.Collections.Generic.IEnumerable`1[T] Replace[T]()" attrs="150">\r
+        <size>23</size>\r
+      </method>\r
+    </type>\r
+    <type name="Test5.Test">\r
+      <method name="System.Collections.Generic.IEnumerable`1[T] Replace[T](T)" attrs="150">\r
+        <size>30</size>\r
+      </method>\r
+    </type>\r
+    <type name="Test6.Test">\r
+      <method name="System.Collections.Generic.IEnumerable`1[T] Replace[T](T)" attrs="150">\r
+        <size>30</size>\r
+      </method>\r
+    </type>\r
+    <type name="Test7.Test">\r
+      <method name="System.Collections.Generic.IEnumerable`1[T[]] Replace[T](T[])" attrs="150">\r
+        <size>30</size>\r
+      </method>\r
+    </type>\r
+    <type name="Test1.Test+&lt;Replace&gt;c__Iterator0`1[T]">\r
+      <method name="System.Collections.Generic.IEnumerator`1[T] System.Collections.Generic.IEnumerable&lt;T&gt;.GetEnumerator()" attrs="481">\r
+        <size>26</size>\r
+      </method>\r
+    </type>\r
+    <type name="Test2.Test`1+&lt;Replace&gt;c__Iterator0`1[S,T]">\r
       <method name="T System.Collections.Generic.IEnumerator&lt;T&gt;.get_Current()" attrs="2529">\r
         <size>14</size>\r
       </method>\r
       <method name="System.Object System.Collections.IEnumerator.get_Current()" attrs="2529">\r
         <size>19</size>\r
       </method>\r
-      <method name="IEnumerator System.Collections.IEnumerable.GetEnumerator()" attrs="481">\r
-        <size>14</size>\r
-      </method>\r
       <method name="Boolean MoveNext()" attrs="486">\r
         <size>26</size>\r
       </method>\r
       <method name="Void Reset()" attrs="486">\r
         <size>6</size>\r
       </method>\r
+      <method name="IEnumerator System.Collections.IEnumerable.GetEnumerator()" attrs="481">\r
+        <size>14</size>\r
+      </method>\r
+      <method name="System.Collections.Generic.IEnumerator`1[T] System.Collections.Generic.IEnumerable&lt;T&gt;.GetEnumerator()" attrs="481">\r
+        <size>26</size>\r
+      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
     </type>\r
-    <type name="Test3.Test`1+&lt;Replace&gt;c__Iterator2`1[S,T]">\r
+    <type name="Test3.Test`1+&lt;Replace&gt;c__Iterator0`1[S,T]">\r
+      <method name="System.Collections.Generic.KeyValuePair`2[S,T] System.Collections.Generic.IEnumerator&lt;System.Collections.Generic.KeyValuePair&lt;S,T&gt;&gt;.get_Current()" attrs="2529">\r
+        <size>14</size>\r
+      </method>\r
       <method name="System.Object System.Collections.IEnumerator.get_Current()" attrs="2529">\r
         <size>19</size>\r
       </method>\r
-      <method name="IEnumerator System.Collections.IEnumerable.GetEnumerator()" attrs="481">\r
-        <size>14</size>\r
-      </method>\r
       <method name="Boolean MoveNext()" attrs="486">\r
         <size>26</size>\r
       </method>\r
       <method name="Void Reset()" attrs="486">\r
         <size>6</size>\r
       </method>\r
+      <method name="IEnumerator System.Collections.IEnumerable.GetEnumerator()" attrs="481">\r
+        <size>14</size>\r
+      </method>\r
+      <method name="System.Collections.Generic.IEnumerator`1[System.Collections.Generic.KeyValuePair`2[S,T]] System.Collections.Generic.IEnumerable&lt;System.Collections.Generic.KeyValuePair&lt;S,T&gt;&gt;.GetEnumerator()" attrs="481">\r
+        <size>26</size>\r
+      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
     </type>\r
-    <type name="Test4.Test+&lt;Replace&gt;c__Iterator3`1[T]">\r
+    <type name="Test4.Test+&lt;Replace&gt;c__Iterator0`1[T]">\r
       <method name="T System.Collections.Generic.IEnumerator&lt;T&gt;.get_Current()" attrs="2529">\r
         <size>14</size>\r
       </method>\r
       <method name="System.Object System.Collections.IEnumerator.get_Current()" attrs="2529">\r
         <size>19</size>\r
       </method>\r
-      <method name="IEnumerator System.Collections.IEnumerable.GetEnumerator()" attrs="481">\r
-        <size>14</size>\r
-      </method>\r
       <method name="Boolean MoveNext()" attrs="486">\r
         <size>26</size>\r
       </method>\r
       <method name="Void Reset()" attrs="486">\r
         <size>6</size>\r
       </method>\r
+      <method name="IEnumerator System.Collections.IEnumerable.GetEnumerator()" attrs="481">\r
+        <size>14</size>\r
+      </method>\r
+      <method name="System.Collections.Generic.IEnumerator`1[T] System.Collections.Generic.IEnumerable&lt;T&gt;.GetEnumerator()" attrs="481">\r
+        <size>26</size>\r
+      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
     </type>\r
-    <type name="Test5.Test+&lt;Replace&gt;c__Iterator4`1[T]">\r
+    <type name="Test5.Test+&lt;Replace&gt;c__Iterator0`1[T]">\r
       <method name="T System.Collections.Generic.IEnumerator&lt;T&gt;.get_Current()" attrs="2529">\r
         <size>14</size>\r
       </method>\r
       <method name="System.Object System.Collections.IEnumerator.get_Current()" attrs="2529">\r
         <size>19</size>\r
       </method>\r
-      <method name="IEnumerator System.Collections.IEnumerable.GetEnumerator()" attrs="481">\r
-        <size>14</size>\r
-      </method>\r
       <method name="Boolean MoveNext()" attrs="486">\r
         <size>77</size>\r
       </method>\r
       <method name="Void Reset()" attrs="486">\r
         <size>6</size>\r
       </method>\r
+      <method name="IEnumerator System.Collections.IEnumerable.GetEnumerator()" attrs="481">\r
+        <size>14</size>\r
+      </method>\r
+      <method name="System.Collections.Generic.IEnumerator`1[T] System.Collections.Generic.IEnumerable&lt;T&gt;.GetEnumerator()" attrs="481">\r
+        <size>40</size>\r
+      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
     </type>\r
-    <type name="Test6.Test+&lt;Replace&gt;c__Iterator5`1[T]">\r
+    <type name="Test6.Test+&lt;Replace&gt;c__Iterator0`1[T]">\r
       <method name="T System.Collections.Generic.IEnumerator&lt;T&gt;.get_Current()" attrs="2529">\r
         <size>14</size>\r
       </method>\r
       <method name="System.Object System.Collections.IEnumerator.get_Current()" attrs="2529">\r
         <size>19</size>\r
       </method>\r
-      <method name="IEnumerator System.Collections.IEnumerable.GetEnumerator()" attrs="481">\r
-        <size>14</size>\r
-      </method>\r
       <method name="Boolean MoveNext()" attrs="486">\r
         <size>89</size>\r
       </method>\r
       <method name="Void Reset()" attrs="486">\r
         <size>6</size>\r
       </method>\r
+      <method name="IEnumerator System.Collections.IEnumerable.GetEnumerator()" attrs="481">\r
+        <size>14</size>\r
+      </method>\r
+      <method name="System.Collections.Generic.IEnumerator`1[T] System.Collections.Generic.IEnumerable&lt;T&gt;.GetEnumerator()" attrs="481">\r
+        <size>40</size>\r
+      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
     </type>\r
-    <type name="Test7.Test+&lt;Replace&gt;c__Iterator6`1[T]">\r
+    <type name="Test7.Test+&lt;Replace&gt;c__Iterator0`1[T]">\r
       <method name="T[] System.Collections.Generic.IEnumerator&lt;T[]&gt;.get_Current()" attrs="2529">\r
         <size>14</size>\r
       </method>\r
       <method name="System.Object System.Collections.IEnumerator.get_Current()" attrs="2529">\r
         <size>14</size>\r
       </method>\r
-      <method name="IEnumerator System.Collections.IEnumerable.GetEnumerator()" attrs="481">\r
-        <size>14</size>\r
-      </method>\r
       <method name="Boolean MoveNext()" attrs="486">\r
         <size>89</size>\r
       </method>\r
       <method name="Void Reset()" attrs="486">\r
         <size>6</size>\r
       </method>\r
-      <method name="Void .ctor()" attrs="6278">\r
-        <size>7</size>\r
-      </method>\r
-    </type>\r
-    <type name="Test1.Test">\r
-      <method name="System.Collections.Generic.IEnumerable`1[T] Replace[T]()" attrs="150">\r
-        <size>23</size>\r
-      </method>\r
-    </type>\r
-    <type name="Test2.Test`1[S]">\r
-      <method name="System.Collections.Generic.IEnumerable`1[T] Replace[T]()" attrs="150">\r
-        <size>23</size>\r
-      </method>\r
-    </type>\r
-    <type name="Test3.Test`1[S]">\r
-      <method name="System.Collections.Generic.IEnumerable`1[System.Collections.Generic.KeyValuePair`2[S,T]] Replace[T](System.Collections.Generic.IEnumerable`1[T], System.Collections.Generic.IEnumerable`1[S])" attrs="150">\r
-        <size>23</size>\r
-      </method>\r
-    </type>\r
-    <type name="Test4.Test">\r
-      <method name="System.Collections.Generic.IEnumerable`1[T] Replace[T]()" attrs="150">\r
-        <size>23</size>\r
-      </method>\r
-    </type>\r
-    <type name="Test5.Test">\r
-      <method name="System.Collections.Generic.IEnumerable`1[T] Replace[T](T)" attrs="150">\r
-        <size>30</size>\r
-      </method>\r
-    </type>\r
-    <type name="Test6.Test">\r
-      <method name="System.Collections.Generic.IEnumerable`1[T] Replace[T](T)" attrs="150">\r
-        <size>30</size>\r
-      </method>\r
-    </type>\r
-    <type name="Test7.Test">\r
-      <method name="System.Collections.Generic.IEnumerable`1[T[]] Replace[T](T[])" attrs="150">\r
-        <size>30</size>\r
-      </method>\r
-    </type>\r
-    <type name="Test1.Test+&lt;Replace&gt;c__Iterator0`1[T]">\r
-      <method name="System.Collections.Generic.IEnumerator`1[T] System.Collections.Generic.IEnumerable&lt;T&gt;.GetEnumerator()" attrs="481">\r
-        <size>26</size>\r
-      </method>\r
-    </type>\r
-    <type name="Test2.Test`1+&lt;Replace&gt;c__Iterator1`1[S,T]">\r
-      <method name="System.Collections.Generic.IEnumerator`1[T] System.Collections.Generic.IEnumerable&lt;T&gt;.GetEnumerator()" attrs="481">\r
-        <size>26</size>\r
-      </method>\r
-    </type>\r
-    <type name="Test3.Test`1+&lt;Replace&gt;c__Iterator2`1[S,T]">\r
-      <method name="System.Collections.Generic.KeyValuePair`2[S,T] System.Collections.Generic.IEnumerator&lt;System.Collections.Generic.KeyValuePair&lt;S,T&gt;&gt;.get_Current()" attrs="2529">\r
+      <method name="IEnumerator System.Collections.IEnumerable.GetEnumerator()" attrs="481">\r
         <size>14</size>\r
       </method>\r
-      <method name="System.Collections.Generic.IEnumerator`1[System.Collections.Generic.KeyValuePair`2[S,T]] System.Collections.Generic.IEnumerable&lt;System.Collections.Generic.KeyValuePair&lt;S,T&gt;&gt;.GetEnumerator()" attrs="481">\r
-        <size>26</size>\r
-      </method>\r
-    </type>\r
-    <type name="Test4.Test+&lt;Replace&gt;c__Iterator3`1[T]">\r
-      <method name="System.Collections.Generic.IEnumerator`1[T] System.Collections.Generic.IEnumerable&lt;T&gt;.GetEnumerator()" attrs="481">\r
-        <size>26</size>\r
-      </method>\r
-    </type>\r
-    <type name="Test5.Test+&lt;Replace&gt;c__Iterator4`1[T]">\r
-      <method name="System.Collections.Generic.IEnumerator`1[T] System.Collections.Generic.IEnumerable&lt;T&gt;.GetEnumerator()" attrs="481">\r
-        <size>40</size>\r
-      </method>\r
-    </type>\r
-    <type name="Test6.Test+&lt;Replace&gt;c__Iterator5`1[T]">\r
-      <method name="System.Collections.Generic.IEnumerator`1[T] System.Collections.Generic.IEnumerable&lt;T&gt;.GetEnumerator()" attrs="481">\r
-        <size>40</size>\r
-      </method>\r
-    </type>\r
-    <type name="Test7.Test+&lt;Replace&gt;c__Iterator6`1[T]">\r
       <method name="System.Collections.Generic.IEnumerator`1[T[]] System.Collections.Generic.IEnumerable&lt;T[]&gt;.GetEnumerator()" attrs="481">\r
         <size>40</size>\r
       </method>\r
+      <method name="Void .ctor()" attrs="6278">\r
+        <size>7</size>\r
+      </method>\r
     </type>\r
   </test>\r
   <test name="gtest-192.cs">\r
         <size>7</size>\r
       </method>\r
     </type>\r
-    <type name="RedBlackTree`1+&lt;EnumerateRange&gt;c__Iterator1[S]">\r
+    <type name="OrderedMultiDictionary`2[T,U]">\r
+      <method name="System.Collections.Generic.IEnumerator`1[T] EnumerateKeys(RedBlackTree`1+RangeTester[System.Collections.Generic.KeyValuePair`2[T,U]])" attrs="129">\r
+        <size>29</size>\r
+      </method>\r
+    </type>\r
+    <type name="RedBlackTree`1[S]">\r
+      <method name="System.Collections.Generic.IEnumerable`1[S] EnumerateRange(RedBlackTree`1+RangeTester[S])" attrs="134">\r
+        <size>23</size>\r
+      </method>\r
+    </type>\r
+    <type name="RedBlackTree`1+&lt;EnumerateRange&gt;c__Iterator0[S]">\r
       <method name="S System.Collections.Generic.IEnumerator&lt;S&gt;.get_Current()" attrs="2529">\r
         <size>14</size>\r
       </method>\r
       <method name="System.Object System.Collections.IEnumerator.get_Current()" attrs="2529">\r
         <size>19</size>\r
       </method>\r
-      <method name="IEnumerator System.Collections.IEnumerable.GetEnumerator()" attrs="481">\r
-        <size>14</size>\r
-      </method>\r
       <method name="Boolean MoveNext()" attrs="486">\r
         <size>26</size>\r
       </method>\r
       <method name="Void Reset()" attrs="486">\r
         <size>6</size>\r
       </method>\r
-      <method name="Void .ctor()" attrs="6278">\r
-        <size>7</size>\r
-      </method>\r
-    </type>\r
-    <type name="OrderedMultiDictionary`2[T,U]">\r
-      <method name="System.Collections.Generic.IEnumerator`1[T] EnumerateKeys(RedBlackTree`1+RangeTester[System.Collections.Generic.KeyValuePair`2[T,U]])" attrs="129">\r
-        <size>29</size>\r
-      </method>\r
-    </type>\r
-    <type name="RedBlackTree`1[S]">\r
-      <method name="System.Collections.Generic.IEnumerable`1[S] EnumerateRange(RedBlackTree`1+RangeTester[S])" attrs="134">\r
-        <size>23</size>\r
+      <method name="IEnumerator System.Collections.IEnumerable.GetEnumerator()" attrs="481">\r
+        <size>14</size>\r
       </method>\r
-    </type>\r
-    <type name="RedBlackTree`1+&lt;EnumerateRange&gt;c__Iterator1[S]">\r
       <method name="System.Collections.Generic.IEnumerator`1[S] System.Collections.Generic.IEnumerable&lt;S&gt;.GetEnumerator()" attrs="481">\r
         <size>26</size>\r
       </method>\r
+      <method name="Void .ctor()" attrs="6278">\r
+        <size>7</size>\r
+      </method>\r
     </type>\r
   </test>\r
   <test name="gtest-194.cs">\r
         <size>7</size>\r
       </method>\r
     </type>\r
-    <type name="OrderedMultiDictionary`2+&lt;EnumerateKeys&gt;c__Iterator1[T,U]">\r
+    <type name="RedBlackTree`1[S]">\r
+      <method name="System.Collections.Generic.IEnumerable`1[S] EnumerateRange(RedBlackTree`1+RangeTester[S])" attrs="134">\r
+        <size>23</size>\r
+      </method>\r
+    </type>\r
+    <type name="OrderedMultiDictionary`2[T,U]">\r
+      <method name="System.Collections.Generic.IEnumerator`1[T] EnumerateKeys(RedBlackTree`1+RangeTester[System.Collections.Generic.KeyValuePair`2[T,U]])" attrs="129">\r
+        <size>29</size>\r
+      </method>\r
+    </type>\r
+    <type name="RedBlackTree`1+&lt;EnumerateRange&gt;c__Iterator0[S]">\r
+      <method name="System.Collections.Generic.IEnumerator`1[S] System.Collections.Generic.IEnumerable&lt;S&gt;.GetEnumerator()" attrs="481">\r
+        <size>26</size>\r
+      </method>\r
+    </type>\r
+    <type name="OrderedMultiDictionary`2+&lt;EnumerateKeys&gt;c__Iterator0[T,U]">\r
       <method name="T System.Collections.Generic.IEnumerator&lt;T&gt;.get_Current()" attrs="2529">\r
         <size>14</size>\r
       </method>\r
         <size>7</size>\r
       </method>\r
     </type>\r
-    <type name="RedBlackTree`1[S]">\r
-      <method name="System.Collections.Generic.IEnumerable`1[S] EnumerateRange(RedBlackTree`1+RangeTester[S])" attrs="134">\r
-        <size>23</size>\r
-      </method>\r
-    </type>\r
-    <type name="OrderedMultiDictionary`2[T,U]">\r
-      <method name="System.Collections.Generic.IEnumerator`1[T] EnumerateKeys(RedBlackTree`1+RangeTester[System.Collections.Generic.KeyValuePair`2[T,U]])" attrs="129">\r
-        <size>29</size>\r
-      </method>\r
-    </type>\r
-    <type name="RedBlackTree`1+&lt;EnumerateRange&gt;c__Iterator0[S]">\r
-      <method name="System.Collections.Generic.IEnumerator`1[S] System.Collections.Generic.IEnumerable&lt;S&gt;.GetEnumerator()" attrs="481">\r
-        <size>26</size>\r
-      </method>\r
-    </type>\r
   </test>\r
   <test name="gtest-195.cs">\r
     <type name="OrderedMultiDictionary`2[T,U]">\r
         <size>7</size>\r
       </method>\r
     </type>\r
-    <type name="HashSet`1+&lt;GetEnumerator&gt;c__Iterator1[T]">\r
-      <method name="T System.Collections.Generic.IEnumerator&lt;T&gt;.get_Current()" attrs="2529">\r
-        <size>14</size>\r
-      </method>\r
-      <method name="System.Object System.Collections.IEnumerator.get_Current()" attrs="2529">\r
-        <size>19</size>\r
-      </method>\r
-      <method name="Boolean MoveNext()" attrs="486">\r
-        <size>26</size>\r
-      </method>\r
-      <method name="Void Dispose()" attrs="486">\r
-        <size>1</size>\r
-      </method>\r
-      <method name="Void Reset()" attrs="486">\r
-        <size>6</size>\r
-      </method>\r
-      <method name="Void .ctor()" attrs="6278">\r
-        <size>7</size>\r
-      </method>\r
-    </type>\r
     <type name="EnumerableBase`1[T]">\r
       <method name="System.Collections.Generic.IEnumerator`1[T] GetEnumerator()" attrs="1478">\r
         <size>0</size>\r
         <size>15</size>\r
       </method>\r
     </type>\r
+    <type name="HashSet`1+&lt;GetEnumerator&gt;c__Iterator0[T]">\r
+      <method name="T System.Collections.Generic.IEnumerator&lt;T&gt;.get_Current()" attrs="2529">\r
+        <size>14</size>\r
+      </method>\r
+      <method name="System.Object System.Collections.IEnumerator.get_Current()" attrs="2529">\r
+        <size>19</size>\r
+      </method>\r
+      <method name="Boolean MoveNext()" attrs="486">\r
+        <size>26</size>\r
+      </method>\r
+      <method name="Void Dispose()" attrs="486">\r
+        <size>1</size>\r
+      </method>\r
+      <method name="Void Reset()" attrs="486">\r
+        <size>6</size>\r
+      </method>\r
+      <method name="Void .ctor()" attrs="6278">\r
+        <size>7</size>\r
+      </method>\r
+    </type>\r
   </test>\r
   <test name="gtest-248.cs">\r
     <type name="Foo`1[T]">\r
       </method>\r
     </type>\r
     <type name="Test+&lt;WrapMyComparison&gt;c__AnonStorey1`1[W]">\r
-      <method name="Int32 &lt;&gt;m__1(W, W)" attrs="131">\r
-        <size>22</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
+      <method name="Int32 &lt;&gt;m__0(W, W)" attrs="131">\r
+        <size>22</size>\r
+      </method>\r
     </type>\r
   </test>\r
   <test name="gtest-309.cs">\r
       </method>\r
     </type>\r
     <type name="B+&lt;C&gt;c__AnonStorey1+&lt;C&gt;c__AnonStorey0">\r
-      <method name="Void &lt;&gt;m__1()" attrs="131">\r
-        <size>58</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
+      <method name="Void &lt;&gt;m__0()" attrs="131">\r
+        <size>58</size>\r
+      </method>\r
     </type>\r
   </test>\r
   <test name="gtest-325.cs">\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
+      <method name="Void BrokenLiftedNull()" attrs="129">\r
+        <size>82</size>\r
+      </method>\r
     </type>\r
   </test>\r
   <test name="gtest-541.cs">\r
     </type>\r
     <type name="C">\r
       <method name="Int32 Main()" attrs="150">\r
-        <size>34</size>\r
+        <size>80</size>\r
       </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
+      <method name="Boolean Test_2[T2](T2[])" attrs="145">\r
+        <size>18</size>\r
+      </method>\r
     </type>\r
   </test>\r
   <test name="gtest-580.cs">\r
       <method name="Void Main()" attrs="150">\r
         <size>37</size>\r
       </method>\r
-      <method name="System.Tuple`2[System.Int32,System.Int32] &lt;Main&gt;m__1(Int32)" attrs="145">\r
-        <size>15</size>\r
-      </method>\r
     </type>\r
     <type name="Combinator+&lt;Choice&gt;c__AnonStorey0`2[C1,CR1]">\r
       <method name="Parser`2[C1,CR1] &lt;&gt;m__0()" attrs="131">\r
         <size>7</size>\r
       </method>\r
     </type>\r
+    <type name="Combinator">\r
+      <method name="System.Tuple`2[System.Int32,System.Int32] &lt;Main&gt;m__0(Int32)" attrs="145">\r
+        <size>15</size>\r
+      </method>\r
+    </type>\r
   </test>\r
   <test name="gtest-594.cs">\r
     <type name="C">\r
       </method>\r
     </type>\r
   </test>\r
+  <test name="gtest-597.cs">\r
+    <type name="Test.MainClass">\r
+      <method name="Int32 Main()" attrs="150">\r
+        <size>63</size>\r
+      </method>\r
+      <method name="Boolean Test_1[T](Test.Templated`1[T])" attrs="145">\r
+        <size>18</size>\r
+      </method>\r
+      <method name="Boolean Test_2[U](Test.IA`1[U])" attrs="145">\r
+        <size>18</size>\r
+      </method>\r
+      <method name="Void .ctor()" attrs="6278">\r
+        <size>7</size>\r
+      </method>\r
+    </type>\r
+    <type name="Test.Templated`1[T]">\r
+      <method name="Void .ctor()" attrs="6276">\r
+        <size>7</size>\r
+      </method>\r
+    </type>\r
+    <type name="Test.Derived">\r
+      <method name="Void .ctor()" attrs="6278">\r
+        <size>7</size>\r
+      </method>\r
+    </type>\r
+  </test>\r
   <test name="gtest-anontype-01.cs">\r
     <type name="Test">\r
       <method name="Int32 Main()" attrs="150">\r
       <method name="Void Main()" attrs="150">\r
         <size>182</size>\r
       </method>\r
-      <method name="Boolean &lt;Main&gt;m__1(&lt;&gt;__AnonType0`2[System.String,System.Reflection.PropertyInfo])" attrs="145">\r
-        <size>21</size>\r
-      </method>\r
-      <method name="System.String &lt;Main&gt;m__2(&lt;&gt;__AnonType0`2[System.String,System.Reflection.PropertyInfo])" attrs="145">\r
-        <size>15</size>\r
-      </method>\r
     </type>\r
     <type name="Test+&lt;Select&gt;c__Iterator0`1[T]">\r
       <method name="T System.Collections.Generic.IEnumerator&lt;T&gt;.get_Current()" attrs="2529">\r
         <size>52</size>\r
       </method>\r
     </type>\r
+    <type name="Test">\r
+      <method name="Boolean &lt;Main&gt;m__0(&lt;&gt;__AnonType0`2[System.String,System.Reflection.PropertyInfo])" attrs="145">\r
+        <size>21</size>\r
+      </method>\r
+      <method name="System.String &lt;Main&gt;m__1(&lt;&gt;__AnonType0`2[System.String,System.Reflection.PropertyInfo])" attrs="145">\r
+        <size>15</size>\r
+      </method>\r
+    </type>\r
   </test>\r
   <test name="gtest-autoproperty-01.cs">\r
     <type name="Test">\r
         <size>7</size>\r
       </method>\r
     </type>\r
-    <type name="X+&lt;GetIt&gt;c__Iterator1">\r
+    <type name="S">\r
+      <method name="System.Collections.Generic.IEnumerable`1[System.Int32] GetIt()" attrs="134">\r
+        <size>35</size>\r
+      </method>\r
+    </type>\r
+    <type name="X">\r
+      <method name="System.Collections.Generic.IEnumerable`1[System.Int32] GetIt()" attrs="129">\r
+        <size>30</size>\r
+      </method>\r
+    </type>\r
+    <type name="S+&lt;GetIt&gt;c__Iterator0">\r
+      <method name="System.Collections.Generic.IEnumerator`1[System.Int32] System.Collections.Generic.IEnumerable&lt;int&gt;.GetEnumerator()" attrs="481">\r
+        <size>40</size>\r
+      </method>\r
+    </type>\r
+    <type name="X+&lt;GetIt&gt;c__Iterator0">\r
       <method name="Int32 System.Collections.Generic.IEnumerator&lt;int&gt;.get_Current()" attrs="2529">\r
         <size>14</size>\r
       </method>\r
       <method name="System.Object System.Collections.IEnumerator.get_Current()" attrs="2529">\r
         <size>19</size>\r
       </method>\r
-      <method name="IEnumerator System.Collections.IEnumerable.GetEnumerator()" attrs="481">\r
-        <size>14</size>\r
-      </method>\r
       <method name="Boolean MoveNext()" attrs="486">\r
         <size>93</size>\r
       </method>\r
       <method name="Void Reset()" attrs="486">\r
         <size>6</size>\r
       </method>\r
-      <method name="Void .ctor()" attrs="6278">\r
-        <size>7</size>\r
-      </method>\r
-    </type>\r
-    <type name="S">\r
-      <method name="System.Collections.Generic.IEnumerable`1[System.Int32] GetIt()" attrs="134">\r
-        <size>35</size>\r
-      </method>\r
-    </type>\r
-    <type name="X">\r
-      <method name="System.Collections.Generic.IEnumerable`1[System.Int32] GetIt()" attrs="129">\r
-        <size>30</size>\r
+      <method name="IEnumerator System.Collections.IEnumerable.GetEnumerator()" attrs="481">\r
+        <size>14</size>\r
       </method>\r
-    </type>\r
-    <type name="S+&lt;GetIt&gt;c__Iterator0">\r
       <method name="System.Collections.Generic.IEnumerator`1[System.Int32] System.Collections.Generic.IEnumerable&lt;int&gt;.GetEnumerator()" attrs="481">\r
         <size>40</size>\r
       </method>\r
-    </type>\r
-    <type name="X+&lt;GetIt&gt;c__Iterator1">\r
-      <method name="System.Collections.Generic.IEnumerator`1[System.Int32] System.Collections.Generic.IEnumerable&lt;int&gt;.GetEnumerator()" attrs="481">\r
-        <size>40</size>\r
+      <method name="Void .ctor()" attrs="6278">\r
+        <size>7</size>\r
       </method>\r
     </type>\r
   </test>\r
         <size>7</size>\r
       </method>\r
     </type>\r
-    <type name="Test.Derived+&lt;GetStuff&gt;c__Iterator1">\r
+    <type name="Test.Base">\r
+      <method name="System.Collections.Generic.IEnumerable`1[Test.Base] GetStuff(Int32)" attrs="454">\r
+        <size>30</size>\r
+      </method>\r
+    </type>\r
+    <type name="Test.Derived">\r
+      <method name="System.Collections.Generic.IEnumerable`1[Test.Base] GetStuff(Int32)" attrs="198">\r
+        <size>37</size>\r
+      </method>\r
+      <method name="System.Collections.Generic.IEnumerable`1[Test.Base] &lt;GetStuff&gt;__BaseCallProxy0(Int32)" attrs="129">\r
+        <size>15</size>\r
+      </method>\r
+    </type>\r
+    <type name="Test.SpecialDerived">\r
+      <method name="System.Collections.Generic.IEnumerable`1[Test.Base] GetStuff(Int32)" attrs="198">\r
+        <size>37</size>\r
+      </method>\r
+      <method name="System.Collections.Generic.IEnumerable`1[Test.Base] &lt;GetStuff&gt;__BaseCallProxy0(Int32)" attrs="129">\r
+        <size>15</size>\r
+      </method>\r
+    </type>\r
+    <type name="Test.Base+&lt;GetStuff&gt;c__Iterator0">\r
+      <method name="System.Collections.Generic.IEnumerator`1[Test.Base] System.Collections.Generic.IEnumerable&lt;Test.Base&gt;.GetEnumerator()" attrs="481">\r
+        <size>40</size>\r
+      </method>\r
+    </type>\r
+    <type name="Test.Derived+&lt;GetStuff&gt;c__Iterator0">\r
       <method name="Test.Base System.Collections.Generic.IEnumerator&lt;Test.Base&gt;.get_Current()" attrs="2529">\r
         <size>14</size>\r
       </method>\r
       <method name="System.Object System.Collections.IEnumerator.get_Current()" attrs="2529">\r
         <size>14</size>\r
       </method>\r
-      <method name="IEnumerator System.Collections.IEnumerable.GetEnumerator()" attrs="481">\r
-        <size>14</size>\r
-      </method>\r
       <method name="Boolean MoveNext()" attrs="486">\r
         <size>195</size>\r
       </method>\r
       <method name="Void Reset()" attrs="486">\r
         <size>6</size>\r
       </method>\r
+      <method name="IEnumerator System.Collections.IEnumerable.GetEnumerator()" attrs="481">\r
+        <size>14</size>\r
+      </method>\r
+      <method name="System.Collections.Generic.IEnumerator`1[Test.Base] System.Collections.Generic.IEnumerable&lt;Test.Base&gt;.GetEnumerator()" attrs="481">\r
+        <size>52</size>\r
+      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
     </type>\r
-    <type name="Test.SpecialDerived+&lt;GetStuff&gt;c__Iterator2">\r
+    <type name="Test.SpecialDerived+&lt;GetStuff&gt;c__Iterator0">\r
       <method name="Test.Base System.Collections.Generic.IEnumerator&lt;Test.Base&gt;.get_Current()" attrs="2529">\r
         <size>14</size>\r
       </method>\r
       <method name="System.Object System.Collections.IEnumerator.get_Current()" attrs="2529">\r
         <size>14</size>\r
       </method>\r
-      <method name="IEnumerator System.Collections.IEnumerable.GetEnumerator()" attrs="481">\r
-        <size>14</size>\r
-      </method>\r
       <method name="Boolean MoveNext()" attrs="486">\r
         <size>195</size>\r
       </method>\r
       <method name="Void Reset()" attrs="486">\r
         <size>6</size>\r
       </method>\r
-      <method name="Void .ctor()" attrs="6278">\r
-        <size>7</size>\r
-      </method>\r
-    </type>\r
-    <type name="Test.Base">\r
-      <method name="System.Collections.Generic.IEnumerable`1[Test.Base] GetStuff(Int32)" attrs="454">\r
-        <size>30</size>\r
-      </method>\r
-    </type>\r
-    <type name="Test.Derived">\r
-      <method name="System.Collections.Generic.IEnumerable`1[Test.Base] GetStuff(Int32)" attrs="198">\r
-        <size>37</size>\r
-      </method>\r
-      <method name="System.Collections.Generic.IEnumerable`1[Test.Base] &lt;GetStuff&gt;__BaseCallProxy0(Int32)" attrs="129">\r
-        <size>15</size>\r
-      </method>\r
-    </type>\r
-    <type name="Test.SpecialDerived">\r
-      <method name="System.Collections.Generic.IEnumerable`1[Test.Base] GetStuff(Int32)" attrs="198">\r
-        <size>37</size>\r
-      </method>\r
-      <method name="System.Collections.Generic.IEnumerable`1[Test.Base] &lt;GetStuff&gt;__BaseCallProxy0(Int32)" attrs="129">\r
-        <size>15</size>\r
-      </method>\r
-    </type>\r
-    <type name="Test.Base+&lt;GetStuff&gt;c__Iterator0">\r
-      <method name="System.Collections.Generic.IEnumerator`1[Test.Base] System.Collections.Generic.IEnumerable&lt;Test.Base&gt;.GetEnumerator()" attrs="481">\r
-        <size>40</size>\r
+      <method name="IEnumerator System.Collections.IEnumerable.GetEnumerator()" attrs="481">\r
+        <size>14</size>\r
       </method>\r
-    </type>\r
-    <type name="Test.Derived+&lt;GetStuff&gt;c__Iterator1">\r
       <method name="System.Collections.Generic.IEnumerator`1[Test.Base] System.Collections.Generic.IEnumerable&lt;Test.Base&gt;.GetEnumerator()" attrs="481">\r
         <size>52</size>\r
       </method>\r
-    </type>\r
-    <type name="Test.SpecialDerived+&lt;GetStuff&gt;c__Iterator2">\r
-      <method name="System.Collections.Generic.IEnumerator`1[Test.Base] System.Collections.Generic.IEnumerable&lt;Test.Base&gt;.GetEnumerator()" attrs="481">\r
-        <size>52</size>\r
+      <method name="Void .ctor()" attrs="6278">\r
+        <size>7</size>\r
       </method>\r
     </type>\r
   </test>\r
       </method>\r
     </type>\r
     <type name="C+&lt;Test_2&gt;c__Iterator1+&lt;Test_2&gt;c__AnonStorey3">\r
-      <method name="Int32 &lt;&gt;m__1()" attrs="131">\r
-        <size>14</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
         <size>26</size>\r
       </method>\r
     </type>\r
+    <type name="C+&lt;Test_2&gt;c__Iterator1+&lt;Test_2&gt;c__AnonStorey3">\r
+      <method name="Int32 &lt;&gt;m__0()" attrs="131">\r
+        <size>14</size>\r
+      </method>\r
+    </type>\r
   </test>\r
   <test name="gtest-iter-24.cs">\r
     <type name="B">\r
       </method>\r
     </type>\r
   </test>\r
+  <test name="gtest-iter-30.cs">\r
+    <type name="Program">\r
+      <method name="Void Main()" attrs="150">\r
+        <size>68</size>\r
+      </method>\r
+      <method name="Void .ctor()" attrs="6278">\r
+        <size>7</size>\r
+      </method>\r
+    </type>\r
+    <type name="M">\r
+      <method name="System.Collections.Generic.IEnumerable`1[System.Int32] Test()" attrs="134">\r
+        <size>30</size>\r
+      </method>\r
+      <method name="Void .ctor()" attrs="6278">\r
+        <size>7</size>\r
+      </method>\r
+    </type>\r
+    <type name="M+&lt;Test&gt;c__Iterator0">\r
+      <method name="Int32 System.Collections.Generic.IEnumerator&lt;int&gt;.get_Current()" attrs="2529">\r
+        <size>14</size>\r
+      </method>\r
+      <method name="System.Object System.Collections.IEnumerator.get_Current()" attrs="2529">\r
+        <size>19</size>\r
+      </method>\r
+      <method name="Boolean MoveNext()" attrs="486">\r
+        <size>101</size>\r
+      </method>\r
+      <method name="Void Dispose()" attrs="486">\r
+        <size>15</size>\r
+      </method>\r
+      <method name="Void Reset()" attrs="486">\r
+        <size>6</size>\r
+      </method>\r
+      <method name="IEnumerator System.Collections.IEnumerable.GetEnumerator()" attrs="481">\r
+        <size>14</size>\r
+      </method>\r
+      <method name="System.Collections.Generic.IEnumerator`1[System.Int32] System.Collections.Generic.IEnumerable&lt;int&gt;.GetEnumerator()" attrs="481">\r
+        <size>40</size>\r
+      </method>\r
+      <method name="Void .ctor()" attrs="6278">\r
+        <size>7</size>\r
+      </method>\r
+      <method name="Void &lt;&gt;m__0()" attrs="131">\r
+        <size>57</size>\r
+      </method>\r
+    </type>\r
+    <type name="M+&lt;Test&gt;c__Iterator0+&lt;Test&gt;c__AnonStorey1">\r
+      <method name="Void .ctor()" attrs="6278">\r
+        <size>7</size>\r
+      </method>\r
+      <method name="Void &lt;&gt;m__0()" attrs="131">\r
+        <size>24</size>\r
+      </method>\r
+    </type>\r
+  </test>\r
+  <test name="gtest-iter-31.cs">\r
+    <type name="B">\r
+      <method name="System.Object Foo(System.Object)" attrs="134">\r
+        <size>10</size>\r
+      </method>\r
+      <method name="Void .ctor()" attrs="6278">\r
+        <size>7</size>\r
+      </method>\r
+    </type>\r
+    <type name="C">\r
+      <method name="Void Main()" attrs="150">\r
+        <size>62</size>\r
+      </method>\r
+      <method name="System.Collections.Generic.IEnumerable`1[System.UInt16] Test()" attrs="129">\r
+        <size>30</size>\r
+      </method>\r
+      <method name="Void .ctor()" attrs="6278">\r
+        <size>18</size>\r
+      </method>\r
+    </type>\r
+    <type name="C+&lt;Test&gt;c__Iterator0">\r
+      <method name="UInt16 System.Collections.Generic.IEnumerator&lt;ushort&gt;.get_Current()" attrs="2529">\r
+        <size>14</size>\r
+      </method>\r
+      <method name="System.Object System.Collections.IEnumerator.get_Current()" attrs="2529">\r
+        <size>19</size>\r
+      </method>\r
+      <method name="Boolean MoveNext()" attrs="486">\r
+        <size>81</size>\r
+      </method>\r
+      <method name="Void Dispose()" attrs="486">\r
+        <size>1</size>\r
+      </method>\r
+      <method name="Void Reset()" attrs="486">\r
+        <size>6</size>\r
+      </method>\r
+      <method name="IEnumerator System.Collections.IEnumerable.GetEnumerator()" attrs="481">\r
+        <size>14</size>\r
+      </method>\r
+      <method name="System.Collections.Generic.IEnumerator`1[System.UInt16] System.Collections.Generic.IEnumerable&lt;ushort&gt;.GetEnumerator()" attrs="481">\r
+        <size>40</size>\r
+      </method>\r
+      <method name="System.Object &lt;&gt;m__0(System.String)" attrs="131">\r
+        <size>25</size>\r
+      </method>\r
+      <method name="Void .ctor()" attrs="6278">\r
+        <size>7</size>\r
+      </method>\r
+    </type>\r
+  </test>\r
   <test name="gtest-lambda-01.cs">\r
     <type name="IntFunc">\r
       <method name="Int32 Invoke(Int32)" attrs="454">\r
       <method name="Int32 &lt;Main&gt;m__1(Int32)" attrs="145">\r
         <size>11</size>\r
       </method>\r
-      <method name="Void &lt;Main&gt;m__3(Int32)" attrs="145">\r
-        <size>9</size>\r
-      </method>\r
       <method name="Void .ctor(Int32)" attrs="6273">\r
         <size>14</size>\r
       </method>\r
     </type>\r
     <type name="X+&lt;Main&gt;c__AnonStorey0">\r
-      <method name="Void &lt;&gt;m__2(Int32)" attrs="131">\r
-        <size>9</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
     </type>\r
+    <type name="X">\r
+      <method name="Void &lt;Main&gt;m__2(Int32)" attrs="145">\r
+        <size>9</size>\r
+      </method>\r
+    </type>\r
+    <type name="X+&lt;Main&gt;c__AnonStorey0">\r
+      <method name="Void &lt;&gt;m__0(Int32)" attrs="131">\r
+        <size>9</size>\r
+      </method>\r
+    </type>\r
   </test>\r
   <test name="gtest-lambda-02.cs">\r
     <type name="funcs">\r
       </method>\r
     </type>\r
     <type name="C+&lt;Main&gt;c__AnonStorey0">\r
-      <method name="System.String &lt;&gt;m__2(System.String)" attrs="131">\r
-        <size>19</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
     </type>\r
     <type name="C+&lt;Main&gt;c__AnonStorey1">\r
-      <method name="Int32 &lt;&gt;m__3(Int32)" attrs="131">\r
-        <size>18</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
     </type>\r
+    <type name="C+&lt;Main&gt;c__AnonStorey0">\r
+      <method name="System.String &lt;&gt;m__0(System.String)" attrs="131">\r
+        <size>19</size>\r
+      </method>\r
+    </type>\r
+    <type name="C+&lt;Main&gt;c__AnonStorey1">\r
+      <method name="Int32 &lt;&gt;m__0(Int32)" attrs="131">\r
+        <size>18</size>\r
+      </method>\r
+    </type>\r
   </test>\r
   <test name="gtest-lambda-06.cs">\r
     <type name="TestClass">\r
       </method>\r
     </type>\r
     <type name="TestClass+&lt;Main&gt;c__AnonStorey0">\r
-      <method name="Void &lt;&gt;m__1(T)" attrs="131">\r
-        <size>38</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
     </type>\r
     <type name="TestClass+&lt;Main&gt;c__AnonStorey0+&lt;Main&gt;c__AnonStorey1">\r
-      <method name="Void &lt;&gt;m__2(F)" attrs="131">\r
-        <size>77</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
     </type>\r
+    <type name="TestClass+&lt;Main&gt;c__AnonStorey0">\r
+      <method name="Void &lt;&gt;m__0(T)" attrs="131">\r
+        <size>38</size>\r
+      </method>\r
+    </type>\r
+    <type name="TestClass+&lt;Main&gt;c__AnonStorey0+&lt;Main&gt;c__AnonStorey1">\r
+      <method name="Void &lt;&gt;m__0(F)" attrs="131">\r
+        <size>77</size>\r
+      </method>\r
+    </type>\r
   </test>\r
   <test name="gtest-lambda-07.cs">\r
     <type name="D">\r
       <method name="Void Main()" attrs="150">\r
         <size>77</size>\r
       </method>\r
-      <method name="System.String &lt;Bar&gt;m__1(System.String)" attrs="145">\r
+      <method name="Void .ctor()" attrs="6278">\r
+        <size>7</size>\r
+      </method>\r
+      <method name="System.String &lt;Bar&gt;m__0(System.String)" attrs="145">\r
         <size>14</size>\r
       </method>\r
-      <method name="System.String &lt;Main&gt;m__2(System.String)" attrs="145">\r
+      <method name="System.String &lt;Main&gt;m__1(System.String)" attrs="145">\r
         <size>9</size>\r
       </method>\r
-      <method name="Void &lt;Main&gt;m__3(System.String)" attrs="145">\r
-        <size>7</size>\r
-      </method>\r
-      <method name="Void .ctor()" attrs="6278">\r
+      <method name="Void &lt;Main&gt;m__2(System.String)" attrs="145">\r
         <size>7</size>\r
       </method>\r
     </type>\r
       <method name="Int32 Main()" attrs="150">\r
         <size>128</size>\r
       </method>\r
-      <method name="Int32 &lt;Main&gt;m__1(System.String)" attrs="145">\r
-        <size>14</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
         <size>139</size>\r
       </method>\r
     </type>\r
+    <type name="Repro">\r
+      <method name="Int32 &lt;Main&gt;m__0(System.String)" attrs="145">\r
+        <size>14</size>\r
+      </method>\r
+    </type>\r
   </test>\r
   <test name="gtest-lambda-16.cs">\r
     <type name="Repro">\r
       </method>\r
     </type>\r
     <type name="MainClass+&lt;Main&gt;c__AnonStorey0">\r
-      <method name="Boolean &lt;&gt;m__3(Product)" attrs="131">\r
-        <size>60</size>\r
-      </method>\r
-      <method name="Decimal &lt;&gt;m__4(Product)" attrs="145">\r
-        <size>14</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
         <size>56</size>\r
       </method>\r
     </type>\r
+    <type name="MainClass+&lt;Main&gt;c__AnonStorey0">\r
+      <method name="Boolean &lt;&gt;m__0(Product)" attrs="131">\r
+        <size>60</size>\r
+      </method>\r
+      <method name="Decimal &lt;&gt;m__1(Product)" attrs="145">\r
+        <size>14</size>\r
+      </method>\r
+    </type>\r
   </test>\r
   <test name="gtest-lambda-23.cs">\r
     <type name="C">\r
       </method>\r
     </type>\r
     <type name="C+&lt;Method&gt;c__AnonStorey0`1[T]">\r
-      <method name="System.Object &lt;&gt;m__1(T)" attrs="131">\r
-        <size>14</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
+      <method name="System.Object &lt;&gt;m__0(T)" attrs="131">\r
+        <size>14</size>\r
+      </method>\r
     </type>\r
   </test>\r
   <test name="gtest-lambda-31.cs">\r
       <method name="Int32 &lt;Main&gt;m__3(Int32)" attrs="145">\r
         <size>10</size>\r
       </method>\r
-      <method name="Int32 &lt;Main&gt;m__5(Int32, Int32)" attrs="145">\r
-        <size>10</size>\r
-      </method>\r
-      <method name="Boolean &lt;Main&gt;m__6(Int32)" attrs="145">\r
-        <size>18</size>\r
-      </method>\r
       <method name="Int32 &lt;Main&gt;m__7(Int32)" attrs="145">\r
         <size>10</size>\r
       </method>\r
       <method name="Int32 &lt;Main&gt;m__D(Int32)" attrs="145">\r
         <size>10</size>\r
       </method>\r
-      <method name="Int32 &lt;Main&gt;m__E(Int32)" attrs="145">\r
-        <size>10</size>\r
-      </method>\r
-      <method name="Int32 &lt;Main&gt;m__F(ITest)" attrs="145">\r
-        <size>15</size>\r
-      </method>\r
-      <method name="Int32 &lt;Main&gt;m__10(Int32, ITest)" attrs="145">\r
-        <size>10</size>\r
-      </method>\r
-      <method name="Int32 &lt;Main&gt;m__11(Int32)" attrs="145">\r
-        <size>10</size>\r
-      </method>\r
-      <method name="Int32 &lt;Main&gt;m__12(ITest)" attrs="145">\r
-        <size>15</size>\r
-      </method>\r
-      <method name="Int32 &lt;Main&gt;m__13(Int32, ITest)" attrs="145">\r
-        <size>10</size>\r
-      </method>\r
-      <method name="Int32 &lt;Main&gt;m__14(Int32)" attrs="145">\r
-        <size>10</size>\r
-      </method>\r
-      <method name="Int32 &lt;Main&gt;m__15(ITest)" attrs="145">\r
-        <size>15</size>\r
-      </method>\r
-      <method name="&lt;&gt;__AnonType0`2[System.Int32,from.ITest] &lt;Main&gt;m__16(Int32, ITest)" attrs="145">\r
-        <size>16</size>\r
-      </method>\r
-      <method name="Int32 &lt;Main&gt;m__17(&lt;&gt;__AnonType0`2[System.Int32,from.ITest])" attrs="145">\r
-        <size>15</size>\r
-      </method>\r
-      <method name="Int32 &lt;Main&gt;m__18(ITest)" attrs="145">\r
-        <size>15</size>\r
-      </method>\r
-      <method name="Int32 &lt;Main&gt;m__19(&lt;&gt;__AnonType0`2[System.Int32,from.ITest], ITest)" attrs="145">\r
-        <size>15</size>\r
-      </method>\r
       <method name="Int32 &lt;Main&gt;m__1A(Int32)" attrs="145">\r
         <size>10</size>\r
       </method>\r
-      <method name="Int32 &lt;Main&gt;m__1B(Int32)" attrs="145">\r
-        <size>10</size>\r
-      </method>\r
       <method name="Int32 &lt;Main&gt;m__1D(Int32)" attrs="145">\r
         <size>10</size>\r
       </method>\r
-      <method name="Int32 &lt;Main&gt;m__1E(Int32)" attrs="145">\r
-        <size>10</size>\r
-      </method>\r
       <method name="Int32 &lt;Main&gt;m__20(Int32)" attrs="145">\r
         <size>10</size>\r
       </method>\r
       <method name="Int32 &lt;Main&gt;m__22(Int32)" attrs="145">\r
         <size>10</size>\r
       </method>\r
-      <method name="Int32 &lt;Main&gt;m__23(Int32)" attrs="145">\r
-        <size>10</size>\r
-      </method>\r
-      <method name="&lt;&gt;__AnonType1`2[System.Int32,System.Int32] &lt;Main&gt;m__25(Int32)" attrs="145">\r
-        <size>18</size>\r
-      </method>\r
-      <method name="Int32 &lt;Main&gt;m__26(&lt;&gt;__AnonType1`2[System.Int32,System.Int32])" attrs="145">\r
-        <size>15</size>\r
-      </method>\r
-      <method name="&lt;&gt;__AnonType1`2[System.Int32,System.Int32] &lt;Main&gt;m__27(Int32)" attrs="145">\r
-        <size>18</size>\r
-      </method>\r
-      <method name="&lt;&gt;__AnonType2`2[&lt;&gt;__AnonType1`2[System.Int32,System.Int32],System.Int32] &lt;Main&gt;m__28(&lt;&gt;__AnonType1`2[System.Int32,System.Int32])" attrs="145">\r
-        <size>23</size>\r
-      </method>\r
-      <method name="Int32 &lt;Main&gt;m__29(&lt;&gt;__AnonType2`2[&lt;&gt;__AnonType1`2[System.Int32,System.Int32],System.Int32])" attrs="145">\r
-        <size>20</size>\r
-      </method>\r
       <method name="Int32 &lt;Main&gt;m__2A(Int32)" attrs="145">\r
         <size>10</size>\r
       </method>\r
-      <method name="Int32 &lt;Main&gt;m__2B(Int32)" attrs="145">\r
-        <size>10</size>\r
-      </method>\r
-      <method name="Int32 &lt;Main&gt;m__2E(&lt;&gt;__AnonType3`2[System.Linq.IGrouping`2[System.Int32,System.Int32],System.Int32])" attrs="145">\r
-        <size>10</size>\r
-      </method>\r
       <method name="Int32 &lt;Main&gt;m__2F(&lt;&gt;__AnonType3`2[System.Linq.IGrouping`2[System.Int32,System.Int32],System.Int32])" attrs="145">\r
-        <size>15</size>\r
+        <size>10</size>\r
       </method>\r
       <method name="Int32 &lt;Main&gt;m__32(&lt;&gt;__AnonType3`2[System.Linq.IGrouping`2[System.Int32,System.Int32],System.Int32])" attrs="145">\r
         <size>10</size>\r
       <method name="Int32 &lt;Main&gt;m__33(&lt;&gt;__AnonType3`2[System.Linq.IGrouping`2[System.Int32,System.Int32],System.Int32])" attrs="145">\r
         <size>15</size>\r
       </method>\r
-      <method name="Int32 &lt;Main&gt;m__36(&lt;&gt;__AnonType3`2[System.Linq.IGrouping`2[System.Int32,System.Int32],System.Int32])" attrs="145">\r
-        <size>10</size>\r
-      </method>\r
-      <method name="Int32 &lt;Main&gt;m__37(&lt;&gt;__AnonType3`2[System.Linq.IGrouping`2[System.Int32,System.Int32],System.Int32])" attrs="145">\r
-        <size>15</size>\r
-      </method>\r
-      <method name="Int32 &lt;Main&gt;m__39(Int32)" attrs="145">\r
-        <size>10</size>\r
-      </method>\r
-      <method name="Int32 &lt;Main&gt;m__3A(Int32)" attrs="145">\r
-        <size>10</size>\r
-      </method>\r
-      <method name="Int32 &lt;Main&gt;m__3B(Int32)" attrs="145">\r
-        <size>10</size>\r
-      </method>\r
-      <method name="&lt;&gt;__AnonType4`2[&lt;&gt;__AnonType1`2[System.Int32,System.Collections.Generic.IEnumerable`1[System.Int32]],System.Int32] &lt;Main&gt;m__3D(&lt;&gt;__AnonType1`2[System.Int32,System.Collections.Generic.IEnumerable`1[System.Int32]])" attrs="145">\r
-        <size>17</size>\r
-      </method>\r
-      <method name="Int32 &lt;Main&gt;m__3E(&lt;&gt;__AnonType4`2[&lt;&gt;__AnonType1`2[System.Int32,System.Collections.Generic.IEnumerable`1[System.Int32]],System.Int32])" attrs="145">\r
-        <size>10</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
       </method>\r
     </type>\r
     <type name="from.C+&lt;Main&gt;c__AnonStorey0">\r
-      <method name="&lt;&gt;__AnonType1`2[System.Int32,System.Collections.Generic.IEnumerable`1[System.Int32]] &lt;&gt;m__3C(Int32)" attrs="131">\r
-        <size>55</size>\r
-      </method>\r
-      <method name="Int32 &lt;&gt;m__3F(Int32)" attrs="145">\r
-        <size>10</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
       <method name="System.Nullable`1[System.Boolean] &lt;Main&gt;m__2(System.Nullable`1[System.Boolean])" attrs="145">\r
         <size>10</size>\r
       </method>\r
-      <method name="Int32 &lt;Main&gt;m__1C(Int32, System.Collections.Generic.IEnumerable`1[System.Int32])" attrs="145">\r
+      <method name="&lt;&gt;__AnonType3`2[System.Linq.IGrouping`2[System.Int32,System.Int32],System.Int32] &lt;Main&gt;m__31(System.Linq.IGrouping`2[System.Int32,System.Int32], Int32)" attrs="145">\r
+        <size>16</size>\r
+      </method>\r
+      <method name="Int32 &lt;Main&gt;m__4(Int32, Int32)" attrs="145">\r
+        <size>10</size>\r
+      </method>\r
+      <method name="Boolean &lt;Main&gt;m__5(Int32)" attrs="145">\r
+        <size>18</size>\r
+      </method>\r
+      <method name="Int32 &lt;Main&gt;m__6(Int32)" attrs="145">\r
+        <size>10</size>\r
+      </method>\r
+      <method name="Int32 &lt;Main&gt;m__E(ITest)" attrs="145">\r
+        <size>15</size>\r
+      </method>\r
+      <method name="Int32 &lt;Main&gt;m__F(Int32, ITest)" attrs="145">\r
         <size>10</size>\r
       </method>\r
-      <method name="Int32 &lt;Main&gt;m__1F(Int32, System.Collections.Generic.IEnumerable`1[System.Int32])" attrs="145">\r
+      <method name="Int32 &lt;Main&gt;m__10(Int32)" attrs="145">\r
+        <size>10</size>\r
+      </method>\r
+      <method name="Int32 &lt;Main&gt;m__11(ITest)" attrs="145">\r
+        <size>15</size>\r
+      </method>\r
+      <method name="Int32 &lt;Main&gt;m__12(Int32, ITest)" attrs="145">\r
         <size>10</size>\r
       </method>\r
-      <method name="System.Linq.IGrouping`2[System.Int32,System.Int32] &lt;Main&gt;m__24(System.Linq.IGrouping`2[System.Int32,System.Int32])" attrs="145">\r
+      <method name="Int32 &lt;Main&gt;m__13(Int32)" attrs="145">\r
         <size>10</size>\r
       </method>\r
-      <method name="&lt;&gt;__AnonType3`2[System.Linq.IGrouping`2[System.Int32,System.Int32],System.Int32] &lt;Main&gt;m__2D(System.Linq.IGrouping`2[System.Int32,System.Int32], Int32)" attrs="145">\r
+      <method name="Int32 &lt;Main&gt;m__14(ITest)" attrs="145">\r
+        <size>15</size>\r
+      </method>\r
+      <method name="&lt;&gt;__AnonType0`2[System.Int32,from.ITest] &lt;Main&gt;m__15(Int32, ITest)" attrs="145">\r
         <size>16</size>\r
       </method>\r
-      <method name="&lt;&gt;__AnonType3`2[System.Linq.IGrouping`2[System.Int32,System.Int32],System.Int32] &lt;Main&gt;m__31(System.Linq.IGrouping`2[System.Int32,System.Int32], Int32)" attrs="145">\r
+      <method name="Int32 &lt;Main&gt;m__16(&lt;&gt;__AnonType0`2[System.Int32,from.ITest])" attrs="145">\r
+        <size>15</size>\r
+      </method>\r
+      <method name="Int32 &lt;Main&gt;m__17(ITest)" attrs="145">\r
+        <size>15</size>\r
+      </method>\r
+      <method name="Int32 &lt;Main&gt;m__18(&lt;&gt;__AnonType0`2[System.Int32,from.ITest], ITest)" attrs="145">\r
+        <size>15</size>\r
+      </method>\r
+      <method name="Int32 &lt;Main&gt;m__19(Int32)" attrs="145">\r
+        <size>10</size>\r
+      </method>\r
+      <method name="Int32 &lt;Main&gt;m__1B(Int32, System.Collections.Generic.IEnumerable`1[System.Int32])" attrs="145">\r
+        <size>10</size>\r
+      </method>\r
+      <method name="Int32 &lt;Main&gt;m__1C(Int32)" attrs="145">\r
+        <size>10</size>\r
+      </method>\r
+      <method name="Int32 &lt;Main&gt;m__1E(Int32, System.Collections.Generic.IEnumerable`1[System.Int32])" attrs="145">\r
+        <size>10</size>\r
+      </method>\r
+      <method name="Int32 &lt;Main&gt;m__1F(Int32)" attrs="145">\r
+        <size>10</size>\r
+      </method>\r
+      <method name="System.Linq.IGrouping`2[System.Int32,System.Int32] &lt;Main&gt;m__23(System.Linq.IGrouping`2[System.Int32,System.Int32])" attrs="145">\r
+        <size>10</size>\r
+      </method>\r
+      <method name="&lt;&gt;__AnonType1`2[System.Int32,System.Int32] &lt;Main&gt;m__24(Int32)" attrs="145">\r
+        <size>18</size>\r
+      </method>\r
+      <method name="Int32 &lt;Main&gt;m__25(&lt;&gt;__AnonType1`2[System.Int32,System.Int32])" attrs="145">\r
+        <size>15</size>\r
+      </method>\r
+      <method name="&lt;&gt;__AnonType1`2[System.Int32,System.Int32] &lt;Main&gt;m__26(Int32)" attrs="145">\r
+        <size>18</size>\r
+      </method>\r
+      <method name="&lt;&gt;__AnonType2`2[&lt;&gt;__AnonType1`2[System.Int32,System.Int32],System.Int32] &lt;Main&gt;m__27(&lt;&gt;__AnonType1`2[System.Int32,System.Int32])" attrs="145">\r
+        <size>23</size>\r
+      </method>\r
+      <method name="Int32 &lt;Main&gt;m__28(&lt;&gt;__AnonType2`2[&lt;&gt;__AnonType1`2[System.Int32,System.Int32],System.Int32])" attrs="145">\r
+        <size>20</size>\r
+      </method>\r
+      <method name="Int32 &lt;Main&gt;m__29(Int32)" attrs="145">\r
+        <size>10</size>\r
+      </method>\r
+      <method name="&lt;&gt;__AnonType3`2[System.Linq.IGrouping`2[System.Int32,System.Int32],System.Int32] &lt;Main&gt;m__2B(System.Linq.IGrouping`2[System.Int32,System.Int32], Int32)" attrs="145">\r
         <size>16</size>\r
       </method>\r
-      <method name="&lt;&gt;__AnonType3`2[System.Linq.IGrouping`2[System.Int32,System.Int32],System.Int32] &lt;Main&gt;m__35(System.Linq.IGrouping`2[System.Int32,System.Int32], Int32)" attrs="145">\r
+      <method name="Int32 &lt;Main&gt;m__2C(&lt;&gt;__AnonType3`2[System.Linq.IGrouping`2[System.Int32,System.Int32],System.Int32])" attrs="145">\r
+        <size>10</size>\r
+      </method>\r
+      <method name="Int32 &lt;Main&gt;m__2D(&lt;&gt;__AnonType3`2[System.Linq.IGrouping`2[System.Int32,System.Int32],System.Int32])" attrs="145">\r
+        <size>15</size>\r
+      </method>\r
+      <method name="&lt;&gt;__AnonType3`2[System.Linq.IGrouping`2[System.Int32,System.Int32],System.Int32] &lt;Main&gt;m__2E(System.Linq.IGrouping`2[System.Int32,System.Int32], Int32)" attrs="145">\r
         <size>16</size>\r
       </method>\r
-      <method name="System.Linq.IGrouping`2[System.Int32,System.Int32] &lt;Main&gt;m__38(System.Linq.IGrouping`2[System.Int32,System.Int32])" attrs="145">\r
+      <method name="Int32 &lt;Main&gt;m__30(&lt;&gt;__AnonType3`2[System.Linq.IGrouping`2[System.Int32,System.Int32],System.Int32])" attrs="145">\r
+        <size>15</size>\r
+      </method>\r
+      <method name="System.Linq.IGrouping`2[System.Int32,System.Int32] &lt;Main&gt;m__34(System.Linq.IGrouping`2[System.Int32,System.Int32])" attrs="145">\r
+        <size>10</size>\r
+      </method>\r
+      <method name="Int32 &lt;Main&gt;m__35(Int32)" attrs="145">\r
+        <size>10</size>\r
+      </method>\r
+      <method name="Int32 &lt;Main&gt;m__36(Int32)" attrs="145">\r
+        <size>10</size>\r
+      </method>\r
+      <method name="Int32 &lt;Main&gt;m__37(Int32)" attrs="145">\r
+        <size>10</size>\r
+      </method>\r
+      <method name="&lt;&gt;__AnonType4`2[&lt;&gt;__AnonType1`2[System.Int32,System.Collections.Generic.IEnumerable`1[System.Int32]],System.Int32] &lt;Main&gt;m__38(&lt;&gt;__AnonType1`2[System.Int32,System.Collections.Generic.IEnumerable`1[System.Int32]])" attrs="145">\r
+        <size>17</size>\r
+      </method>\r
+      <method name="Int32 &lt;Main&gt;m__39(&lt;&gt;__AnonType4`2[&lt;&gt;__AnonType1`2[System.Int32,System.Collections.Generic.IEnumerable`1[System.Int32]],System.Int32])" attrs="145">\r
         <size>10</size>\r
       </method>\r
     </type>\r
     <type name="from.C+&lt;Main&gt;c__AnonStorey0">\r
-      <method name="System.Collections.Generic.IEnumerable`1[System.Int32] &lt;&gt;m__4(Int32)" attrs="131">\r
+      <method name="System.Collections.Generic.IEnumerable`1[System.Int32] &lt;&gt;m__0(Int32)" attrs="131">\r
         <size>15</size>\r
       </method>\r
-      <method name="System.Collections.Generic.IEnumerable`1[System.Int32] &lt;&gt;m__2C(System.Linq.IGrouping`2[System.Int32,System.Int32])" attrs="131">\r
+      <method name="System.Collections.Generic.IEnumerable`1[System.Int32] &lt;&gt;m__1(System.Linq.IGrouping`2[System.Int32,System.Int32])" attrs="131">\r
         <size>15</size>\r
       </method>\r
-      <method name="System.Collections.Generic.IEnumerable`1[System.Int32] &lt;&gt;m__30(System.Linq.IGrouping`2[System.Int32,System.Int32])" attrs="131">\r
+      <method name="System.Collections.Generic.IEnumerable`1[System.Int32] &lt;&gt;m__2(System.Linq.IGrouping`2[System.Int32,System.Int32])" attrs="131">\r
         <size>15</size>\r
       </method>\r
-      <method name="System.Collections.Generic.IEnumerable`1[System.Int32] &lt;&gt;m__34(System.Linq.IGrouping`2[System.Int32,System.Int32])" attrs="131">\r
+      <method name="System.Collections.Generic.IEnumerable`1[System.Int32] &lt;&gt;m__3(System.Linq.IGrouping`2[System.Int32,System.Int32])" attrs="131">\r
         <size>15</size>\r
       </method>\r
+      <method name="&lt;&gt;__AnonType1`2[System.Int32,System.Collections.Generic.IEnumerable`1[System.Int32]] &lt;&gt;m__4(Int32)" attrs="131">\r
+        <size>55</size>\r
+      </method>\r
+      <method name="Int32 &lt;&gt;m__5(Int32)" attrs="145">\r
+        <size>10</size>\r
+      </method>\r
     </type>\r
   </test>\r
   <test name="gtest-linq-02.cs">\r
       <method name="Int32 Main()" attrs="150">\r
         <size>765</size>\r
       </method>\r
-      <method name="&lt;&gt;__AnonType0`2[System.Int32,System.String] &lt;Main&gt;m__1(Int32, System.String)" attrs="145">\r
-        <size>16</size>\r
-      </method>\r
-      <method name="Boolean &lt;Main&gt;m__2(Int32)" attrs="145">\r
-        <size>13</size>\r
-      </method>\r
-      <method name="&lt;&gt;__AnonType0`2[System.Int32,System.String] &lt;Main&gt;m__4(Int32, System.String)" attrs="145">\r
-        <size>16</size>\r
-      </method>\r
-      <method name="&lt;&gt;__AnonType1`2[&lt;&gt;__AnonType0`2[System.Int32,System.String],System.Int32] &lt;Main&gt;m__6(&lt;&gt;__AnonType0`2[System.Int32,System.String], Int32)" attrs="145">\r
-        <size>16</size>\r
-      </method>\r
-      <method name="Int32 &lt;Main&gt;m__7(&lt;&gt;__AnonType1`2[&lt;&gt;__AnonType0`2[System.Int32,System.String],System.Int32])" attrs="145">\r
-        <size>15</size>\r
-      </method>\r
-      <method name="&lt;&gt;__AnonType2`3[System.Int32,System.Int32,System.Int32] &lt;Main&gt;m__8(&lt;&gt;__AnonType1`2[&lt;&gt;__AnonType0`2[System.Int32,System.String],System.Int32])" attrs="145">\r
-        <size>33</size>\r
-      </method>\r
-      <method name="&lt;&gt;__AnonType0`2[System.Int32,System.String] &lt;Main&gt;m__A(Int32, System.String)" attrs="145">\r
-        <size>16</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
         <size>20</size>\r
       </method>\r
       <method name="System.Collections.Generic.IEnumerable`1[System.String] &lt;&gt;m__3(Int32)" attrs="131">\r
-        <size>20</size>\r
+        <size>15</size>\r
       </method>\r
-      <method name="System.Collections.Generic.IEnumerable`1[System.Int32] &lt;&gt;m__5(&lt;&gt;__AnonType0`2[System.Int32,System.String])" attrs="131">\r
-        <size>20</size>\r
+    </type>\r
+    <type name="SelectMany">\r
+      <method name="&lt;&gt;__AnonType0`2[System.Int32,System.String] &lt;Main&gt;m__0(Int32, System.String)" attrs="145">\r
+        <size>16</size>\r
+      </method>\r
+      <method name="Boolean &lt;Main&gt;m__1(Int32)" attrs="145">\r
+        <size>13</size>\r
       </method>\r
-      <method name="System.Collections.Generic.IEnumerable`1[System.String] &lt;&gt;m__9(Int32)" attrs="131">\r
+      <method name="&lt;&gt;__AnonType0`2[System.Int32,System.String] &lt;Main&gt;m__2(Int32, System.String)" attrs="145">\r
+        <size>16</size>\r
+      </method>\r
+      <method name="&lt;&gt;__AnonType1`2[&lt;&gt;__AnonType0`2[System.Int32,System.String],System.Int32] &lt;Main&gt;m__3(&lt;&gt;__AnonType0`2[System.Int32,System.String], Int32)" attrs="145">\r
+        <size>16</size>\r
+      </method>\r
+      <method name="Int32 &lt;Main&gt;m__4(&lt;&gt;__AnonType1`2[&lt;&gt;__AnonType0`2[System.Int32,System.String],System.Int32])" attrs="145">\r
         <size>15</size>\r
       </method>\r
+      <method name="&lt;&gt;__AnonType2`3[System.Int32,System.Int32,System.Int32] &lt;Main&gt;m__5(&lt;&gt;__AnonType1`2[&lt;&gt;__AnonType0`2[System.Int32,System.String],System.Int32])" attrs="145">\r
+        <size>33</size>\r
+      </method>\r
+      <method name="&lt;&gt;__AnonType0`2[System.Int32,System.String] &lt;Main&gt;m__6(Int32, System.String)" attrs="145">\r
+        <size>16</size>\r
+      </method>\r
+    </type>\r
+    <type name="SelectMany+&lt;Main&gt;c__AnonStorey0">\r
+      <method name="System.Collections.Generic.IEnumerable`1[System.String] &lt;&gt;m__1(Int32)" attrs="131">\r
+        <size>20</size>\r
+      </method>\r
+      <method name="System.Collections.Generic.IEnumerable`1[System.Int32] &lt;&gt;m__2(&lt;&gt;__AnonType0`2[System.Int32,System.String])" attrs="131">\r
+        <size>20</size>\r
+      </method>\r
     </type>\r
   </test>\r
   <test name="gtest-linq-08.cs">\r
       <method name="&lt;&gt;__AnonType1`2[System.Char,System.Int32] &lt;XX&gt;m__6(Char)" attrs="145">\r
         <size>16</size>\r
       </method>\r
-      <method name="Char &lt;XX&gt;m__8(&lt;&gt;__AnonType1`2[System.Char,System.Int32])" attrs="145">\r
-        <size>14</size>\r
-      </method>\r
-      <method name="Boolean &lt;Main&gt;m__9(Char)" attrs="145">\r
-        <size>14</size>\r
-      </method>\r
-      <method name="&lt;&gt;__AnonType1`2[System.Char,System.Int32] &lt;Main&gt;m__A(Char)" attrs="145">\r
-        <size>17</size>\r
-      </method>\r
-      <method name="Char &lt;Main&gt;m__C(&lt;&gt;__AnonType1`2[System.Char,System.Int32])" attrs="145">\r
-        <size>15</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
       </method>\r
     </type>\r
     <type name="NestedQuery+&lt;XX&gt;c__AnonStorey0">\r
-      <method name="Boolean &lt;&gt;m__7(&lt;&gt;__AnonType1`2[System.Char,System.Int32])" attrs="131">\r
-        <size>22</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
     </type>\r
     <type name="NestedQuery+&lt;Main&gt;c__AnonStorey1">\r
-      <method name="Boolean &lt;&gt;m__B(&lt;&gt;__AnonType1`2[System.Char,System.Int32])" attrs="131">\r
-        <size>23</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
       <method name="System.Collections.Generic.IEnumerable`1[System.Char] &lt;Main&gt;m__5(&lt;&gt;__AnonType0`2[System.String,System.Int32])" attrs="145">\r
         <size>118</size>\r
       </method>\r
+      <method name="Char &lt;XX&gt;m__7(&lt;&gt;__AnonType1`2[System.Char,System.Int32])" attrs="145">\r
+        <size>14</size>\r
+      </method>\r
+      <method name="Boolean &lt;Main&gt;m__8(Char)" attrs="145">\r
+        <size>14</size>\r
+      </method>\r
+      <method name="&lt;&gt;__AnonType1`2[System.Char,System.Int32] &lt;Main&gt;m__9(Char)" attrs="145">\r
+        <size>17</size>\r
+      </method>\r
+      <method name="Char &lt;Main&gt;m__A(&lt;&gt;__AnonType1`2[System.Char,System.Int32])" attrs="145">\r
+        <size>15</size>\r
+      </method>\r
+    </type>\r
+    <type name="NestedQuery+&lt;XX&gt;c__AnonStorey0">\r
+      <method name="Boolean &lt;&gt;m__0(&lt;&gt;__AnonType1`2[System.Char,System.Int32])" attrs="131">\r
+        <size>22</size>\r
+      </method>\r
+    </type>\r
+    <type name="NestedQuery+&lt;Main&gt;c__AnonStorey1">\r
+      <method name="Boolean &lt;&gt;m__0(&lt;&gt;__AnonType1`2[System.Char,System.Int32])" attrs="131">\r
+        <size>23</size>\r
+      </method>\r
     </type>\r
   </test>\r
   <test name="gtest-linq-13.cs">\r
       <method name="Void Test_2()" attrs="145">\r
         <size>32</size>\r
       </method>\r
-      <method name="System.Func`1[System.Collections.Generic.IEnumerable`1[System.Int32]] &lt;Test_2&gt;m__1(Int32)" attrs="145">\r
-        <size>33</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
       </method>\r
     </type>\r
     <type name="C+&lt;Test_1&gt;c__AnonStorey0">\r
-      <method name="&lt;&gt;__AnonType0`2[System.Int32,System.Int32] &lt;&gt;m__2(Int32)" attrs="145">\r
-        <size>16</size>\r
-      </method>\r
-      <method name="Int32 &lt;&gt;m__3(&lt;&gt;__AnonType0`2[System.Int32,System.Int32])" attrs="131">\r
-        <size>22</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
     </type>\r
     <type name="C+&lt;Test_2&gt;c__AnonStorey1">\r
-      <method name="&lt;&gt;__AnonType0`2[System.Int32,System.Int32] &lt;&gt;m__5(Int32)" attrs="145">\r
-        <size>16</size>\r
-      </method>\r
-      <method name="Int32 &lt;&gt;m__6(&lt;&gt;__AnonType0`2[System.Int32,System.Int32])" attrs="131">\r
-        <size>22</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
         <size>74</size>\r
       </method>\r
     </type>\r
+    <type name="C">\r
+      <method name="System.Func`1[System.Collections.Generic.IEnumerable`1[System.Int32]] &lt;Test_2&gt;m__0(Int32)" attrs="145">\r
+        <size>33</size>\r
+      </method>\r
+    </type>\r
+    <type name="C+&lt;Test_1&gt;c__AnonStorey0">\r
+      <method name="&lt;&gt;__AnonType0`2[System.Int32,System.Int32] &lt;&gt;m__1(Int32)" attrs="145">\r
+        <size>16</size>\r
+      </method>\r
+      <method name="Int32 &lt;&gt;m__2(&lt;&gt;__AnonType0`2[System.Int32,System.Int32])" attrs="131">\r
+        <size>22</size>\r
+      </method>\r
+    </type>\r
     <type name="C+&lt;Test_2&gt;c__AnonStorey1">\r
-      <method name="System.Collections.Generic.IEnumerable`1[System.Int32] &lt;&gt;m__4()" attrs="131">\r
+      <method name="System.Collections.Generic.IEnumerable`1[System.Int32] &lt;&gt;m__0()" attrs="131">\r
         <size>74</size>\r
       </method>\r
+      <method name="&lt;&gt;__AnonType0`2[System.Int32,System.Int32] &lt;&gt;m__1(Int32)" attrs="145">\r
+        <size>16</size>\r
+      </method>\r
+      <method name="Int32 &lt;&gt;m__2(&lt;&gt;__AnonType0`2[System.Int32,System.Int32])" attrs="131">\r
+        <size>22</size>\r
+      </method>\r
     </type>\r
   </test>\r
   <test name="gtest-linq-17.cs">\r
       </method>\r
     </type>\r
     <type name="C+&lt;Main&gt;c__AnonStorey0">\r
-      <method name="Boolean &lt;&gt;m__12(Int32)" attrs="131">\r
-        <size>17</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
     </type>\r
     <type name="C+&lt;Main&gt;c__AnonStorey1">\r
-      <method name="Boolean &lt;&gt;m__13(Int32)" attrs="131">\r
-        <size>22</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
     </type>\r
     <type name="C+&lt;Main&gt;c__AnonStorey2">\r
-      <method name="Boolean &lt;&gt;m__14(Int32)" attrs="131">\r
-        <size>17</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
     </type>\r
     <type name="C+&lt;Main&gt;c__AnonStorey3">\r
-      <method name="Boolean &lt;&gt;m__15(Int32)" attrs="131">\r
-        <size>17</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
     </type>\r
     <type name="C+&lt;Main&gt;c__AnonStorey4">\r
-      <method name="Int32 &lt;&gt;m__16(Int32)" attrs="131">\r
-        <size>16</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
     </type>\r
     <type name="C+&lt;Main&gt;c__AnonStorey5">\r
-      <method name="Int32 &lt;&gt;m__17(Int32)" attrs="131">\r
-        <size>16</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
     </type>\r
     <type name="C+&lt;Main&gt;c__AnonStorey6">\r
-      <method name="Boolean &lt;&gt;m__18(Int32)" attrs="131">\r
-        <size>27</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
     </type>\r
     <type name="C+&lt;Main&gt;c__AnonStorey7">\r
-      <method name="Boolean &lt;&gt;m__19(Int32)" attrs="131">\r
-        <size>17</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
     </type>\r
     <type name="C+&lt;Main&gt;c__AnonStorey8">\r
-      <method name="Boolean &lt;&gt;m__1A(Int32)" attrs="131">\r
-        <size>17</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
     </type>\r
     <type name="C+&lt;Main&gt;c__AnonStorey9">\r
-      <method name="Boolean &lt;&gt;m__1B(Int32)" attrs="131">\r
-        <size>17</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
     </type>\r
     <type name="C+&lt;Main&gt;c__AnonStoreyA">\r
-      <method name="Boolean &lt;&gt;m__1C(Int32)" attrs="131">\r
-        <size>17</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
         <size>10</size>\r
       </method>\r
     </type>\r
+    <type name="C+&lt;Main&gt;c__AnonStorey0">\r
+      <method name="Boolean &lt;&gt;m__0(Int32)" attrs="131">\r
+        <size>17</size>\r
+      </method>\r
+    </type>\r
+    <type name="C+&lt;Main&gt;c__AnonStorey1">\r
+      <method name="Boolean &lt;&gt;m__0(Int32)" attrs="131">\r
+        <size>22</size>\r
+      </method>\r
+    </type>\r
+    <type name="C+&lt;Main&gt;c__AnonStorey2">\r
+      <method name="Boolean &lt;&gt;m__0(Int32)" attrs="131">\r
+        <size>17</size>\r
+      </method>\r
+    </type>\r
+    <type name="C+&lt;Main&gt;c__AnonStorey3">\r
+      <method name="Boolean &lt;&gt;m__0(Int32)" attrs="131">\r
+        <size>17</size>\r
+      </method>\r
+    </type>\r
+    <type name="C+&lt;Main&gt;c__AnonStorey4">\r
+      <method name="Int32 &lt;&gt;m__0(Int32)" attrs="131">\r
+        <size>16</size>\r
+      </method>\r
+    </type>\r
+    <type name="C+&lt;Main&gt;c__AnonStorey5">\r
+      <method name="Int32 &lt;&gt;m__0(Int32)" attrs="131">\r
+        <size>16</size>\r
+      </method>\r
+    </type>\r
+    <type name="C+&lt;Main&gt;c__AnonStorey6">\r
+      <method name="Boolean &lt;&gt;m__0(Int32)" attrs="131">\r
+        <size>27</size>\r
+      </method>\r
+    </type>\r
+    <type name="C+&lt;Main&gt;c__AnonStorey7">\r
+      <method name="Boolean &lt;&gt;m__0(Int32)" attrs="131">\r
+        <size>17</size>\r
+      </method>\r
+    </type>\r
+    <type name="C+&lt;Main&gt;c__AnonStorey8">\r
+      <method name="Boolean &lt;&gt;m__0(Int32)" attrs="131">\r
+        <size>17</size>\r
+      </method>\r
+    </type>\r
+    <type name="C+&lt;Main&gt;c__AnonStorey9">\r
+      <method name="Boolean &lt;&gt;m__0(Int32)" attrs="131">\r
+        <size>17</size>\r
+      </method>\r
+    </type>\r
+    <type name="C+&lt;Main&gt;c__AnonStoreyA">\r
+      <method name="Boolean &lt;&gt;m__0(Int32)" attrs="131">\r
+        <size>17</size>\r
+      </method>\r
+    </type>\r
   </test>\r
   <test name="gtest-linq-19.cs">\r
     <type name="Test">\r
       </method>\r
     </type>\r
     <type name="Program+&lt;Main&gt;c__AnonStorey0+&lt;Main&gt;c__AnonStorey1">\r
-      <method name="Void &lt;&gt;m__2()" attrs="131">\r
-        <size>49</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
         <size>15</size>\r
       </method>\r
     </type>\r
+    <type name="Program+&lt;Main&gt;c__AnonStorey0+&lt;Main&gt;c__AnonStorey1">\r
+      <method name="Void &lt;&gt;m__0()" attrs="131">\r
+        <size>49</size>\r
+      </method>\r
+    </type>\r
   </test>\r
   <test name="gtest-linq-22.cs">\r
     <type name="Test.MainClass">\r
       </method>\r
     </type>\r
     <type name="C+&lt;Main&gt;c__AnonStorey0">\r
-      <method name="&lt;&gt;__AnonType0`2[System.String,System.Boolean] &lt;&gt;m__2(System.String)" attrs="145">\r
-        <size>55</size>\r
-      </method>\r
-      <method name="Boolean &lt;&gt;m__3(&lt;&gt;__AnonType0`2[System.String,System.Boolean])" attrs="145">\r
-        <size>15</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
     </type>\r
     <type name="C+&lt;Main&gt;c__AnonStorey0+&lt;Main&gt;c__AnonStorey1">\r
-      <method name="Boolean &lt;&gt;m__4(Char)" attrs="131">\r
-        <size>24</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
     </type>\r
     <type name="C+&lt;Main&gt;c__AnonStorey0">\r
-      <method name="System.Collections.Generic.IEnumerable`1[System.Boolean] &lt;&gt;m__1(System.String)" attrs="131">\r
+      <method name="System.Collections.Generic.IEnumerable`1[System.Boolean] &lt;&gt;m__0(System.String)" attrs="131">\r
         <size>82</size>\r
       </method>\r
+      <method name="&lt;&gt;__AnonType0`2[System.String,System.Boolean] &lt;&gt;m__1(System.String)" attrs="145">\r
+        <size>55</size>\r
+      </method>\r
+      <method name="Boolean &lt;&gt;m__2(&lt;&gt;__AnonType0`2[System.String,System.Boolean])" attrs="145">\r
+        <size>15</size>\r
+      </method>\r
+    </type>\r
+    <type name="C+&lt;Main&gt;c__AnonStorey0+&lt;Main&gt;c__AnonStorey1">\r
+      <method name="Boolean &lt;&gt;m__0(Char)" attrs="131">\r
+        <size>24</size>\r
+      </method>\r
     </type>\r
   </test>\r
   <test name="gtest-linq-28.cs">\r
       </method>\r
     </type>\r
     <type name="C+&lt;Main&gt;c__AnonStorey0">\r
-      <method name="Int32 &lt;&gt;m__1(Int32)" attrs="131">\r
-        <size>14</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
+      <method name="Int32 &lt;&gt;m__0(Int32)" attrs="131">\r
+        <size>14</size>\r
+      </method>\r
     </type>\r
   </test>\r
   <test name="gtest-named-02.cs">\r
       <method name="Void Main()" attrs="150">\r
         <size>282</size>\r
       </method>\r
-      <method name="Void &lt;Main&gt;m__1()" attrs="145">\r
-        <size>17</size>\r
-      </method>\r
-      <method name="System.Object &lt;Main&gt;m__2(Char)" attrs="145">\r
-        <size>24</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6273">\r
         <size>23</size>\r
       </method>\r
         <size>26</size>\r
       </method>\r
     </type>\r
+    <type name="CallerMemberTest">\r
+      <method name="Void &lt;Main&gt;m__0()" attrs="145">\r
+        <size>17</size>\r
+      </method>\r
+      <method name="System.Object &lt;Main&gt;m__1(Char)" attrs="145">\r
+        <size>24</size>\r
+      </method>\r
+    </type>\r
   </test>\r
   <test name="gtest-optional-23.cs">\r
     <type name="CallerLineNumberTest">\r
         <size>10</size>\r
       </method>\r
       <method name="Int32 Main()" attrs="150">\r
-        <size>125</size>\r
+        <size>115</size>\r
       </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
     </type>\r
     <type name="X+&lt;t2&gt;c__AnonStorey1">\r
-      <method name="Int32 &lt;&gt;m__1()" attrs="131">\r
-        <size>15</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
     </type>\r
     <type name="X+&lt;Main2&gt;c__AnonStorey2">\r
-      <method name="Void &lt;&gt;m__2(System.Object, System.EventArgs)" attrs="131">\r
-        <size>34</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
     </type>\r
+    <type name="X+&lt;t2&gt;c__AnonStorey1">\r
+      <method name="Int32 &lt;&gt;m__0()" attrs="131">\r
+        <size>15</size>\r
+      </method>\r
+    </type>\r
+    <type name="X+&lt;Main2&gt;c__AnonStorey2">\r
+      <method name="Void &lt;&gt;m__0(System.Object, System.EventArgs)" attrs="131">\r
+        <size>34</size>\r
+      </method>\r
+    </type>\r
   </test>\r
   <test name="test-365.cs">\r
     <type name="C">\r
       </method>\r
     </type>\r
     <type name="Z+&lt;TestPostinc&gt;c__AnonStorey1">\r
-      <method name="Void &lt;&gt;m__1()" attrs="131">\r
-        <size>39</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
+      <method name="Void &lt;&gt;m__0()" attrs="131">\r
+        <size>39</size>\r
+      </method>\r
     </type>\r
   </test>\r
   <test name="test-475.cs">\r
   <test name="test-609.cs">\r
     <type name="Test">\r
       <method name="Int32 Main()" attrs="150">\r
-        <size>54</size>\r
+        <size>10</size>\r
       </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
     </type>\r
   </test>\r
+  <test name="test-870.cs">\r
+    <type name="Test">\r
+      <method name="Void Foo(UInt16)" attrs="145">\r
+        <size>23</size>\r
+      </method>\r
+      <method name="Void Main()" attrs="150">\r
+        <size>8</size>\r
+      </method>\r
+      <method name="Void .ctor()" attrs="6278">\r
+        <size>7</size>\r
+      </method>\r
+    </type>\r
+  </test>\r
+  <test name="test-871.cs">\r
+    <type name="D">\r
+      <method name="D op_BitwiseAnd(D, D)" attrs="2198">\r
+        <size>16</size>\r
+      </method>\r
+      <method name="Boolean op_False(D)" attrs="2198">\r
+        <size>10</size>\r
+      </method>\r
+      <method name="Boolean op_True(D)" attrs="2198">\r
+        <size>10</size>\r
+      </method>\r
+      <method name="D op_Implicit(Boolean)" attrs="2198">\r
+        <size>15</size>\r
+      </method>\r
+      <method name="Int32 Main()" attrs="145">\r
+        <size>80</size>\r
+      </method>\r
+      <method name="Void .ctor(Int32)" attrs="6278">\r
+        <size>15</size>\r
+      </method>\r
+    </type>\r
+  </test>\r
   <test name="test-88.cs">\r
     <type name="X">\r
       <method name="Void f(System.String)" attrs="145">\r
       </method>\r
     </type>\r
     <type name="X+&lt;Test&gt;c__AnonStorey0`1+&lt;Test&gt;c__AnonStorey1`1[T]">\r
-      <method name="Void &lt;&gt;m__1()" attrs="131">\r
-        <size>51</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
+      <method name="Void &lt;&gt;m__0()" attrs="131">\r
+        <size>51</size>\r
+      </method>\r
     </type>\r
   </test>\r
   <test name="test-anon-103.cs">\r
       </method>\r
     </type>\r
     <type name="Test`1+&lt;Hello&gt;c__AnonStorey1`1+&lt;Hello&gt;c__AnonStorey0`1[T,S]">\r
-      <method name="Void &lt;&gt;m__1(T)" attrs="131">\r
-        <size>66</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
+      <method name="Void &lt;&gt;m__0(T)" attrs="131">\r
+        <size>66</size>\r
+      </method>\r
     </type>\r
   </test>\r
   <test name="test-anon-116.cs">\r
       <method name="System.String &lt;&gt;m__1(System.Text.RegularExpressions.Match)" attrs="131">\r
         <size>120</size>\r
       </method>\r
-      <method name="System.String &lt;&gt;m__2(System.Text.RegularExpressions.Match)" attrs="131">\r
-        <size>120</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
+      <method name="System.String &lt;&gt;m__0(System.Text.RegularExpressions.Match)" attrs="131">\r
+        <size>120</size>\r
+      </method>\r
     </type>\r
   </test>\r
   <test name="test-anon-12.cs">\r
         <size>7</size>\r
       </method>\r
       <method name="Void &lt;Main&gt;m__3()" attrs="145">\r
-        <size>17</size>\r
-      </method>\r
-      <method name="Void &lt;Main&gt;m__4()" attrs="145">\r
-        <size>17</size>\r
-      </method>\r
-      <method name="Void &lt;Main&gt;m__5()" attrs="145">\r
         <size>62</size>\r
       </method>\r
-      <method name="Void &lt;Main&gt;m__6()" attrs="145">\r
+      <method name="Void &lt;Main&gt;m__4()" attrs="145">\r
         <size>54</size>\r
       </method>\r
-      <method name="Void &lt;Main&gt;m__7(E)" attrs="145">\r
-        <size>35</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
     </type>\r
     <type name="C+&lt;Main&gt;c__AnonStorey0">\r
       <method name="Void &lt;&gt;m__1()" attrs="131">\r
-        <size>49</size>\r
-      </method>\r
-      <method name="Void &lt;&gt;m__2()" attrs="131">\r
         <size>36</size>\r
       </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>15</size>\r
       </method>\r
     </type>\r
+    <type name="C">\r
+      <method name="Void &lt;Main&gt;m__1()" attrs="145">\r
+        <size>17</size>\r
+      </method>\r
+      <method name="Void &lt;Main&gt;m__2()" attrs="145">\r
+        <size>17</size>\r
+      </method>\r
+      <method name="Void &lt;Main&gt;m__5(E)" attrs="145">\r
+        <size>35</size>\r
+      </method>\r
+    </type>\r
+    <type name="C+&lt;Main&gt;c__AnonStorey0">\r
+      <method name="Void &lt;&gt;m__0()" attrs="131">\r
+        <size>49</size>\r
+      </method>\r
+    </type>\r
   </test>\r
   <test name="test-anon-124.cs">\r
     <type name="Disposable`1[T]">\r
       </method>\r
     </type>\r
     <type name="Test+&lt;Throw&gt;c__AnonStorey1`1[T]">\r
-      <method name="T &lt;&gt;m__1()" attrs="131">\r
-        <size>24</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
     </type>\r
     <type name="Test+&lt;TypeOf&gt;c__AnonStorey2`1[T]">\r
-      <method name="System.Type &lt;&gt;m__2()" attrs="131">\r
-        <size>64</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
     </type>\r
     <type name="Test+&lt;Do&gt;c__AnonStorey3`1[T]">\r
-      <method name="T &lt;&gt;m__3()" attrs="131">\r
-        <size>38</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
     </type>\r
     <type name="Test+&lt;Lock&gt;c__AnonStorey4`1[T]">\r
-      <method name="T &lt;&gt;m__4()" attrs="131">\r
-        <size>69</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
     </type>\r
     <type name="Test+&lt;Catch&gt;c__AnonStorey5`1[T]">\r
-      <method name="T &lt;&gt;m__5()" attrs="131">\r
-        <size>41</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
       </method>\r
     </type>\r
     <type name="Test+&lt;Catch_2&gt;c__AnonStorey6`1[T]">\r
-      <method name="T &lt;&gt;m__6()" attrs="131">\r
-        <size>42</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
     </type>\r
     <type name="Test+&lt;Finally&gt;c__AnonStorey7`1[T]">\r
-      <method name="T &lt;&gt;m__7()" attrs="131">\r
-        <size>62</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
     </type>\r
     <type name="Test+&lt;Using&gt;c__AnonStorey8`1[T]">\r
-      <method name="T &lt;&gt;m__8()" attrs="131">\r
-        <size>15</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
     </type>\r
     <type name="Test+&lt;Switch&gt;c__AnonStorey9`1[T]">\r
-      <method name="T &lt;&gt;m__9()" attrs="131">\r
-        <size>16</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
     </type>\r
     <type name="Test+&lt;ForForeach&gt;c__AnonStoreyA`1[T]">\r
-      <method name="System.Collections.Generic.List`1[T] &lt;&gt;m__A()" attrs="131">\r
-        <size>67</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
     </type>\r
     <type name="Test+&lt;ArrayMutate&gt;c__AnonStoreyB`1[T]">\r
-      <method name="Void &lt;&gt;m__B(Int32)" attrs="131">\r
-        <size>39</size>\r
+      <method name="Void .ctor()" attrs="6278">\r
+        <size>7</size>\r
+      </method>\r
+    </type>\r
+    <type name="Test+&lt;ArrayMultiMutate&gt;c__AnonStoreyD`1[T]">\r
+      <method name="Void .ctor()" attrs="6278">\r
+        <size>7</size>\r
       </method>\r
+    </type>\r
+    <type name="Test+&lt;NestedTypeMutate&gt;c__AnonStoreyE`1[T]">\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
     </type>\r
+    <type name="Test+&lt;Throw&gt;c__AnonStorey1`1[T]">\r
+      <method name="T &lt;&gt;m__0()" attrs="131">\r
+        <size>24</size>\r
+      </method>\r
+    </type>\r
+    <type name="Test+&lt;TypeOf&gt;c__AnonStorey2`1[T]">\r
+      <method name="System.Type &lt;&gt;m__0()" attrs="131">\r
+        <size>64</size>\r
+      </method>\r
+    </type>\r
+    <type name="Test+&lt;Do&gt;c__AnonStorey3`1[T]">\r
+      <method name="T &lt;&gt;m__0()" attrs="131">\r
+        <size>38</size>\r
+      </method>\r
+    </type>\r
+    <type name="Test+&lt;Lock&gt;c__AnonStorey4`1[T]">\r
+      <method name="T &lt;&gt;m__0()" attrs="131">\r
+        <size>69</size>\r
+      </method>\r
+    </type>\r
+    <type name="Test+&lt;Catch&gt;c__AnonStorey5`1[T]">\r
+      <method name="T &lt;&gt;m__0()" attrs="131">\r
+        <size>41</size>\r
+      </method>\r
+    </type>\r
+    <type name="Test+&lt;Catch_2&gt;c__AnonStorey6`1[T]">\r
+      <method name="T &lt;&gt;m__0()" attrs="131">\r
+        <size>42</size>\r
+      </method>\r
+    </type>\r
+    <type name="Test+&lt;Finally&gt;c__AnonStorey7`1[T]">\r
+      <method name="T &lt;&gt;m__0()" attrs="131">\r
+        <size>62</size>\r
+      </method>\r
+    </type>\r
+    <type name="Test+&lt;Using&gt;c__AnonStorey8`1[T]">\r
+      <method name="T &lt;&gt;m__0()" attrs="131">\r
+        <size>15</size>\r
+      </method>\r
+    </type>\r
+    <type name="Test+&lt;Switch&gt;c__AnonStorey9`1[T]">\r
+      <method name="T &lt;&gt;m__0()" attrs="131">\r
+        <size>16</size>\r
+      </method>\r
+    </type>\r
+    <type name="Test+&lt;ForForeach&gt;c__AnonStoreyA`1[T]">\r
+      <method name="System.Collections.Generic.List`1[T] &lt;&gt;m__0()" attrs="131">\r
+        <size>67</size>\r
+      </method>\r
+    </type>\r
+    <type name="Test+&lt;ArrayMutate&gt;c__AnonStoreyB`1[T]">\r
+      <method name="Void &lt;&gt;m__0(Int32)" attrs="131">\r
+        <size>39</size>\r
+      </method>\r
+    </type>\r
     <type name="Test+&lt;ArrayMultiMutate&gt;c__AnonStoreyC`1[T]">\r
-      <method name="T[][] &lt;&gt;m__C()" attrs="131">\r
+      <method name="T[][] &lt;&gt;m__0()" attrs="131">\r
         <size>58</size>\r
       </method>\r
     </type>\r
     <type name="Test+&lt;ArrayMultiMutate&gt;c__AnonStoreyD`1[T]">\r
-      <method name="Int32 &lt;&gt;m__D()" attrs="131">\r
+      <method name="Int32 &lt;&gt;m__0()" attrs="131">\r
         <size>35</size>\r
       </method>\r
-      <method name="Void .ctor()" attrs="6278">\r
-        <size>7</size>\r
-      </method>\r
     </type>\r
     <type name="Test+&lt;NestedTypeMutate&gt;c__AnonStoreyE`1[T]">\r
-      <method name="T[] &lt;&gt;m__E()" attrs="131">\r
+      <method name="T[] &lt;&gt;m__0()" attrs="131">\r
         <size>45</size>\r
       </method>\r
-      <method name="Void .ctor()" attrs="6278">\r
-        <size>7</size>\r
-      </method>\r
     </type>\r
   </test>\r
   <test name="test-anon-125.cs">\r
       </method>\r
     </type>\r
     <type name="X+&lt;Test&gt;c__AnonStorey0`1+&lt;Test&gt;c__AnonStorey1`1[T]">\r
-      <method name="Void &lt;&gt;m__1()" attrs="131">\r
-        <size>51</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
+      <method name="Void &lt;&gt;m__0()" attrs="131">\r
+        <size>51</size>\r
+      </method>\r
     </type>\r
   </test>\r
   <test name="test-anon-131.cs">\r
       <method name="Void Main()" attrs="150">\r
         <size>68</size>\r
       </method>\r
-      <method name="System.String &lt;Main&gt;m__1(System.String)" attrs="145">\r
-        <size>24</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
         <size>146</size>\r
       </method>\r
     </type>\r
+    <type name="Test">\r
+      <method name="System.String &lt;Main&gt;m__0(System.String)" attrs="145">\r
+        <size>24</size>\r
+      </method>\r
+    </type>\r
   </test>\r
   <test name="test-anon-134.cs">\r
     <type name="MyClass">\r
       <method name="System.Func`1[C`1[T]] XX()" attrs="145">\r
         <size>40</size>\r
       </method>\r
-      <method name="C`1[T] &lt;XX&gt;m__1()" attrs="145">\r
-        <size>9</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
       <method name="System.Func`1[T] XX[T]()" attrs="145">\r
         <size>23</size>\r
       </method>\r
-      <method name="T &lt;XX`1&gt;m__2[T]()" attrs="145">\r
-        <size>17</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
         <size>7</size>\r
       </method>\r
     </type>\r
+    <type name="C2`1[T]">\r
+      <method name="C`1[T] &lt;XX&gt;m__0()" attrs="145">\r
+        <size>9</size>\r
+      </method>\r
+    </type>\r
+    <type name="N1">\r
+      <method name="T &lt;XX`1&gt;m__0[T]()" attrs="145">\r
+        <size>17</size>\r
+      </method>\r
+    </type>\r
   </test>\r
   <test name="test-anon-136.cs">\r
     <type name="Handler`1[T]">\r
       </method>\r
     </type>\r
     <type name="Test+&lt;Test_2&gt;c__AnonStorey1`1[T]">\r
-      <method name="Void &lt;&gt;m__1()" attrs="131">\r
-        <size>86</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
     </type>\r
     <type name="Test+&lt;Test_3&gt;c__AnonStorey2`1[T]">\r
-      <method name="Void &lt;&gt;m__2()" attrs="131">\r
-        <size>24</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
         <size>34</size>\r
       </method>\r
     </type>\r
+    <type name="Test+&lt;Test_2&gt;c__AnonStorey1`1[T]">\r
+      <method name="Void &lt;&gt;m__0()" attrs="131">\r
+        <size>86</size>\r
+      </method>\r
+    </type>\r
+    <type name="Test+&lt;Test_3&gt;c__AnonStorey2`1[T]">\r
+      <method name="Void &lt;&gt;m__0()" attrs="131">\r
+        <size>24</size>\r
+      </method>\r
+    </type>\r
   </test>\r
   <test name="test-anon-14.cs">\r
     <type name="X">\r
       </method>\r
     </type>\r
     <type name="C+&lt;AnyMethod&gt;c__AnonStorey0`1[T]">\r
-      <method name="Void &lt;&gt;m__1(System.String)" attrs="131">\r
-        <size>14</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
+      <method name="Void &lt;&gt;m__0(System.String)" attrs="131">\r
+        <size>14</size>\r
+      </method>\r
     </type>\r
   </test>\r
   <test name="test-anon-146.cs">\r
       <method name="Int32 Main()" attrs="150">\r
         <size>67</size>\r
       </method>\r
-      <method name="Void &lt;Main&gt;m__3(Int32, Int32, Int32)" attrs="145">\r
-        <size>24</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
       </method>\r
     </type>\r
     <type name="C+&lt;Curry&gt;c__AnonStorey0`3+&lt;Curry&gt;c__AnonStorey1`3[T1,T2,T3]">\r
-      <method name="System.Action`1[T3] &lt;&gt;m__1(T2)" attrs="131">\r
-        <size>52</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
     </type>\r
     <type name="C+&lt;Curry&gt;c__AnonStorey0`3+&lt;Curry&gt;c__AnonStorey1`3+&lt;Curry&gt;c__AnonStorey2`3[T1,T2,T3]">\r
-      <method name="Void &lt;&gt;m__2(T3)" attrs="131">\r
-        <size>35</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
     </type>\r
+    <type name="Test">\r
+      <method name="Void &lt;Main&gt;m__0(Int32, Int32, Int32)" attrs="145">\r
+        <size>24</size>\r
+      </method>\r
+    </type>\r
+    <type name="C+&lt;Curry&gt;c__AnonStorey0`3+&lt;Curry&gt;c__AnonStorey1`3[T1,T2,T3]">\r
+      <method name="System.Action`1[T3] &lt;&gt;m__0(T2)" attrs="131">\r
+        <size>52</size>\r
+      </method>\r
+    </type>\r
+    <type name="C+&lt;Curry&gt;c__AnonStorey0`3+&lt;Curry&gt;c__AnonStorey1`3+&lt;Curry&gt;c__AnonStorey2`3[T1,T2,T3]">\r
+      <method name="Void &lt;&gt;m__0(T3)" attrs="131">\r
+        <size>35</size>\r
+      </method>\r
+    </type>\r
   </test>\r
   <test name="test-anon-148.cs">\r
     <type name="Func`1[TResult]">\r
       </method>\r
     </type>\r
     <type name="SomeGenericClass`1+&lt;FailsToCompile&gt;c__AnonStorey0[SomeType]">\r
-      <method name="Void &lt;&gt;m__1()" attrs="131">\r
-        <size>19</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
+      <method name="Void &lt;&gt;m__0()" attrs="131">\r
+        <size>19</size>\r
+      </method>\r
     </type>\r
   </test>\r
   <test name="test-anon-151.cs">\r
       </method>\r
     </type>\r
     <type name="Class+&lt;Method&gt;c__AnonStorey0+&lt;Method&gt;c__AnonStorey2">\r
-      <method name="System.String &lt;&gt;m__1(System.String)" attrs="131">\r
-        <size>60</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
     </type>\r
     <type name="Class+&lt;Method&gt;c__AnonStorey0+&lt;Method&gt;c__AnonStorey2+&lt;Method&gt;c__AnonStorey1">\r
-      <method name="System.String &lt;&gt;m__2()" attrs="131">\r
-        <size>46</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
     </type>\r
+    <type name="Class+&lt;Method&gt;c__AnonStorey0+&lt;Method&gt;c__AnonStorey2">\r
+      <method name="System.String &lt;&gt;m__0(System.String)" attrs="131">\r
+        <size>60</size>\r
+      </method>\r
+    </type>\r
+    <type name="Class+&lt;Method&gt;c__AnonStorey0+&lt;Method&gt;c__AnonStorey2+&lt;Method&gt;c__AnonStorey1">\r
+      <method name="System.String &lt;&gt;m__0()" attrs="131">\r
+        <size>46</size>\r
+      </method>\r
+    </type>\r
   </test>\r
   <test name="test-anon-155.cs">\r
     <type name="Thing`1[TFirst]">\r
       <method name="Void Main()" attrs="150">\r
         <size>43</size>\r
       </method>\r
-      <method name="System.Object &lt;Main&gt;m__1(System.Object)" attrs="145">\r
-        <size>9</size>\r
-      </method>\r
     </type>\r
     <type name="Thing`1+&lt;Create&gt;c__AnonStorey0`1[TFirst,TSecond]">\r
       <method name="Void &lt;&gt;m__0(TFirst)" attrs="131">\r
         <size>7</size>\r
       </method>\r
     </type>\r
+    <type name="Program">\r
+      <method name="System.Object &lt;Main&gt;m__0(System.Object)" attrs="145">\r
+        <size>9</size>\r
+      </method>\r
+    </type>\r
   </test>\r
   <test name="test-anon-156.cs">\r
     <type name="G`1[T]">\r
       </method>\r
     </type>\r
     <type name="Test+&lt;FooNested&gt;c__AnonStorey1`1[X]">\r
-      <method name="Call`1[X] &lt;&gt;m__1()" attrs="131">\r
-        <size>19</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
+      <method name="Call`1[X] &lt;&gt;m__0()" attrs="131">\r
+        <size>19</size>\r
+      </method>\r
     </type>\r
   </test>\r
   <test name="test-anon-159.cs">\r
       <method name="Void Main()" attrs="150">\r
         <size>41</size>\r
       </method>\r
-      <method name="Void &lt;Main&gt;m__1(System.String)" attrs="145">\r
-        <size>7</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
         <size>7</size>\r
       </method>\r
     </type>\r
+    <type name="TestGenericsSubtypeMatching.C">\r
+      <method name="Void &lt;Main&gt;m__0(System.String)" attrs="145">\r
+        <size>7</size>\r
+      </method>\r
+    </type>\r
   </test>\r
   <test name="test-anon-16.cs">\r
     <type name="D">\r
       <method name="Int32 Main()" attrs="150">\r
         <size>49</size>\r
       </method>\r
-      <method name="Void &lt;Main&gt;m__1(Int32)" attrs="145">\r
-        <size>7</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
         <size>7</size>\r
       </method>\r
     </type>\r
+    <type name="TestGenericsSubtypeMatching.C">\r
+      <method name="Void &lt;Main&gt;m__0(Int32)" attrs="145">\r
+        <size>7</size>\r
+      </method>\r
+    </type>\r
   </test>\r
   <test name="test-anon-161.cs">\r
     <type name="TestCase">\r
       </method>\r
     </type>\r
     <type name="T+&lt;GetD&gt;c__AnonStorey2`1+&lt;GetD&gt;c__AnonStorey1`1[T]">\r
-      <method name="Void &lt;&gt;m__1()" attrs="131">\r
-        <size>52</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
+      <method name="Void &lt;&gt;m__0()" attrs="131">\r
+        <size>52</size>\r
+      </method>\r
     </type>\r
   </test>\r
   <test name="test-anon-163.cs">\r
       </method>\r
     </type>\r
     <type name="B+&lt;Test2&gt;c__AnonStorey1`1[T]">\r
-      <method name="Void &lt;&gt;m__1()" attrs="131">\r
-        <size>40</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
     </type>\r
     <type name="B+&lt;Test3&gt;c__AnonStorey2">\r
-      <method name="Void &lt;&gt;m__2()" attrs="131">\r
-        <size>20</size>\r
-      </method>\r
-      <method name="Void &lt;&gt;m__3()" attrs="131">\r
-        <size>20</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
       <method name="T &lt;Foo4&gt;__BaseCallProxy2[T]()" attrs="129">\r
         <size>14</size>\r
       </method>\r
-      <method name="T &lt;Test4`1&gt;m__4[T]()" attrs="129">\r
+      <method name="T &lt;Test4`1&gt;m__0[T]()" attrs="129">\r
         <size>14</size>\r
       </method>\r
     </type>\r
+    <type name="B+&lt;Test2&gt;c__AnonStorey1`1[T]">\r
+      <method name="Void &lt;&gt;m__0()" attrs="131">\r
+        <size>40</size>\r
+      </method>\r
+    </type>\r
+    <type name="B+&lt;Test3&gt;c__AnonStorey2">\r
+      <method name="Void &lt;&gt;m__0()" attrs="131">\r
+        <size>20</size>\r
+      </method>\r
+      <method name="Void &lt;&gt;m__1()" attrs="131">\r
+        <size>20</size>\r
+      </method>\r
+    </type>\r
   </test>\r
   <test name="test-anon-164.cs">\r
     <type name="C`1[T]">\r
       </method>\r
     </type>\r
     <type name="C+&lt;Foo&gt;c__AnonStorey0`1[T]">\r
-      <method name="T &lt;&gt;m__1()" attrs="131">\r
-        <size>14</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
+      <method name="T &lt;&gt;m__0()" attrs="131">\r
+        <size>14</size>\r
+      </method>\r
     </type>\r
   </test>\r
   <test name="test-anon-166.cs">\r
       </method>\r
     </type>\r
     <type name="A+&lt;Test&gt;c__AnonStorey0`2[T,U]">\r
-      <method name="Void &lt;&gt;m__1()" attrs="131">\r
-        <size>14</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
+      <method name="Void &lt;&gt;m__0()" attrs="131">\r
+        <size>14</size>\r
+      </method>\r
     </type>\r
   </test>\r
   <test name="test-anon-167.cs">\r
       </method>\r
     </type>\r
     <type name="Test+&lt;Main&gt;c__AnonStorey1">\r
-      <method name="Char &lt;&gt;m__1()" attrs="131">\r
-        <size>14</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
+      <method name="Char &lt;&gt;m__0()" attrs="131">\r
+        <size>14</size>\r
+      </method>\r
     </type>\r
   </test>\r
   <test name="test-anon-17.cs">\r
       </method>\r
     </type>\r
     <type name="MyClass+&lt;Run&gt;c__AnonStorey0">\r
-      <method name="Int32 &lt;&gt;m__4()" attrs="131">\r
-        <size>14</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
     </type>\r
     <type name="MyClass+&lt;Run&gt;c__AnonStorey1">\r
-      <method name="Int32 &lt;&gt;m__5()" attrs="131">\r
-        <size>14</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
     </type>\r
     <type name="MyClass+&lt;Run2&gt;c__AnonStorey2">\r
-      <method name="Int32 &lt;&gt;m__6()" attrs="131">\r
-        <size>25</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
     </type>\r
     <type name="MyClass+&lt;Run2&gt;c__AnonStorey3">\r
-      <method name="Int32 &lt;&gt;m__7()" attrs="131">\r
-        <size>25</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
     </type>\r
+    <type name="MyClass+&lt;Run&gt;c__AnonStorey0">\r
+      <method name="Int32 &lt;&gt;m__0()" attrs="131">\r
+        <size>14</size>\r
+      </method>\r
+    </type>\r
+    <type name="MyClass+&lt;Run&gt;c__AnonStorey1">\r
+      <method name="Int32 &lt;&gt;m__0()" attrs="131">\r
+        <size>14</size>\r
+      </method>\r
+    </type>\r
+    <type name="MyClass+&lt;Run2&gt;c__AnonStorey2">\r
+      <method name="Int32 &lt;&gt;m__0()" attrs="131">\r
+        <size>25</size>\r
+      </method>\r
+    </type>\r
+    <type name="MyClass+&lt;Run2&gt;c__AnonStorey3">\r
+      <method name="Int32 &lt;&gt;m__0()" attrs="131">\r
+        <size>25</size>\r
+      </method>\r
+    </type>\r
   </test>\r
   <test name="test-anon-171.cs">\r
     <type name="TestAnonSwitch.MyClass">\r
       </method>\r
     </type>\r
     <type name="X+&lt;MainHost&gt;c__AnonStorey0+&lt;MainHost&gt;c__AnonStorey1">\r
-      <method name="Void &lt;&gt;m__1()" attrs="131">\r
-        <size>53</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
+      <method name="Void &lt;&gt;m__0()" attrs="131">\r
+        <size>53</size>\r
+      </method>\r
     </type>\r
   </test>\r
   <test name="test-anon-21.cs">\r
       </method>\r
     </type>\r
     <type name="X+&lt;M&gt;c__AnonStorey0+&lt;M&gt;c__AnonStorey1">\r
-      <method name="Void &lt;&gt;m__1()" attrs="131">\r
-        <size>82</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
+      <method name="Void &lt;&gt;m__0()" attrs="131">\r
+        <size>82</size>\r
+      </method>\r
     </type>\r
   </test>\r
   <test name="test-anon-22.cs">\r
       </method>\r
     </type>\r
     <type name="X+&lt;T&gt;c__AnonStorey0+&lt;T&gt;c__AnonStorey1">\r
-      <method name="Void &lt;&gt;m__1()" attrs="131">\r
-        <size>53</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
+      <method name="Void &lt;&gt;m__0()" attrs="131">\r
+        <size>53</size>\r
+      </method>\r
     </type>\r
   </test>\r
   <test name="test-anon-23.cs">\r
       </method>\r
     </type>\r
     <type name="X+&lt;M&gt;c__AnonStorey0+&lt;M&gt;c__AnonStorey1">\r
-      <method name="Void &lt;&gt;m__1()" attrs="131">\r
-        <size>25</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
+      <method name="Void &lt;&gt;m__0()" attrs="131">\r
+        <size>25</size>\r
+      </method>\r
     </type>\r
   </test>\r
   <test name="test-anon-24.cs">\r
       </method>\r
     </type>\r
     <type name="X+&lt;M&gt;c__AnonStorey0+&lt;M&gt;c__AnonStorey1">\r
-      <method name="Void &lt;&gt;m__1()" attrs="131">\r
-        <size>51</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
+      <method name="Void &lt;&gt;m__0()" attrs="131">\r
+        <size>51</size>\r
+      </method>\r
     </type>\r
   </test>\r
   <test name="test-anon-28.cs">\r
       </method>\r
     </type>\r
     <type name="T+&lt;Main&gt;c__AnonStorey1">\r
-      <method name="Void &lt;&gt;m__1()" attrs="131">\r
-        <size>13</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
+      <method name="Void &lt;&gt;m__0()" attrs="131">\r
+        <size>13</size>\r
+      </method>\r
     </type>\r
   </test>\r
   <test name="test-anon-34.cs">\r
       </method>\r
     </type>\r
     <type name="Delegates.Space+&lt;Leak&gt;c__AnonStorey0">\r
-      <method name="Void &lt;&gt;m__1()" attrs="131">\r
-        <size>20</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
         <size>7</size>\r
       </method>\r
     </type>\r
+    <type name="Delegates.Space+&lt;Leak&gt;c__AnonStorey0">\r
+      <method name="Void &lt;&gt;m__0()" attrs="131">\r
+        <size>20</size>\r
+      </method>\r
+    </type>\r
   </test>\r
   <test name="test-anon-35.cs">\r
     <type name="ExceptionWithAnonMethod">\r
       </method>\r
     </type>\r
     <type name="X+&lt;Test&gt;c__AnonStorey0+&lt;Test&gt;c__AnonStorey1">\r
-      <method name="Void &lt;&gt;m__1()" attrs="131">\r
-        <size>35</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
+      <method name="Void &lt;&gt;m__0()" attrs="131">\r
+        <size>35</size>\r
+      </method>\r
     </type>\r
   </test>\r
   <test name="test-anon-39.cs">\r
       </method>\r
     </type>\r
     <type name="X+&lt;Test&gt;c__AnonStorey0+&lt;Test&gt;c__AnonStorey1">\r
-      <method name="Void &lt;&gt;m__1()" attrs="131">\r
-        <size>36</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
+      <method name="Void &lt;&gt;m__0()" attrs="131">\r
+        <size>36</size>\r
+      </method>\r
     </type>\r
   </test>\r
   <test name="test-anon-42.cs">\r
       </method>\r
     </type>\r
     <type name="X+&lt;Test&gt;c__AnonStorey0+&lt;Test&gt;c__AnonStorey1">\r
-      <method name="Void &lt;&gt;m__1()" attrs="131">\r
-        <size>35</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
+      <method name="Void &lt;&gt;m__0()" attrs="131">\r
+        <size>35</size>\r
+      </method>\r
     </type>\r
   </test>\r
   <test name="test-anon-44.cs">\r
       <method name="Simple &lt;&gt;m__1()" attrs="131">\r
         <size>41</size>\r
       </method>\r
-      <method name="Void &lt;&gt;m__3()" attrs="131">\r
-        <size>22</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
     </type>\r
     <type name="X+&lt;Test&gt;c__AnonStorey0+&lt;Test&gt;c__AnonStorey1">\r
-      <method name="Void &lt;&gt;m__2()" attrs="131">\r
-        <size>27</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
     </type>\r
+    <type name="X+&lt;Test&gt;c__AnonStorey0">\r
+      <method name="Void &lt;&gt;m__2()" attrs="131">\r
+        <size>22</size>\r
+      </method>\r
+    </type>\r
+    <type name="X+&lt;Test&gt;c__AnonStorey0+&lt;Test&gt;c__AnonStorey1">\r
+      <method name="Void &lt;&gt;m__0()" attrs="131">\r
+        <size>27</size>\r
+      </method>\r
+    </type>\r
   </test>\r
   <test name="test-anon-45.cs">\r
     <type name="TestFunc">\r
       </method>\r
     </type>\r
     <type name="Test+&lt;Test&gt;c__AnonStorey1">\r
-      <method name="Void &lt;&gt;m__1()" attrs="131">\r
-        <size>13</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
+      <method name="Void &lt;&gt;m__0()" attrs="131">\r
+        <size>13</size>\r
+      </method>\r
     </type>\r
   </test>\r
   <test name="test-anon-54.cs">\r
       </method>\r
     </type>\r
     <type name="X+&lt;Test&gt;c__AnonStorey2+&lt;Test&gt;c__AnonStorey4">\r
-      <method name="Void &lt;&gt;m__1()" attrs="131">\r
-        <size>125</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
+      <method name="Void &lt;&gt;m__0()" attrs="131">\r
+        <size>125</size>\r
+      </method>\r
     </type>\r
   </test>\r
   <test name="test-anon-61.cs">\r
       <method name="Void Main()" attrs="150">\r
         <size>2</size>\r
       </method>\r
-      <method name="Void &lt;AddSource&gt;m__1(System.Object, System.EventArgs)" attrs="145">\r
-        <size>2</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
         <size>7</size>\r
       </method>\r
     </type>\r
+    <type name="Source">\r
+      <method name="Void &lt;AddSource&gt;m__0(System.Object, System.EventArgs)" attrs="145">\r
+        <size>2</size>\r
+      </method>\r
+    </type>\r
   </test>\r
   <test name="test-anon-65.cs">\r
     <type name="BaseClass">\r
       <method name="Void Main()" attrs="150">\r
         <size>99</size>\r
       </method>\r
-      <method name="Void &lt;Main&gt;m__3()" attrs="145">\r
-        <size>17</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
     </type>\r
     <type name="C+&lt;Main&gt;c__AnonStorey1">\r
       <method name="Void &lt;&gt;m__1()" attrs="131">\r
-        <size>49</size>\r
-      </method>\r
-      <method name="Void &lt;&gt;m__2()" attrs="131">\r
         <size>36</size>\r
       </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
     </type>\r
+    <type name="C">\r
+      <method name="Void &lt;Main&gt;m__0()" attrs="145">\r
+        <size>17</size>\r
+      </method>\r
+    </type>\r
+    <type name="C+&lt;Main&gt;c__AnonStorey1">\r
+      <method name="Void &lt;&gt;m__0()" attrs="131">\r
+        <size>49</size>\r
+      </method>\r
+    </type>\r
   </test>\r
   <test name="test-anon-71.cs">\r
     <type name="Program">\r
     </type>\r
     <type name="Test+&lt;TestMe&gt;c__AnonStorey0">\r
       <method name="Boolean &lt;&gt;m__1()" attrs="131">\r
-        <size>67</size>\r
-      </method>\r
-      <method name="Boolean &lt;&gt;m__2()" attrs="131">\r
         <size>22</size>\r
       </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
+      <method name="Boolean &lt;&gt;m__0()" attrs="131">\r
+        <size>67</size>\r
+      </method>\r
     </type>\r
   </test>\r
   <test name="test-anon-76.cs">\r
       </method>\r
     </type>\r
     <type name="C+&lt;Test&gt;c__AnonStorey1">\r
-      <method name="Void &lt;&gt;m__1()" attrs="131">\r
-        <size>45</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
     </type>\r
     <type name="C+&lt;Test&gt;c__AnonStorey1+&lt;Test&gt;c__AnonStorey0">\r
-      <method name="Void &lt;&gt;m__2()" attrs="131">\r
-        <size>19</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
     </type>\r
+    <type name="C+&lt;Test&gt;c__AnonStorey1">\r
+      <method name="Void &lt;&gt;m__0()" attrs="131">\r
+        <size>45</size>\r
+      </method>\r
+    </type>\r
+    <type name="C+&lt;Test&gt;c__AnonStorey1+&lt;Test&gt;c__AnonStorey0">\r
+      <method name="Void &lt;&gt;m__0()" attrs="131">\r
+        <size>19</size>\r
+      </method>\r
+    </type>\r
   </test>\r
   <test name="test-anon-82.cs">\r
     <type name="StringSender">\r
       <method name="Void SimpleCallback(MainClass, System.String)" attrs="145">\r
         <size>8</size>\r
       </method>\r
-      <method name="Void &lt;Test2&gt;m__1(System.String)" attrs="145">\r
-        <size>28</size>\r
-      </method>\r
-      <method name="Void &lt;Test3&gt;m__3()" attrs="145">\r
-        <size>2</size>\r
-      </method>\r
-      <method name="Void &lt;Test4&gt;m__4()" attrs="145">\r
-        <size>32</size>\r
-      </method>\r
-      <method name="Void &lt;Test4&gt;m__8()" attrs="145">\r
-        <size>29</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
       <method name="Void &lt;&gt;m__0()" attrs="131">\r
         <size>26</size>\r
       </method>\r
-      <method name="Void &lt;&gt;m__6(System.String)" attrs="131">\r
-        <size>14</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
     </type>\r
     <type name="MainClass+&lt;Test3&gt;c__AnonStorey2">\r
-      <method name="Void &lt;&gt;m__2()" attrs="131">\r
-        <size>10</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
     </type>\r
     <type name="MainClass+&lt;Test5&gt;c__AnonStorey4">\r
-      <method name="Int32 &lt;&gt;m__5(Int32)" attrs="131">\r
-        <size>54</size>\r
-      </method>\r
-      <method name="Int32 &lt;&gt;m__9(Int32)" attrs="145">\r
-        <size>10</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
     </type>\r
     <type name="MainClass+&lt;Test2&gt;c__AnonStorey1">\r
-      <method name="Void &lt;&gt;m__7()" attrs="131">\r
-        <size>13</size>\r
+      <method name="Void .ctor()" attrs="6278">\r
+        <size>7</size>\r
       </method>\r
+    </type>\r
+    <type name="MainClass+&lt;Test4&gt;c__AnonStorey3">\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
     </type>\r
+    <type name="MainClass">\r
+      <method name="Void &lt;Test2&gt;m__0(System.String)" attrs="145">\r
+        <size>28</size>\r
+      </method>\r
+      <method name="Void &lt;Test3&gt;m__1()" attrs="145">\r
+        <size>2</size>\r
+      </method>\r
+      <method name="Void &lt;Test4&gt;m__2()" attrs="145">\r
+        <size>32</size>\r
+      </method>\r
+      <method name="Void &lt;Test4&gt;m__3()" attrs="145">\r
+        <size>29</size>\r
+      </method>\r
+    </type>\r
+    <type name="MainClass+&lt;Main&gt;c__AnonStorey0">\r
+      <method name="Void &lt;&gt;m__1(System.String)" attrs="131">\r
+        <size>14</size>\r
+      </method>\r
+    </type>\r
+    <type name="MainClass+&lt;Test3&gt;c__AnonStorey2">\r
+      <method name="Void &lt;&gt;m__0()" attrs="131">\r
+        <size>10</size>\r
+      </method>\r
+    </type>\r
+    <type name="MainClass+&lt;Test5&gt;c__AnonStorey4">\r
+      <method name="Int32 &lt;&gt;m__0(Int32)" attrs="131">\r
+        <size>54</size>\r
+      </method>\r
+      <method name="Int32 &lt;&gt;m__1(Int32)" attrs="145">\r
+        <size>10</size>\r
+      </method>\r
+    </type>\r
+    <type name="MainClass+&lt;Test2&gt;c__AnonStorey1">\r
+      <method name="Void &lt;&gt;m__0()" attrs="131">\r
+        <size>13</size>\r
+      </method>\r
+    </type>\r
     <type name="MainClass+&lt;Test4&gt;c__AnonStorey3">\r
-      <method name="Void &lt;&gt;m__A()" attrs="131">\r
+      <method name="Void &lt;&gt;m__0()" attrs="131">\r
         <size>15</size>\r
       </method>\r
-      <method name="Void &lt;&gt;m__B()" attrs="131">\r
+      <method name="Void &lt;&gt;m__1()" attrs="131">\r
         <size>9</size>\r
       </method>\r
-      <method name="Void .ctor()" attrs="6278">\r
-        <size>7</size>\r
-      </method>\r
     </type>\r
   </test>\r
   <test name="test-anon-83.cs">\r
       </method>\r
     </type>\r
     <type name="C+&lt;Test&gt;c__AnonStorey0">\r
-      <method name="Void &lt;&gt;m__2()" attrs="131">\r
-        <size>9</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
       <method name="Void &lt;&gt;m__1()" attrs="131">\r
         <size>9</size>\r
       </method>\r
-      <method name="Void &lt;&gt;m__4()" attrs="145">\r
-        <size>4</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
     </type>\r
     <type name="C+&lt;Test&gt;c__AnonStorey2+&lt;Test&gt;c__AnonStorey1">\r
-      <method name="Void &lt;&gt;m__3()" attrs="131">\r
-        <size>21</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
     </type>\r
+    <type name="C+&lt;Test&gt;c__AnonStorey0">\r
+      <method name="Void &lt;&gt;m__0()" attrs="131">\r
+        <size>9</size>\r
+      </method>\r
+    </type>\r
+    <type name="C+&lt;Test&gt;c__AnonStorey2">\r
+      <method name="Void &lt;&gt;m__2()" attrs="145">\r
+        <size>4</size>\r
+      </method>\r
+    </type>\r
+    <type name="C+&lt;Test&gt;c__AnonStorey2+&lt;Test&gt;c__AnonStorey1">\r
+      <method name="Void &lt;&gt;m__0()" attrs="131">\r
+        <size>21</size>\r
+      </method>\r
+    </type>\r
   </test>\r
   <test name="test-anon-89.cs">\r
     <type name="C">\r
       <method name="Void &lt;&gt;m__0()" attrs="131">\r
         <size>113</size>\r
       </method>\r
-      <method name="Void &lt;&gt;m__3()" attrs="131">\r
-        <size>32</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
     </type>\r
     <type name="C+&lt;Test&gt;c__AnonStorey0+&lt;Test&gt;c__AnonStorey1">\r
       <method name="Void &lt;&gt;m__1()" attrs="131">\r
-        <size>19</size>\r
-      </method>\r
-      <method name="Void &lt;&gt;m__2()" attrs="131">\r
         <size>53</size>\r
       </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
     </type>\r
+    <type name="C+&lt;Test&gt;c__AnonStorey0">\r
+      <method name="Void &lt;&gt;m__1()" attrs="131">\r
+        <size>32</size>\r
+      </method>\r
+    </type>\r
+    <type name="C+&lt;Test&gt;c__AnonStorey0+&lt;Test&gt;c__AnonStorey1">\r
+      <method name="Void &lt;&gt;m__0()" attrs="131">\r
+        <size>19</size>\r
+      </method>\r
+    </type>\r
   </test>\r
   <test name="test-anon-90.cs">\r
     <type name="C">\r
       </method>\r
     </type>\r
     <type name="C+&lt;Foo&gt;c__AnonStorey0+&lt;Foo&gt;c__AnonStorey2">\r
-      <method name="Void &lt;&gt;m__1()" attrs="131">\r
-        <size>33</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
+      <method name="Void &lt;&gt;m__0()" attrs="131">\r
+        <size>33</size>\r
+      </method>\r
     </type>\r
   </test>\r
   <test name="test-anon-91.cs">\r
       </method>\r
     </type>\r
     <type name="C+&lt;Test&gt;c__AnonStorey0+&lt;Test&gt;c__AnonStorey1">\r
-      <method name="Void &lt;&gt;m__1()" attrs="131">\r
-        <size>24</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
+      <method name="Void &lt;&gt;m__0()" attrs="131">\r
+        <size>24</size>\r
+      </method>\r
     </type>\r
   </test>\r
   <test name="test-anon-92.cs">\r
       <method name="Void Main()" attrs="150">\r
         <size>51</size>\r
       </method>\r
-      <method name="Void &lt;Main&gt;m__2(System.Object, System.EventArgs)" attrs="145">\r
-        <size>13</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
       </method>\r
     </type>\r
     <type name="BaseTest.MainClass+&lt;&gt;c__AnonStorey1">\r
-      <method name="Void &lt;&gt;m__1(System.Object, System.EventArgs)" attrs="131">\r
-        <size>24</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
     </type>\r
+    <type name="BaseTest.MainClass">\r
+      <method name="Void &lt;Main&gt;m__0(System.Object, System.EventArgs)" attrs="145">\r
+        <size>13</size>\r
+      </method>\r
+    </type>\r
+    <type name="BaseTest.MainClass+&lt;&gt;c__AnonStorey1">\r
+      <method name="Void &lt;&gt;m__0(System.Object, System.EventArgs)" attrs="131">\r
+        <size>24</size>\r
+      </method>\r
+    </type>\r
   </test>\r
   <test name="test-anon-94.cs">\r
     <type name="Program">\r
         <size>8</size>\r
       </method>\r
     </type>\r
+    <type name="Program+Derived+&lt;TestOut&gt;c__AnonStorey0">\r
+      <method name="Void .ctor()" attrs="6278">\r
+        <size>7</size>\r
+      </method>\r
+    </type>\r
     <type name="Program+DerivedLibrary">\r
-      <method name="Void &lt;Print&gt;m__2()" attrs="129">\r
+      <method name="Void &lt;Print&gt;m__0()" attrs="129">\r
         <size>9</size>\r
       </method>\r
     </type>\r
     <type name="Program+Derived+&lt;TestOut&gt;c__AnonStorey0">\r
-      <method name="Void &lt;&gt;m__1()" attrs="131">\r
+      <method name="Void &lt;&gt;m__0()" attrs="131">\r
         <size>30</size>\r
       </method>\r
-      <method name="Void .ctor()" attrs="6278">\r
-        <size>7</size>\r
-      </method>\r
     </type>\r
   </test>\r
   <test name="test-anon-95.cs">\r
       </method>\r
     </type>\r
     <type name="C+&lt;Test&gt;c__AnonStorey0">\r
-      <method name="Void &lt;&gt;m__1()" attrs="131">\r
-        <size>72</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
     </type>\r
     <type name="C+&lt;Test&gt;c__AnonStorey0+&lt;Test&gt;c__AnonStorey2">\r
-      <method name="Void &lt;&gt;m__2()" attrs="131">\r
-        <size>25</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
     </type>\r
+    <type name="C+&lt;Test&gt;c__AnonStorey0">\r
+      <method name="Void &lt;&gt;m__0()" attrs="131">\r
+        <size>72</size>\r
+      </method>\r
+    </type>\r
+    <type name="C+&lt;Test&gt;c__AnonStorey0+&lt;Test&gt;c__AnonStorey2">\r
+      <method name="Void &lt;&gt;m__0()" attrs="131">\r
+        <size>25</size>\r
+      </method>\r
+    </type>\r
   </test>\r
   <test name="test-async-01.cs">\r
     <type name="Program">\r
       <method name="Int32 Main()" attrs="150">\r
         <size>482</size>\r
       </method>\r
-      <method name="System.Threading.Tasks.Task`1[System.Decimal] &lt;Main&gt;m__4(Decimal)" attrs="145">\r
-        <size>41</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
       <method name="Void &lt;&gt;m__5()" attrs="131">\r
         <size>34</size>\r
       </method>\r
-      <method name="Void &lt;&gt;m__6()" attrs="131">\r
-        <size>34</size>\r
-      </method>\r
     </type>\r
     <type name="Program+&lt;Main&gt;c__AnonStorey1+&lt;Main&gt;c__async5">\r
       <method name="Void MoveNext()" attrs="486">\r
       </method>\r
     </type>\r
     <type name="Program+&lt;Main&gt;c__AnonStorey1+&lt;Main&gt;c__async3+&lt;Main&gt;c__AnonStorey4">\r
-      <method name="System.String &lt;&gt;m__7()" attrs="131">\r
-        <size>52</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
     </type>\r
     <type name="Program+&lt;Main&gt;c__AnonStorey1+&lt;Main&gt;c__async5+&lt;Main&gt;c__AnonStorey6">\r
-      <method name="Decimal &lt;&gt;m__8()" attrs="131">\r
-        <size>52</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
         <size>13</size>\r
       </method>\r
     </type>\r
+    <type name="Program">\r
+      <method name="System.Threading.Tasks.Task`1[System.Decimal] &lt;Main&gt;m__0(Decimal)" attrs="145">\r
+        <size>41</size>\r
+      </method>\r
+    </type>\r
+    <type name="Program+&lt;Main&gt;c__AnonStorey1">\r
+      <method name="Void &lt;&gt;m__4()" attrs="131">\r
+        <size>34</size>\r
+      </method>\r
+    </type>\r
+    <type name="Program+&lt;Main&gt;c__AnonStorey1+&lt;Main&gt;c__async3+&lt;Main&gt;c__AnonStorey4">\r
+      <method name="System.String &lt;&gt;m__0()" attrs="131">\r
+        <size>52</size>\r
+      </method>\r
+    </type>\r
+    <type name="Program+&lt;Main&gt;c__AnonStorey1+&lt;Main&gt;c__async5+&lt;Main&gt;c__AnonStorey6">\r
+      <method name="Decimal &lt;&gt;m__0()" attrs="131">\r
+        <size>52</size>\r
+      </method>\r
+    </type>\r
   </test>\r
   <test name="test-async-07.cs">\r
     <type name="Program">\r
       <method name="Int32 Main()" attrs="150">\r
         <size>358</size>\r
       </method>\r
-      <method name="System.Threading.Tasks.Task`1[System.Int16] &lt;Main&gt;m__2(Int16)" attrs="145">\r
-        <size>41</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
         <size>41</size>\r
       </method>\r
       <method name="Void &lt;&gt;m__3()" attrs="131">\r
-        <size>35</size>\r
+        <size>34</size>\r
       </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
         <size>13</size>\r
       </method>\r
     </type>\r
-    <type name="Program+&lt;Main&gt;c__AnonStorey1">\r
-      <method name="Void &lt;&gt;m__5()" attrs="131">\r
-        <size>34</size>\r
-      </method>\r
-      <method name="Void &lt;&gt;m__6()" attrs="131">\r
-        <size>46</size>\r
-      </method>\r
-    </type>\r
     <type name="Program+&lt;Main&gt;c__AnonStorey1+&lt;Main&gt;c__async3">\r
       <method name="Void MoveNext()" attrs="486">\r
         <size>191</size>\r
       </method>\r
     </type>\r
     <type name="Program+&lt;Main&gt;c__AnonStorey1+&lt;Main&gt;c__async0+&lt;Main&gt;c__AnonStorey2">\r
-      <method name="System.String &lt;&gt;m__4()" attrs="131">\r
-        <size>52</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
         <size>13</size>\r
       </method>\r
     </type>\r
+    <type name="Program">\r
+      <method name="System.Threading.Tasks.Task`1[System.Int16] &lt;Main&gt;m__0(Int16)" attrs="145">\r
+        <size>41</size>\r
+      </method>\r
+    </type>\r
+    <type name="Program+&lt;Main&gt;c__AnonStorey1">\r
+      <method name="Void &lt;&gt;m__2()" attrs="131">\r
+        <size>35</size>\r
+      </method>\r
+      <method name="Void &lt;&gt;m__4()" attrs="131">\r
+        <size>46</size>\r
+      </method>\r
+    </type>\r
+    <type name="Program+&lt;Main&gt;c__AnonStorey1+&lt;Main&gt;c__async0+&lt;Main&gt;c__AnonStorey2">\r
+      <method name="System.String &lt;&gt;m__0()" attrs="131">\r
+        <size>52</size>\r
+      </method>\r
+    </type>\r
   </test>\r
   <test name="test-async-08.cs">\r
     <type name="AsyncTypeInference">\r
       <method name="Void MoveNext()" attrs="486">\r
         <size>196</size>\r
       </method>\r
-      <method name="Int32 &lt;&gt;m__5()" attrs="145">\r
-        <size>9</size>\r
-      </method>\r
     </type>\r
     <type name="AsyncTypeInference+&lt;Main&gt;c__async5">\r
       <method name="Void MoveNext()" attrs="486">\r
         <size>197</size>\r
       </method>\r
-      <method name="Int32 &lt;&gt;m__6()" attrs="145">\r
-        <size>9</size>\r
-      </method>\r
     </type>\r
     <type name="AsyncTypeInference+&lt;Main&gt;c__async8">\r
       <method name="Void MoveNext()" attrs="486">\r
         <size>13</size>\r
       </method>\r
     </type>\r
+    <type name="AsyncTypeInference+&lt;Main&gt;c__async2">\r
+      <method name="Int32 &lt;&gt;m__0()" attrs="145">\r
+        <size>9</size>\r
+      </method>\r
+    </type>\r
+    <type name="AsyncTypeInference+&lt;Main&gt;c__async5">\r
+      <method name="Int32 &lt;&gt;m__0()" attrs="145">\r
+        <size>9</size>\r
+      </method>\r
+    </type>\r
   </test>\r
   <test name="test-async-09.cs">\r
     <type name="Test">\r
         <size>338</size>\r
       </method>\r
       <method name="System.String &lt;&gt;m__1()" attrs="145">\r
-        <size>21</size>\r
-      </method>\r
-      <method name="System.String &lt;&gt;m__2()" attrs="145">\r
         <size>13</size>\r
       </method>\r
     </type>\r
       <method name="Void MoveNext()" attrs="486">\r
         <size>257</size>\r
       </method>\r
-      <method name="System.String &lt;&gt;m__3()" attrs="145">\r
-        <size>13</size>\r
-      </method>\r
     </type>\r
     <type name="C+&lt;TestCompositionCall_3&gt;c__async2">\r
       <method name="Void MoveNext()" attrs="486">\r
         <size>310</size>\r
       </method>\r
-      <method name="Byte &lt;&gt;m__4()" attrs="145">\r
-        <size>9</size>\r
-      </method>\r
     </type>\r
     <type name="C+&lt;TestCompositionPair_1&gt;c__async3">\r
       <method name="Void MoveNext()" attrs="486">\r
         <size>208</size>\r
       </method>\r
-      <method name="Int32 &lt;&gt;m__5()" attrs="145">\r
-        <size>9</size>\r
-      </method>\r
     </type>\r
     <type name="C+&lt;TestCompositionPair_2&gt;c__async4">\r
       <method name="Void MoveNext()" attrs="486">\r
         <size>329</size>\r
       </method>\r
-      <method name="Int32 &lt;&gt;m__6()" attrs="145">\r
-        <size>17</size>\r
-      </method>\r
-      <method name="Int32 &lt;&gt;m__7()" attrs="145">\r
-        <size>9</size>\r
-      </method>\r
     </type>\r
     <type name="C+&lt;TestCompositionPair_3&gt;c__async5">\r
       <method name="Void MoveNext()" attrs="486">\r
         <size>209</size>\r
       </method>\r
-      <method name="Int32 &lt;&gt;m__8()" attrs="145">\r
-        <size>9</size>\r
-      </method>\r
     </type>\r
     <type name="C+&lt;TestCompositionPair_4&gt;c__async6">\r
       <method name="Void MoveNext()" attrs="486">\r
         <size>467</size>\r
       </method>\r
-      <method name="Int32 &lt;&gt;m__9()" attrs="145">\r
-        <size>9</size>\r
-      </method>\r
-      <method name="Int32 &lt;&gt;m__A()" attrs="145">\r
-        <size>9</size>\r
-      </method>\r
-      <method name="Int32 &lt;&gt;m__B()" attrs="145">\r
-        <size>9</size>\r
-      </method>\r
     </type>\r
     <type name="C+&lt;M&gt;c__AnonStorey7">\r
       <method name="Byte &lt;&gt;m__0()" attrs="131">\r
         <size>13</size>\r
       </method>\r
     </type>\r
+    <type name="C+&lt;TestCompositionCall_1&gt;c__async0">\r
+      <method name="System.String &lt;&gt;m__0()" attrs="145">\r
+        <size>21</size>\r
+      </method>\r
+    </type>\r
+    <type name="C+&lt;TestCompositionCall_2&gt;c__async1">\r
+      <method name="System.String &lt;&gt;m__0()" attrs="145">\r
+        <size>13</size>\r
+      </method>\r
+    </type>\r
+    <type name="C+&lt;TestCompositionCall_3&gt;c__async2">\r
+      <method name="Byte &lt;&gt;m__0()" attrs="145">\r
+        <size>9</size>\r
+      </method>\r
+    </type>\r
+    <type name="C+&lt;TestCompositionPair_1&gt;c__async3">\r
+      <method name="Int32 &lt;&gt;m__0()" attrs="145">\r
+        <size>9</size>\r
+      </method>\r
+    </type>\r
+    <type name="C+&lt;TestCompositionPair_2&gt;c__async4">\r
+      <method name="Int32 &lt;&gt;m__0()" attrs="145">\r
+        <size>17</size>\r
+      </method>\r
+      <method name="Int32 &lt;&gt;m__1()" attrs="145">\r
+        <size>9</size>\r
+      </method>\r
+    </type>\r
+    <type name="C+&lt;TestCompositionPair_3&gt;c__async5">\r
+      <method name="Int32 &lt;&gt;m__0()" attrs="145">\r
+        <size>9</size>\r
+      </method>\r
+    </type>\r
+    <type name="C+&lt;TestCompositionPair_4&gt;c__async6">\r
+      <method name="Int32 &lt;&gt;m__0()" attrs="145">\r
+        <size>9</size>\r
+      </method>\r
+      <method name="Int32 &lt;&gt;m__1()" attrs="145">\r
+        <size>9</size>\r
+      </method>\r
+      <method name="Int32 &lt;&gt;m__2()" attrs="145">\r
+        <size>9</size>\r
+      </method>\r
+    </type>\r
   </test>\r
   <test name="test-async-11.cs">\r
     <type name="G`1[T]">\r
       <method name="Int32 &lt;&gt;m__0()" attrs="145">\r
         <size>9</size>\r
       </method>\r
+      <method name="Void SetStateMachine(IAsyncStateMachine)" attrs="486">\r
+        <size>13</size>\r
+      </method>\r
     </type>\r
-    <type name="C+&lt;TestStack_1&gt;c__async1">\r
+    <type name="C+&lt;TestStack_1&gt;c__async0">\r
       <method name="Void MoveNext()" attrs="486">\r
         <size>327</size>\r
       </method>\r
-      <method name="Int32 &lt;&gt;m__1()" attrs="145">\r
+      <method name="Void SetStateMachine(IAsyncStateMachine)" attrs="486">\r
+        <size>13</size>\r
+      </method>\r
+      <method name="Int32 &lt;&gt;m__0()" attrs="145">\r
         <size>9</size>\r
       </method>\r
     </type>\r
-    <type name="C+&lt;TestStack_2&gt;c__async2">\r
+    <type name="C+&lt;TestStack_2&gt;c__async1">\r
       <method name="Void MoveNext()" attrs="486">\r
         <size>302</size>\r
       </method>\r
-      <method name="Int32 &lt;&gt;m__2()" attrs="145">\r
+      <method name="Void SetStateMachine(IAsyncStateMachine)" attrs="486">\r
+        <size>13</size>\r
+      </method>\r
+      <method name="Int32 &lt;&gt;m__0()" attrs="145">\r
         <size>9</size>\r
       </method>\r
     </type>\r
-    <type name="C+&lt;TestStack_3&gt;c__async3">\r
+    <type name="C+&lt;TestStack_3&gt;c__async2">\r
       <method name="Void MoveNext()" attrs="486">\r
         <size>467</size>\r
       </method>\r
-      <method name="Int32 &lt;&gt;m__3()" attrs="145">\r
-        <size>9</size>\r
-      </method>\r
-    </type>\r
-    <type name="C+&lt;TestStack_4&gt;c__async4">\r
-      <method name="Void MoveNext()" attrs="486">\r
-        <size>323</size>\r
+      <method name="Void SetStateMachine(IAsyncStateMachine)" attrs="486">\r
+        <size>13</size>\r
       </method>\r
-      <method name="Int32 &lt;&gt;m__4()" attrs="145">\r
+      <method name="Int32 &lt;&gt;m__0()" attrs="145">\r
         <size>9</size>\r
       </method>\r
     </type>\r
-    <type name="C+&lt;TestStack_5&gt;c__async5">\r
+    <type name="C+&lt;TestStack_4&gt;c__async3">\r
       <method name="Void MoveNext()" attrs="486">\r
-        <size>347</size>\r
-      </method>\r
-    </type>\r
-    <type name="G`1+&lt;TestStack_1&gt;c__async0[T]">\r
-      <method name="Void SetStateMachine(IAsyncStateMachine)" attrs="486">\r
-        <size>13</size>\r
-      </method>\r
-    </type>\r
-    <type name="C+&lt;TestStack_1&gt;c__async1">\r
-      <method name="Void SetStateMachine(IAsyncStateMachine)" attrs="486">\r
-        <size>13</size>\r
+        <size>323</size>\r
       </method>\r
-    </type>\r
-    <type name="C+&lt;TestStack_2&gt;c__async2">\r
       <method name="Void SetStateMachine(IAsyncStateMachine)" attrs="486">\r
         <size>13</size>\r
       </method>\r
-    </type>\r
-    <type name="C+&lt;TestStack_3&gt;c__async3">\r
-      <method name="Void SetStateMachine(IAsyncStateMachine)" attrs="486">\r
-        <size>13</size>\r
+      <method name="Int32 &lt;&gt;m__0()" attrs="145">\r
+        <size>9</size>\r
       </method>\r
     </type>\r
-    <type name="C+&lt;TestStack_4&gt;c__async4">\r
-      <method name="Void SetStateMachine(IAsyncStateMachine)" attrs="486">\r
-        <size>13</size>\r
+    <type name="C+&lt;TestStack_5&gt;c__async4">\r
+      <method name="Void MoveNext()" attrs="486">\r
+        <size>347</size>\r
       </method>\r
-    </type>\r
-    <type name="C+&lt;TestStack_5&gt;c__async5">\r
       <method name="Void SetStateMachine(IAsyncStateMachine)" attrs="486">\r
         <size>13</size>\r
       </method>\r
     </type>\r
-    <type name="C+&lt;TestStack_5&gt;c__async5+&lt;TestStack_5&gt;c__AnonStorey6">\r
-      <method name="Int32 &lt;&gt;m__5()" attrs="131">\r
+    <type name="C+&lt;TestStack_5&gt;c__async4+&lt;TestStack_5&gt;c__AnonStorey5">\r
+      <method name="Int32 &lt;&gt;m__0()" attrs="131">\r
         <size>48</size>\r
       </method>\r
       <method name="Void .ctor()" attrs="6278">\r
       <method name="Void MoveNext()" attrs="486">\r
         <size>335</size>\r
       </method>\r
-      <method name="Boolean &lt;&gt;m__4()" attrs="145">\r
-        <size>9</size>\r
-      </method>\r
-      <method name="Int32 &lt;&gt;m__5()" attrs="145">\r
-        <size>9</size>\r
-      </method>\r
     </type>\r
     <type name="Tester+&lt;ArrayAccessTest_2&gt;c__async1">\r
       <method name="Void MoveNext()" attrs="486">\r
         <size>740</size>\r
       </method>\r
-      <method name="Int32 &lt;&gt;m__6()" attrs="145">\r
-        <size>9</size>\r
-      </method>\r
-      <method name="Int32 &lt;&gt;m__7()" attrs="145">\r
-        <size>9</size>\r
-      </method>\r
-      <method name="Int32 &lt;&gt;m__8()" attrs="145">\r
-        <size>9</size>\r
-      </method>\r
-      <method name="Double &lt;&gt;m__9()" attrs="145">\r
-        <size>17</size>\r
-      </method>\r
     </type>\r
     <type name="Tester+&lt;ArrayAccessTest_3&gt;c__async2">\r
       <method name="Void MoveNext()" attrs="486">\r
         <size>1090</size>\r
       </method>\r
-      <method name="Int32 &lt;&gt;m__A()" attrs="145">\r
-        <size>9</size>\r
-      </method>\r
-      <method name="Int32 &lt;&gt;m__B()" attrs="145">\r
-        <size>9</size>\r
-      </method>\r
-      <method name="Decimal &lt;&gt;m__C()" attrs="145">\r
-        <size>19</size>\r
-      </method>\r
-      <method name="Int32 &lt;&gt;m__D()" attrs="145">\r
-        <size>9</size>\r
-      </method>\r
-      <method name="Decimal &lt;&gt;m__E()" attrs="145">\r
-        <size>19</size>\r
-      </method>\r
     </type>\r
     <type name="Tester+&lt;ArrayAccessTest_4&gt;c__async3">\r
       <method name="Void MoveNext()" attrs="486">\r
         <size>421</size>\r
       </method>\r
-      <method name="Int32 &lt;&gt;m__F()" attrs="145">\r
-        <size>9</size>\r
-      </method>\r
-      <method name="System.String &lt;&gt;m__10()" attrs="145">\r
-        <size>13</size>\r
-      </method>\r
     </type>\r
     <type name="Tester+&lt;ArrayAccessTest_5&gt;c__async4">\r
       <method name="Void MoveNext()" attrs="486">\r
         <size>428</size>\r
       </method>\r
-      <method name="Int32 &lt;&gt;m__11()" attrs="145">\r
-        <size>9</size>\r
-      </method>\r
     </type>\r
     <type name="Tester+&lt;ArrayAccessTest_6&gt;c__async5">\r
       <method name="Void MoveNext()" attrs="486">\r
         <size>257</size>\r
       </method>\r
-      <method name="Int64 &lt;&gt;m__13()" attrs="145">\r
-        <size>10</size>\r
-      </method>\r
     </type>\r
     <type name="Tester+&lt;ArrayAccessTest_7&gt;c__async6">\r
       <method name="Void MoveNext()" attrs="486">\r
         <size>426</size>\r
       </method>\r
-      <method name="Int32 &lt;&gt;m__14()" attrs="145">\r
-        <size>9</size>\r
-      </method>\r
     </type>\r
     <type name="Tester+&lt;ArrayAccessTest_8&gt;c__async7">\r
       <method name="Void MoveNext()" attrs="486">\r
         <size>792</size>\r
       </method>\r
-      <method name="Int32 &lt;&gt;m__15()" attrs="145">\r
-        <size>9</size>\r
-      </method>\r
-      <method name="Byte &lt;&gt;m__16()" attrs="145">\r
-        <size>10</size>\r
-      </method>\r
     </type>\r
     <type name="Tester+&lt;ArrayAccessTest_9&gt;c__async8">\r
       <method name="Void MoveNext()" attrs="486">\r
         <size>1209</size>\r
       </method>\r
-      <method name="Int32 &lt;&gt;m__17()" attrs="145">\r
-        <size>9</size>\r
-      </method>\r
-      <method name="Int32 &lt;&gt;m__18()" attrs="145">\r
-        <size>9</size>\r
-      </method>\r
-      <method name="Int32 &lt;&gt;m__19()" attrs="145">\r
-        <size>10</size>\r
-      </method>\r
-      <method name="Int32 &lt;&gt;m__1A()" attrs="145">\r
-        <size>9</size>\r
-      </method>\r
-      <method name="Int32 &lt;&gt;m__1B()" attrs="145">\r
-        <size>10</size>\r
-      </method>\r
-      <method name="Int32 &lt;&gt;m__1C()" attrs="145">\r
-        <size>9</size>\r
-      </method>\r
-      <method name="S &lt;&gt;m__1D()" attrs="145">\r
-        <size>25</size>\r
-      </method>\r
     </type>\r
     <type name="Tester+&lt;AssignTest_1&gt;c__async9">\r
       <method name="Void MoveNext()" attrs="486">\r
         <size>223</size>\r
       </method>\r
-      <method name="Int32 &lt;&gt;m__1E()" attrs="145">\r
-        <size>9</size>\r
-      </method>\r
     </type>\r
     <type name="Tester+&lt;AssignTest_2&gt;c__asyncA">\r
       <method name="Void MoveNext()" attrs="486">\r
       <method name="Void MoveNext()" attrs="486">\r
         <size>364</size>\r
       </method>\r
-      <method name="Int32 &lt;&gt;m__20()" attrs="145">\r
-        <size>9</size>\r
-      </method>\r
-      <method name="Int32 &lt;&gt;m__21()" attrs="145">\r
-        <size>9</size>\r
-      </method>\r
     </type>\r
     <type name="Tester+&lt;BinaryTest_1&gt;c__asyncC">\r
       <method name="Void MoveNext()" attrs="486">\r
         <size>435</size>\r
       </method>\r
-      <method name="Int32 &lt;&gt;m__22()" attrs="145">\r
-        <size>17</size>\r
-      </method>\r
-      <method name="Int32 &lt;&gt;m__23()" attrs="145">\r
-        <size>10</size>\r
-      </method>\r
-      <method name="Int32 &lt;&gt;m__24()" attrs="145">\r
-        <size>10</size>\r
-      </method>\r
     </type>\r
     <type name="Tester+&lt;BinaryTest_2&gt;c__asyncD">\r
       <method name="Void MoveNext()" attrs="486">\r
         <size>13</size>\r
       </method>\r
     </type>\r
-    <type name="Tester">\r
-      <method name="Tester &lt;CastTest_2&gt;m__3A()" attrs="129">\r
-        <size>9</size>\r
-      </method>\r
-    </type>\r
-    <type name="Tester+&lt;AssignTest_2&gt;c__asyncA">\r
-      <method name="System.Nullable`1[System.SByte] &lt;&gt;m__1F()" attrs="145">\r
-        <size>17</size>\r
-      </method>\r
-    </type>\r
-    <type name="Tester+&lt;BinaryTest_3&gt;c__asyncE">\r
-      <method name="System.Nullable`1[System.Boolean] &lt;&gt;m__28()" attrs="145">\r
-        <size>14</size>\r
-      </method>\r
-      <method name="System.Nullable`1[System.Boolean] &lt;&gt;m__29()" attrs="145">\r
-        <size>17</size>\r
-      </method>\r
-      <method name="System.Nullable`1[System.Boolean] &lt;&gt;m__2A()" attrs="145">\r
-        <size>17</size>\r
-      </method>\r
-      <method name="System.Nullable`1[System.Boolean] &lt;&gt;m__2B()" attrs="145">\r
-        <size>14</size>\r
-      </method>\r
-      <method name="System.Nullable`1[System.Boolean] &lt;&gt;m__2C()" attrs="145">\r
-        <size>17</size>\r
-      </method>\r
-      <method name="System.Nullable`1[System.Boolean] &lt;&gt;m__2D()" attrs="145">\r
-        <size>14</size>\r
-      </method>\r
-    </type>\r
-    <type name="Tester+&lt;BinaryTest_4&gt;c__asyncF">\r
-      <method name="System.Nullable`1[System.Int16] &lt;&gt;m__2E()" attrs="145">\r
-        <size>14</size>\r
-      </method>\r
-      <method name="System.Nullable`1[System.Byte] &lt;&gt;m__2F()" attrs="145">\r
-        <size>17</size>\r
-      </method>\r
-      <method name="System.Nullable`1[System.Decimal] &lt;&gt;m__30()" attrs="145">\r
-        <size>20</size>\r
-      </method>\r
-      <method name="System.Nullable`1[System.Decimal] &lt;&gt;m__31()" attrs="145">\r
-        <size>17</size>\r
-      </method>\r
-    </type>\r
     <type name="Tester">\r
       <method name="System.Threading.Tasks.Task`1[System.Boolean] BinaryTest_6()" attrs="129">\r
         <size>33</size>\r
       <method name="Void SetStateMachine(IAsyncStateMachine)" attrs="486">\r
         <size>13</size>\r
       </method>\r
-      <method name="Int32 &lt;&gt;m__32()" attrs="145">\r
-        <size>17</size>\r
-      </method>\r
-      <method name="Int32 &lt;&gt;m__33()" attrs="145">\r
-        <size>10</size>\r
-      </method>\r
-      <method name="Int32 &lt;&gt;m__34()" attrs="145">\r
-        <size>9</size>\r
-      </method>\r
     </type>\r
     <type name="Tester+&lt;CallTest_2&gt;c__async13">\r
       <method name="Void MoveNext()" attrs="486">\r
       <method name="Void SetStateMachine(IAsyncStateMachine)" attrs="486">\r
         <size>13</size>\r
       </method>\r
-      <method name="Int32 &lt;&gt;m__35()" attrs="145">\r
-        <size>17</size>\r
-      </method>\r
     </type>\r
     <type name="Tester+&lt;CallTest_3&gt;c__async14">\r
       <method name="Void MoveNext()" attrs="486">\r
       <method name="Void SetStateMachine(IAsyncStateMachine)" attrs="486">\r
         <size>13</size>\r
       </method>\r
-      <method name="Int32 &lt;&gt;m__36()" attrs="145">\r
-        <size>10</size>\r
-      </method>\r
     </type>\r
     <type name="Tester+&lt;CallTest_4&gt;c__async15">\r
       <method name="Void MoveNext()" attrs="486">\r
       <method name="Void SetStateMachine(IAsyncStateMachine)" attrs="486">\r
         <size>13</size>\r
       </method>\r
-      <method name="E &lt;&gt;m__37()" attrs="145">\r
-        <size>9</size>\r
-      </method>\r
     </type>\r
     <type name="Tester+&lt;CallTest_5&gt;c__async16">\r
       <method name="Void MoveNext()" attrs="486">\r
       <method name="Void SetStateMachine(IAsyncStateMachine)" attrs="486">\r
         <size>13</size>\r
       </method>\r
-      <method name="Decimal &lt;&gt;m__39()" attrs="145">\r
-        <size>15</size>\r
-      </method>\r
     </type>\r
     <type name="Tester+&lt;CastTest_2&gt;c__async18">\r
       <method name="Void MoveNext()" attrs="486">\r
       <method name="Void SetStateMachine(IAsyncStateMachine)" attrs="486">\r
         <size>13</size>\r
       </method>\r
-      <method name="System.String &lt;&gt;m__3B()" attrs="145">\r
-        <size>9</size>\r
-      </method>\r
-      <method name="System.String &lt;&gt;m__3C()" attrs="145">\r
-        <size>13</size>\r
-      </method>\r
     </type>\r
     <type name="Tester+&lt;CoalescingTest_2&gt;c__async1A">\r
       <method name="Void MoveNext()" attrs="486">\r
       <method name="Void SetStateMachine(IAsyncStateMachine)" attrs="486">\r
         <size>13</size>\r
       </method>\r
-      <method name="System.Nullable`1[System.Int16] &lt;&gt;m__3D()" attrs="145">\r
-        <size>17</size>\r
-      </method>\r
-      <method name="Byte &lt;&gt;m__3E()" attrs="145">\r
-        <size>9</size>\r
-      </method>\r
     </type>\r
     <type name="Tester+&lt;ConditionalTest_1&gt;c__async1B">\r
       <method name="Void MoveNext()" attrs="486">\r
       <method name="Void SetStateMachine(IAsyncStateMachine)" attrs="486">\r
         <size>13</size>\r
       </method>\r
-      <method name="Int32 &lt;&gt;m__3F()" attrs="145">\r
-        <size>9</size>\r
-      </method>\r
     </type>\r
     <type name="Tester+&lt;ConditionalTest_2&gt;c__async1C">\r
       <method name="Void MoveNext()" attrs="486">\r
       <method name="Void SetStateMachine(IAsyncStateMachine)" attrs="486">\r
         <size>13</size>\r
       </method>\r
-      <method name="Int32 &lt;&gt;m__40()" attrs="145">\r
-        <size>9</size>\r
-      </method>\r
-      <method name="Int32 &lt;&gt;m__41()" attrs="145">\r
-        <size>9</size>\r
-      </method>\r
     </type>\r
     <type name="Tester+&lt;ConditionalTest_3&gt;c__async1D">\r
       <method name="Void MoveNext()" attrs="486">\r
       <method name="Void SetStateMachine(IAsyncStateMachine)" attrs="486">\r
         <size>13</size>\r
       </method>\r
-      <method name="Boolean &lt;&gt;m__42()" attrs="145">\r
-        <size>9</size>\r
-      </method>\r
-      <method name="Int32 &lt;&gt;m__43()" attrs="145">\r
-        <size>9</size>\r
-      </method>\r
     </type>\r
     <type name="Tester+&lt;ConditionalTest_4&gt;c__async1E">\r
       <method name="Void MoveNext()" attrs="486">\r
       <method name="Void SetStateMachine(IAsyncStateMachine)" attrs="486">\r
         <size>13</size>\r
       </method>\r
-      <method name="Int32 &lt;&gt;m__44()" attrs="145">\r
-        <size>9</size>\r
-      </method>\r
     </type>\r
     <type name="Tester+&lt;DelegateInvoke_4&gt;c__async1F">\r
       <method name="Void MoveNext()" attrs="486">\r
       <method name="Void SetStateMachine(IAsyncStateMachine)" attrs="486">\r
         <size>13</size>\r
       </method>\r
-      <method name="Int32 &lt;&gt;m__45(Int32)" attrs="145">\r
-        <size>11</size>\r
-      </method>\r
-      <method name="Int32 &lt;&gt;m__46()" attrs="145">\r
-        <size>9</size>\r
-      </method>\r
     </type>\r
     <type name="Tester+&lt;EventInvoke_1&gt;c__async20">\r
       <method name="Void MoveNext()" attrs="486">\r
       <method name="Void SetStateMachine(IAsyncStateMachine)" attrs="486">\r
         <size>13</size>\r
       </method>\r
-      <method name="Int32 &lt;&gt;m__49()" attrs="145">\r
-        <size>9</size>\r
-      </method>\r
-      <method name="Int32 &lt;&gt;m__4A()" attrs="145">\r
-        <size>9</size>\r
-      </method>\r
     </type>\r
     <type name="Tester+&lt;IndexerTest_1&gt;c__async22">\r
       <method name="Void MoveNext()" attrs="486">\r
       <method name="Void SetStateMachine(IAsyncStateMachine)" attrs="486">\r
         <size>13</size>\r
       </method>\r
-      <method name="Int32 &lt;&gt;m__4B()" attrs="145">\r
-        <size>9</size>\r
-      </method>\r
     </type>\r
     <type name="Tester+&lt;IndexerTest_2&gt;c__async23">\r
       <method name="Void MoveNext()" attrs="486">\r
       <method name="Void SetStateMachine(IAsyncStateMachine)" attrs="486">\r
         <size>13</size>\r
       </method>\r
-      <method name="Int32 &lt;&gt;m__4C()" attrs="145">\r
-        <size>9</size>\r
-      </method>\r
-      <method name="Int32 &lt;&gt;m__4D()" attrs="145">\r
-        <size>9</size>\r
-      </method>\r
     </type>\r
     <type name="Tester+&lt;IndexerTest_3&gt;c__async24">\r
       <method name="Void MoveNext()" attrs="486">\r
       <method name="Void SetStateMachine(IAsyncStateMachine)" attrs="486">\r
         <size>13</size>\r
       </method>\r
-      <method name="Int32 &lt;&gt;m__4F()" attrs="145">\r
-        <size>9</size>\r
-      </method>\r
     </type>\r
     <type name="Tester+&lt;IndexerTest_4&gt;c__async25">\r
       <method name="Void MoveNext()" attrs="486">\r
       <method name="Void SetStateMachine(IAsyncStateMachine)" attrs="486">\r
         <size>13</size>\r
       </method>\r
-      <method name="Int32 &lt;&gt;m__51()" attrs="145">\r
-        <size>10</size>\r
-      </method>\r
     </type>\r
     <type name="Tester+&lt;IndexerTest_5&gt;c__async26">\r
       <method name="Void MoveNext()" attrs="486">\r
       <method name="Void SetStateMachine(IAsyncStateMachine)" attrs="486">\r
         <size>13</size>\r
       </method>\r
-      <method name="Int32 &lt;&gt;m__53()" attrs="145">\r
-        <size>10</size>\r
-      </method>\r
     </type>\r
     <type name="Tester+&lt;IndexerTest_6&gt;c__async27">\r
       <method name="Void MoveNext()" attrs="486">\r
       <method name="Void SetStateMachine(IAsyncStateMachine)" attrs="486">\r
         <size>13</size>\r
       </method>\r
-      <method name="Int32 &lt;&gt;m__54()" attrs="145">\r
-        <size>10</size>\r
-      </method>\r
-      <method name="Int32 &lt;&gt;m__55()" attrs="145">\r
-        <size>9</size>\r
-      </method>\r
-      <method name="Int32 &lt;&gt;m__56()" attrs="145">\r
-        <size>10</size>\r
-      </method>\r
     </type>\r
     <type name="Tester+&lt;IndexerTest_7&gt;c__async28">\r
       <method name="Void MoveNext()" attrs="486">\r
       <method name="Void SetStateMachine(IAsyncStateMachine)" attrs="486">\r
         <size>13</size>\r
       </method>\r
-      <method name="Tester &lt;&gt;m__58()" attrs="145">\r
-        <size>13</size>\r
-      </method>\r
     </type>\r
     <type name="Tester+&lt;IsTest_2&gt;c__async2A">\r
       <method name="Void MoveNext()" attrs="486">\r
       <method name="Void SetStateMachine(IAsyncStateMachine)" attrs="486">\r
         <size>13</size>\r
       </method>\r
-      <method name="System.Nullable`1[System.UInt32] &lt;&gt;m__59()" attrs="145">\r
-        <size>14</size>\r
-      </method>\r
     </type>\r
     <type name="Tester+&lt;LogicalUserOperator_1&gt;c__async2B">\r
       <method name="Void MoveNext()" attrs="486">\r
       <method name="Void SetStateMachine(IAsyncStateMachine)" attrs="486">\r
         <size>13</size>\r
       </method>\r
-      <method name="Base &lt;&gt;m__5A()" attrs="145">\r
-        <size>13</size>\r
-      </method>\r
-      <method name="Base &lt;&gt;m__5B()" attrs="145">\r
-        <size>13</size>\r
-      </method>\r
     </type>\r
     <type name="Tester+&lt;LogicalUserOperator_2&gt;c__async2C">\r
       <method name="Void MoveNext()" attrs="486">\r
       <method name="Void SetStateMachine(IAsyncStateMachine)" attrs="486">\r
         <size>13</size>\r
       </method>\r
-      <method name="Base &lt;&gt;m__5C()" attrs="145">\r
-        <size>13</size>\r
-      </method>\r
     </type>\r
     <type name="Tester+&lt;LogicalUserOperator_3&gt;c__async2D">\r
       <method name="Void MoveNext()" attrs="486">\r
       <method name="Void SetStateMachine(IAsyncStateMachine)" attrs="486">\r
         <size>13</size>\r
       </method>\r
-      <method name="Base &lt;&gt;m__5D()" attrs="145">\r
-        <size>13</size>\r
-      </method>\r
-      <method name="Base &lt;&gt;m__5E()" attrs="145">\r
-        <size>13</size>\r
-      </method>\r
     </type>\r
     <type name="Tester+&lt;NewTest_1&gt;c__async2E">\r
       <method name="Void MoveNext()" attrs="486">\r
       <method name="Void SetStateMachine(IAsyncStateMachine)" attrs="486">\r
         <size>13</size>\r
       </method>\r
-      <method name="Int32 &lt;&gt;m__5F()" attrs="145">\r
-        <size>10</size>\r
-      </method>\r
     </type>\r
     <type name="Tester+&lt;NewTest_2&gt;c__async2F">\r
       <method name="Void MoveNext()" attrs="486">\r
       <method name="Void SetStateMachine(IAsyncStateMachine)" attrs="486">\r
         <size>13</size>\r
       </method>\r
-      <method name="Int32 &lt;&gt;m__60()" attrs="145">\r
-        <size>10</size>\r
-      </method>\r
-      <method name="System.String &lt;&gt;m__61()" attrs="145">\r
-        <size>13</size>\r
-      </method>\r
     </type>\r
     <type name="Tester+&lt;NewInitTest_1&gt;c__async30">\r
       <method name="Void MoveNext()" attrs="486">\r
       <method name="Void SetStateMachine(IAsyncStateMachine)" attrs="486">\r
         <size>13</size>\r
       </method>\r
-      <method name="Int32 &lt;&gt;m__62()" attrs="145">\r
-        <size>10</size>\r
-      </method>\r
-      <method name="Int32 &lt;&gt;m__63()" attrs="145">\r
-        <size>10</size>\r
-      </method>\r
-      <method name="Int32 &lt;&gt;m__64()" attrs="145">\r
-        <size>10</size>\r
-      </method>\r
-      <method name="Int32 &lt;&gt;m__65()" attrs="145">\r
-        <size>10</size>\r
-      </method>\r
-      <method name="Int32 &lt;&gt;m__66()" attrs="145">\r
-        <size>10</size>\r
-      </method>\r
-      <method name="Int32 &lt;&gt;m__67()" attrs="145">\r
-        <size>10</size>\r
-      </method>\r
     </type>\r
     <type name="Tester+&lt;NewInitTest_2&gt;c__async31">\r
       <method name="Void MoveNext()" attrs="486">\r
       <method name="Void SetStateMachine(IAsyncStateMachine)" attrs="486">\r
         <size>13</size>\r
       </method>\r
-      <method name="System.String &lt;&gt;m__68()" attrs="145">\r
-        <size>13</size>\r
-      </method>\r
-      <method name="System.String &lt;&gt;m__69()" attrs="145">\r
-        <size>13</size>\r
-      </method>\r
-      <method name="Int32 &lt;&gt;m__6A()" attrs="145">\r
-        <size>10</size>\r
-      </method>\r
-      <method name="Int32 &lt;&gt;m__6B()" attrs="145">\r
-        <size>10</size>\r
-      </method>\r
     </type>\r
     <type name="Tester+&lt;NewArrayInitTest_1&gt;c__async32">\r
       <method name="Void MoveNext()" attrs="486">\r
       <method name="Void SetStateMachine(IAsyncStateMachine)" attrs="486">\r
         <size>13</size>\r
       </method>\r
-      <method name="Int32 &lt;&gt;m__6C()" attrs="145">\r
-        <size>9</size>\r
-      </method>\r
     </type>\r
     <type name="Tester+&lt;NewArrayInitTest_2&gt;c__async33">\r
       <method name="Void MoveNext()" attrs="486">\r
       <method name="Void SetStateMachine(IAsyncStateMachine)" attrs="486">\r
         <size>13</size>\r
       </method>\r
-      <method name="Int32 &lt;&gt;m__6D()" attrs="145">\r
-        <size>9</size>\r
-      </method>\r
-      <method name="Int32 &lt;&gt;m__6E()" attrs="145">\r
-        <size>9</size>\r
-      </method>\r
     </type>\r
     <type name="Tester+&lt;NewArrayInitTest_3&gt;c__async34">\r
       <method name="Void MoveNext()" attrs="486">\r
       <method name="Void SetStateMachine(IAsyncStateMachine)" attrs="486">\r
         <size>13</size>\r
       </method>\r
-      <method name="Byte &lt;&gt;m__6F()" attrs="145">\r
-        <size>9</size>\r
-      </method>\r
     </type>\r
     <type name="Tester+&lt;NewArrayInitTest_4&gt;c__async35">\r
       <method name="Void MoveNext()" attrs="486">\r
       <method name="Void SetStateMachine(IAsyncStateMachine)" attrs="486">\r
         <size>13</size>\r
       </method>\r
-      <method name="UInt16 &lt;&gt;m__70()" attrs="145">\r
-        <size>9</size>\r
-      </method>\r
-      <method name="UInt16 &lt;&gt;m__71()" attrs="145">\r
-        <size>9</size>\r
-      </method>\r
     </type>\r
     <type name="Tester+&lt;NewArrayInitTest_5&gt;c__async36">\r
       <method name="Void MoveNext()" attrs="486">\r
       <method name="Void SetStateMachine(IAsyncStateMachine)" attrs="486">\r
         <size>13</size>\r
       </method>\r
-      <method name="S &lt;&gt;m__72()" attrs="145">\r
-        <size>25</size>\r
-      </method>\r
     </type>\r
     <type name="Tester+&lt;NewArrayInitTest_6&gt;c__async37">\r
       <method name="Void MoveNext()" attrs="486">\r
       <method name="Void SetStateMachine(IAsyncStateMachine)" attrs="486">\r
         <size>13</size>\r
       </method>\r
-      <method name="Int32 &lt;&gt;m__73()" attrs="145">\r
-        <size>9</size>\r
-      </method>\r
     </type>\r
     <type name="Tester+&lt;PropertyTest_1&gt;c__async38">\r
       <method name="Void MoveNext()" attrs="486">\r
       <method name="Void SetStateMachine(IAsyncStateMachine)" attrs="486">\r
         <size>13</size>\r
       </method>\r
-      <method name="Int32 &lt;&gt;m__74()" attrs="145">\r
-        <size>9</size>\r
-      </method>\r
     </type>\r
     <type name="Tester+&lt;PropertyTest_2&gt;c__async39">\r
       <method name="Void MoveNext()" attrs="486">\r
       <method name="Void SetStateMachine(IAsyncStateMachine)" attrs="486">\r
         <size>13</size>\r
       </method>\r
-      <method name="Int32 &lt;&gt;m__75()" attrs="145">\r
-        <size>9</size>\r
-      </method>\r
     </type>\r
     <type name="Tester+&lt;PropertyTest_3&gt;c__async3A">\r
       <method name="Void MoveNext()" attrs="486">\r
       <method name="Void SetStateMachine(IAsyncStateMachine)" attrs="486">\r
         <size>13</size>\r
       </method>\r
-      <method name="Int32 &lt;&gt;m__76()" attrs="145">\r
-        <size>10</size>\r
-      </method>\r
-      <method name="Int32 &lt;&gt;m__77()" attrs="145">\r
-        <size>9</size>\r
-      </method>\r
-      <method name="Int32 &lt;&gt;m__78()" attrs="145">\r
-        <size>9</size>\r
-      </method>\r
     </type>\r
     <type name="Tester+&lt;StringConcatTest_1&gt;c__async3B">\r
       <method name="Void MoveNext()" attrs="486">\r
       <method name="Void SetStateMachine(IAsyncStateMachine)" attrs="486">\r
         <size>13</size>\r
       </method>\r
-      <method name="System.String &lt;&gt;m__79()" attrs="145">\r
-        <size>13</size>\r
-      </method>\r
-      <method name="System.String &lt;&gt;m__7A()" attrs="145">\r
-        <size>13</size>\r
-      </method>\r
-      <method name="System.String &lt;&gt;m__7B()" attrs="145">\r
-        <size>9</size>\r
-      </method>\r
     </type>\r
     <type name="Tester+&lt;UnaryTest_1&gt;c__async3C">\r
       <method name="Void MoveNext()" attrs="486">\r
       <method name="Void SetStateMachine(IAsyncStateMachine)" attrs="486">\r
         <size>13</size>\r
       </method>\r
-      <method name="Int32 &lt;&gt;m__7C()" attrs="145">\r
-        <size>9</size>\r
-      </method>\r
     </type>\r
     <type name="Tester+&lt;UnaryTest_2&gt;c__async3D">\r
       <method name="Void MoveNext()" attrs="486">\r
       <method name="Void SetStateMachine(IAsyncStateMachine)" attrs="486">\r
         <size>13</size>\r
       </method>\r
-      <method name="Int32 &lt;&gt;m__7E()" attrs="145">\r
-        <size>9</size>\r
-      </method>\r
     </type>\r
     <type name="Tester+&lt;VariableInitializer_1&gt;c__async3F">\r
       <method name="Void MoveNext()" attrs="486">\r
       <method name="Void SetStateMachine(IAsyncStateMachine)" attrs="486">\r
         <size>13</size>\r
       </method>\r
-      <method name="Int32 &lt;&gt;m__7F()" attrs="145">\r
+    </type>\r
+    <type name="Tester+&lt;ArrayAccessTest_5&gt;c__async4+&lt;ArrayAccessTest_5&gt;c__AnonStorey40">\r
+      <method name="Void .ctor()" attrs="6278">\r
+        <size>7</size>\r
+      </method>\r
+    </type>\r
+    <type name="Tester+&lt;BinaryTest_2&gt;c__asyncD+&lt;BinaryTest_2&gt;c__AnonStorey41">\r
+      <method name="Void .ctor()" attrs="6278">\r
+        <size>7</size>\r
+      </method>\r
+    </type>\r
+    <type name="Tester+&lt;CallTest_5&gt;c__async16+&lt;CallTest_5&gt;c__AnonStorey42">\r
+      <method name="Void .ctor()" attrs="6278">\r
+        <size>7</size>\r
+      </method>\r
+    </type>\r
+    <type name="Tester+&lt;EventInvoke_1&gt;c__async20+&lt;EventInvoke_1&gt;c__AnonStorey43">\r
+      <method name="Void .ctor()" attrs="6278">\r
+        <size>7</size>\r
+      </method>\r
+    </type>\r
+    <type name="Tester+&lt;IndexerTest_3&gt;c__async24+&lt;IndexerTest_3&gt;c__AnonStorey44">\r
+      <method name="Void .ctor()" attrs="6278">\r
+        <size>7</size>\r
+      </method>\r
+    </type>\r
+    <type name="Tester+&lt;IndexerTest_4&gt;c__async25+&lt;IndexerTest_4&gt;c__AnonStorey45">\r
+      <method name="Void .ctor()" attrs="6278">\r
+        <size>7</size>\r
+      </method>\r
+    </type>\r
+    <type name="Tester+&lt;IndexerTest_5&gt;c__async26+&lt;IndexerTest_5&gt;c__AnonStorey46">\r
+      <method name="Void .ctor()" attrs="6278">\r
+        <size>7</size>\r
+      </method>\r
+    </type>\r
+    <type name="Tester+&lt;IndexerTest_7&gt;c__async28+&lt;IndexerTest_7&gt;c__AnonStorey47">\r
+      <method name="Void .ctor()" attrs="6278">\r
+        <size>7</size>\r
+      </method>\r
+    </type>\r
+    <type name="Tester+&lt;UnaryTest_2&gt;c__async3D+&lt;UnaryTest_2&gt;c__AnonStorey48">\r
+      <method name="Void .ctor()" attrs="6278">\r
+        <size>7</size>\r
+      </method>\r
+    </type>\r
+    <type name="Tester">\r
+      <method name="Tester &lt;CastTest_2&gt;m__4()" attrs="129">\r
         <size>9</size>\r
       </method>\r
-      <method name="Int32 &lt;&gt;m__80()" attrs="145">\r
+    </type>\r
+    <type name="Tester+&lt;ArrayAccessTest_1&gt;c__async0">\r
+      <method name="Boolean &lt;&gt;m__0()" attrs="145">\r
+        <size>9</size>\r
+      </method>\r
+      <method name="Int32 &lt;&gt;m__1()" attrs="145">\r
         <size>9</size>\r
       </method>\r
     </type>\r
-    <type name="Tester+&lt;ArrayAccessTest_5&gt;c__async4+&lt;ArrayAccessTest_5&gt;c__AnonStorey40">\r
-      <method name="Int32 &lt;&gt;m__12()" attrs="131">\r
+    <type name="Tester+&lt;ArrayAccessTest_2&gt;c__async1">\r
+      <method name="Int32 &lt;&gt;m__0()" attrs="145">\r
+        <size>9</size>\r
+      </method>\r
+      <method name="Int32 &lt;&gt;m__1()" attrs="145">\r
+        <size>9</size>\r
+      </method>\r
+      <method name="Int32 &lt;&gt;m__2()" attrs="145">\r
+        <size>9</size>\r
+      </method>\r
+      <method name="Double &lt;&gt;m__3()" attrs="145">\r
+        <size>17</size>\r
+      </method>\r
+    </type>\r
+    <type name="Tester+&lt;ArrayAccessTest_3&gt;c__async2">\r
+      <method name="Int32 &lt;&gt;m__0()" attrs="145">\r
+        <size>9</size>\r
+      </method>\r
+      <method name="Int32 &lt;&gt;m__1()" attrs="145">\r
+        <size>9</size>\r
+      </method>\r
+      <method name="Decimal &lt;&gt;m__2()" attrs="145">\r
+        <size>19</size>\r
+      </method>\r
+      <method name="Int32 &lt;&gt;m__3()" attrs="145">\r
+        <size>9</size>\r
+      </method>\r
+      <method name="Decimal &lt;&gt;m__4()" attrs="145">\r
+        <size>19</size>\r
+      </method>\r
+    </type>\r
+    <type name="Tester+&lt;ArrayAccessTest_4&gt;c__async3">\r
+      <method name="Int32 &lt;&gt;m__0()" attrs="145">\r
+        <size>9</size>\r
+      </method>\r
+      <method name="System.String &lt;&gt;m__1()" attrs="145">\r
+        <size>13</size>\r
+      </method>\r
+    </type>\r
+    <type name="Tester+&lt;ArrayAccessTest_5&gt;c__async4">\r
+      <method name="Int32 &lt;&gt;m__0()" attrs="145">\r
+        <size>9</size>\r
+      </method>\r
+    </type>\r
+    <type name="Tester+&lt;ArrayAccessTest_6&gt;c__async5">\r
+      <method name="Int64 &lt;&gt;m__0()" attrs="145">\r
+        <size>10</size>\r
+      </method>\r
+    </type>\r
+    <type name="Tester+&lt;ArrayAccessTest_7&gt;c__async6">\r
+      <method name="Int32 &lt;&gt;m__0()" attrs="145">\r
+        <size>9</size>\r
+      </method>\r
+    </type>\r
+    <type name="Tester+&lt;ArrayAccessTest_8&gt;c__async7">\r
+      <method name="Int32 &lt;&gt;m__0()" attrs="145">\r
+        <size>9</size>\r
+      </method>\r
+      <method name="Byte &lt;&gt;m__1()" attrs="145">\r
+        <size>10</size>\r
+      </method>\r
+    </type>\r
+    <type name="Tester+&lt;ArrayAccessTest_9&gt;c__async8">\r
+      <method name="Int32 &lt;&gt;m__0()" attrs="145">\r
+        <size>9</size>\r
+      </method>\r
+      <method name="Int32 &lt;&gt;m__1()" attrs="145">\r
+        <size>9</size>\r
+      </method>\r
+      <method name="Int32 &lt;&gt;m__2()" attrs="145">\r
+        <size>10</size>\r
+      </method>\r
+      <method name="Int32 &lt;&gt;m__3()" attrs="145">\r
+        <size>9</size>\r
+      </method>\r
+      <method name="Int32 &lt;&gt;m__4()" attrs="145">\r
+        <size>10</size>\r
+      </method>\r
+      <method name="Int32 &lt;&gt;m__5()" attrs="145">\r
+        <size>9</size>\r
+      </method>\r
+      <method name="S &lt;&gt;m__6()" attrs="145">\r
         <size>25</size>\r
       </method>\r
-      <method name="Void .ctor()" attrs="6278">\r
-        <size>7</size>\r
+    </type>\r
+    <type name="Tester+&lt;AssignTest_1&gt;c__async9">\r
+      <method name="Int32 &lt;&gt;m__0()" attrs="145">\r
+        <size>9</size>\r
+      </method>\r
+    </type>\r
+    <type name="Tester+&lt;AssignTest_2&gt;c__asyncA">\r
+      <method name="System.Nullable`1[System.SByte] &lt;&gt;m__0()" attrs="145">\r
+        <size>17</size>\r
+      </method>\r
+    </type>\r
+    <type name="Tester+&lt;AssignTest_3&gt;c__asyncB">\r
+      <method name="Int32 &lt;&gt;m__0()" attrs="145">\r
+        <size>9</size>\r
+      </method>\r
+      <method name="Int32 &lt;&gt;m__1()" attrs="145">\r
+        <size>9</size>\r
+      </method>\r
+    </type>\r
+    <type name="Tester+&lt;BinaryTest_1&gt;c__asyncC">\r
+      <method name="Int32 &lt;&gt;m__0()" attrs="145">\r
+        <size>17</size>\r
+      </method>\r
+      <method name="Int32 &lt;&gt;m__1()" attrs="145">\r
+        <size>10</size>\r
+      </method>\r
+      <method name="Int32 &lt;&gt;m__2()" attrs="145">\r
+        <size>10</size>\r
+      </method>\r
+    </type>\r
+    <type name="Tester+&lt;BinaryTest_3&gt;c__asyncE">\r
+      <method name="System.Nullable`1[System.Boolean] &lt;&gt;m__0()" attrs="145">\r
+        <size>14</size>\r
+      </method>\r
+      <method name="System.Nullable`1[System.Boolean] &lt;&gt;m__1()" attrs="145">\r
+        <size>17</size>\r
+      </method>\r
+      <method name="System.Nullable`1[System.Boolean] &lt;&gt;m__2()" attrs="145">\r
+        <size>17</size>\r
+      </method>\r
+      <method name="System.Nullable`1[System.Boolean] &lt;&gt;m__3()" attrs="145">\r
+        <size>14</size>\r
+      </method>\r
+      <method name="System.Nullable`1[System.Boolean] &lt;&gt;m__4()" attrs="145">\r
+        <size>17</size>\r
+      </method>\r
+      <method name="System.Nullable`1[System.Boolean] &lt;&gt;m__5()" attrs="145">\r
+        <size>14</size>\r
+      </method>\r
+    </type>\r
+    <type name="Tester+&lt;BinaryTest_4&gt;c__asyncF">\r
+      <method name="System.Nullable`1[System.Int16] &lt;&gt;m__0()" attrs="145">\r
+        <size>14</size>\r
+      </method>\r
+      <method name="System.Nullable`1[System.Byte] &lt;&gt;m__1()" attrs="145">\r
+        <size>17</size>\r
+      </method>\r
+      <method name="System.Nullable`1[System.Decimal] &lt;&gt;m__2()" attrs="145">\r
+        <size>20</size>\r
+      </method>\r
+      <method name="System.Nullable`1[System.Decimal] &lt;&gt;m__3()" attrs="145">\r
+        <size>17</size>\r
+      </method>\r
+    </type>\r
+    <type name="Tester+&lt;CallTest_1&gt;c__async12">\r
+      <method name="Int32 &lt;&gt;m__0()" attrs="145">\r
+        <size>17</size>\r
+      </method>\r
+      <method name="Int32 &lt;&gt;m__1()" attrs="145">\r
+        <size>10</size>\r
+      </method>\r
+      <method name="Int32 &lt;&gt;m__2()" attrs="145">\r
+        <size>9</size>\r
+      </method>\r
+    </type>\r
+    <type name="Tester+&lt;CallTest_2&gt;c__async13">\r
+      <method name="Int32 &lt;&gt;m__0()" attrs="145">\r
+        <size>17</size>\r
+      </method>\r
+    </type>\r
+    <type name="Tester+&lt;CallTest_3&gt;c__async14">\r
+      <method name="Int32 &lt;&gt;m__0()" attrs="145">\r
+        <size>10</size>\r
+      </method>\r
+    </type>\r
+    <type name="Tester+&lt;CallTest_4&gt;c__async15">\r
+      <method name="E &lt;&gt;m__0()" attrs="145">\r
+        <size>9</size>\r
+      </method>\r
+    </type>\r
+    <type name="Tester+&lt;CastTest_1&gt;c__async17">\r
+      <method name="Decimal &lt;&gt;m__0()" attrs="145">\r
+        <size>15</size>\r
+      </method>\r
+    </type>\r
+    <type name="Tester+&lt;CoalescingTest_1&gt;c__async19">\r
+      <method name="System.String &lt;&gt;m__0()" attrs="145">\r
+        <size>9</size>\r
+      </method>\r
+      <method name="System.String &lt;&gt;m__1()" attrs="145">\r
+        <size>13</size>\r
+      </method>\r
+    </type>\r
+    <type name="Tester+&lt;CoalescingTest_2&gt;c__async1A">\r
+      <method name="System.Nullable`1[System.Int16] &lt;&gt;m__0()" attrs="145">\r
+        <size>17</size>\r
+      </method>\r
+      <method name="Byte &lt;&gt;m__1()" attrs="145">\r
+        <size>9</size>\r
+      </method>\r
+    </type>\r
+    <type name="Tester+&lt;ConditionalTest_1&gt;c__async1B">\r
+      <method name="Int32 &lt;&gt;m__0()" attrs="145">\r
+        <size>9</size>\r
+      </method>\r
+    </type>\r
+    <type name="Tester+&lt;ConditionalTest_2&gt;c__async1C">\r
+      <method name="Int32 &lt;&gt;m__0()" attrs="145">\r
+        <size>9</size>\r
+      </method>\r
+      <method name="Int32 &lt;&gt;m__1()" attrs="145">\r
+        <size>9</size>\r
+      </method>\r
+    </type>\r
+    <type name="Tester+&lt;ConditionalTest_3&gt;c__async1D">\r
+      <method name="Boolean &lt;&gt;m__0()" attrs="145">\r
+        <size>9</size>\r
+      </method>\r
+      <method name="Int32 &lt;&gt;m__1()" attrs="145">\r
+        <size>9</size>\r
+      </method>\r
+    </type>\r
+    <type name="Tester+&lt;ConditionalTest_4&gt;c__async1E">\r
+      <method name="Int32 &lt;&gt;m__0()" attrs="145">\r
+        <size>9</size>\r
+      </method>\r
+    </type>\r
+    <type name="Tester+&lt;DelegateInvoke_4&gt;c__async1F">\r
+      <method name="Int32 &lt;&gt;m__0(Int32)" attrs="145">\r
+        <size>11</size>\r
+      </method>\r
+      <method name="Int32 &lt;&gt;m__1()" attrs="145">\r
+        <size>9</size>\r
+      </method>\r
+    </type>\r
+    <type name="Tester+&lt;FieldTest_1&gt;c__async21">\r
+      <method name="Int32 &lt;&gt;m__0()" attrs="145">\r
+        <size>9</size>\r
+      </method>\r
+      <method name="Int32 &lt;&gt;m__1()" attrs="145">\r
+        <size>9</size>\r
+      </method>\r
+    </type>\r
+    <type name="Tester+&lt;IndexerTest_1&gt;c__async22">\r
+      <method name="Int32 &lt;&gt;m__0()" attrs="145">\r
+        <size>9</size>\r
+      </method>\r
+    </type>\r
+    <type name="Tester+&lt;IndexerTest_2&gt;c__async23">\r
+      <method name="Int32 &lt;&gt;m__0()" attrs="145">\r
+        <size>9</size>\r
+      </method>\r
+      <method name="Int32 &lt;&gt;m__1()" attrs="145">\r
+        <size>9</size>\r
+      </method>\r
+    </type>\r
+    <type name="Tester+&lt;IndexerTest_3&gt;c__async24">\r
+      <method name="Int32 &lt;&gt;m__0()" attrs="145">\r
+        <size>9</size>\r
+      </method>\r
+    </type>\r
+    <type name="Tester+&lt;IndexerTest_4&gt;c__async25">\r
+      <method name="Int32 &lt;&gt;m__0()" attrs="145">\r
+        <size>10</size>\r
+      </method>\r
+    </type>\r
+    <type name="Tester+&lt;IndexerTest_5&gt;c__async26">\r
+      <method name="Int32 &lt;&gt;m__0()" attrs="145">\r
+        <size>10</size>\r
+      </method>\r
+    </type>\r
+    <type name="Tester+&lt;IndexerTest_6&gt;c__async27">\r
+      <method name="Int32 &lt;&gt;m__0()" attrs="145">\r
+        <size>10</size>\r
+      </method>\r
+      <method name="Int32 &lt;&gt;m__1()" attrs="145">\r
+        <size>9</size>\r
+      </method>\r
+      <method name="Int32 &lt;&gt;m__2()" attrs="145">\r
+        <size>10</size>\r
+      </method>\r
+    </type>\r
+    <type name="Tester+&lt;IsTest_1&gt;c__async29">\r
+      <method name="Tester &lt;&gt;m__0()" attrs="145">\r
+        <size>13</size>\r
+      </method>\r
+    </type>\r
+    <type name="Tester+&lt;IsTest_2&gt;c__async2A">\r
+      <method name="System.Nullable`1[System.UInt32] &lt;&gt;m__0()" attrs="145">\r
+        <size>14</size>\r
+      </method>\r
+    </type>\r
+    <type name="Tester+&lt;LogicalUserOperator_1&gt;c__async2B">\r
+      <method name="Base &lt;&gt;m__0()" attrs="145">\r
+        <size>13</size>\r
+      </method>\r
+      <method name="Base &lt;&gt;m__1()" attrs="145">\r
+        <size>13</size>\r
+      </method>\r
+    </type>\r
+    <type name="Tester+&lt;LogicalUserOperator_2&gt;c__async2C">\r
+      <method name="Base &lt;&gt;m__0()" attrs="145">\r
+        <size>13</size>\r
+      </method>\r
+    </type>\r
+    <type name="Tester+&lt;LogicalUserOperator_3&gt;c__async2D">\r
+      <method name="Base &lt;&gt;m__0()" attrs="145">\r
+        <size>13</size>\r
+      </method>\r
+      <method name="Base &lt;&gt;m__1()" attrs="145">\r
+        <size>13</size>\r
+      </method>\r
+    </type>\r
+    <type name="Tester+&lt;NewTest_1&gt;c__async2E">\r
+      <method name="Int32 &lt;&gt;m__0()" attrs="145">\r
+        <size>10</size>\r
+      </method>\r
+    </type>\r
+    <type name="Tester+&lt;NewTest_2&gt;c__async2F">\r
+      <method name="Int32 &lt;&gt;m__0()" attrs="145">\r
+        <size>10</size>\r
+      </method>\r
+      <method name="System.String &lt;&gt;m__1()" attrs="145">\r
+        <size>13</size>\r
+      </method>\r
+    </type>\r
+    <type name="Tester+&lt;NewInitTest_1&gt;c__async30">\r
+      <method name="Int32 &lt;&gt;m__0()" attrs="145">\r
+        <size>10</size>\r
+      </method>\r
+      <method name="Int32 &lt;&gt;m__1()" attrs="145">\r
+        <size>10</size>\r
+      </method>\r
+      <method name="Int32 &lt;&gt;m__2()" attrs="145">\r
+        <size>10</size>\r
+      </method>\r
+      <method name="Int32 &lt;&gt;m__3()" attrs="145">\r
+        <size>10</size>\r
+      </method>\r
+      <method name="Int32 &lt;&gt;m__4()" attrs="145">\r
+        <size>10</size>\r
+      </method>\r
+      <method name="Int32 &lt;&gt;m__5()" attrs="145">\r
+        <size>10</size>\r
+      </method>\r
+    </type>\r
+    <type name="Tester+&lt;NewInitTest_2&gt;c__async31">\r
+      <method name="System.String &lt;&gt;m__0()" attrs="145">\r
+        <size>13</size>\r
+      </method>\r
+      <method name="System.String &lt;&gt;m__1()" attrs="145">\r
+        <size>13</size>\r
+      </method>\r
+      <method name="Int32 &lt;&gt;m__2()" attrs="145">\r
+        <size>10</size>\r
+      </method>\r
+      <method name="Int32 &lt;&gt;m__3()" attrs="145">\r
+        <size>10</size>\r
+      </method>\r
+    </type>\r
+    <type name="Tester+&lt;NewArrayInitTest_1&gt;c__async32">\r
+      <method name="Int32 &lt;&gt;m__0()" attrs="145">\r
+        <size>9</size>\r
+      </method>\r
+    </type>\r
+    <type name="Tester+&lt;NewArrayInitTest_2&gt;c__async33">\r
+      <method name="Int32 &lt;&gt;m__0()" attrs="145">\r
+        <size>9</size>\r
+      </method>\r
+      <method name="Int32 &lt;&gt;m__1()" attrs="145">\r
+        <size>9</size>\r
+      </method>\r
+    </type>\r
+    <type name="Tester+&lt;NewArrayInitTest_3&gt;c__async34">\r
+      <method name="Byte &lt;&gt;m__0()" attrs="145">\r
+        <size>9</size>\r
+      </method>\r
+    </type>\r
+    <type name="Tester+&lt;NewArrayInitTest_4&gt;c__async35">\r
+      <method name="UInt16 &lt;&gt;m__0()" attrs="145">\r
+        <size>9</size>\r
+      </method>\r
+      <method name="UInt16 &lt;&gt;m__1()" attrs="145">\r
+        <size>9</size>\r
+      </method>\r
+    </type>\r
+    <type name="Tester+&lt;NewArrayInitTest_5&gt;c__async36">\r
+      <method name="S &lt;&gt;m__0()" attrs="145">\r
+        <size>25</size>\r
+      </method>\r
+    </type>\r
+    <type name="Tester+&lt;NewArrayInitTest_6&gt;c__async37">\r
+      <method name="Int32 &lt;&gt;m__0()" attrs="145">\r
+        <size>9</size>\r
+      </method>\r
+    </type>\r
+    <type name="Tester+&lt;PropertyTest_1&gt;c__async38">\r
+      <method name="Int32 &lt;&gt;m__0()" attrs="145">\r
+        <size>9</size>\r
+      </method>\r
+    </type>\r
+    <type name="Tester+&lt;PropertyTest_2&gt;c__async39">\r
+      <method name="Int32 &lt;&gt;m__0()" attrs="145">\r
+        <size>9</size>\r
+      </method>\r
+    </type>\r
+    <type name="Tester+&lt;PropertyTest_3&gt;c__async3A">\r
+      <method name="Int32 &lt;&gt;m__0()" attrs="145">\r
+        <size>10</size>\r
+      </method>\r
+      <method name="Int32 &lt;&gt;m__1()" attrs="145">\r
+        <size>9</size>\r
+      </method>\r
+      <method name="Int32 &lt;&gt;m__2()" attrs="145">\r
+        <size>9</size>\r
+      </method>\r
+    </type>\r
+    <type name="Tester+&lt;StringConcatTest_1&gt;c__async3B">\r
+      <method name="System.String &lt;&gt;m__0()" attrs="145">\r
+        <size>13</size>\r
+      </method>\r
+      <method name="System.String &lt;&gt;m__1()" attrs="145">\r
+        <size>13</size>\r
+      </method>\r
+      <method name="System.String &lt;&gt;m__2()" attrs="145">\r
+        <size>9</size>\r
+      </method>\r
+    </type>\r
+    <type name="Tester+&lt;UnaryTest_1&gt;c__async3C">\r
+      <method name="Int32 &lt;&gt;m__0()" attrs="145">\r
+        <size>9</size>\r
+      </method>\r
+    </type>\r
+    <type name="Tester+&lt;UnaryTest_3&gt;c__async3E">\r
+      <method name="Int32 &lt;&gt;m__0()" attrs="145">\r
+        <size>9</size>\r
+      </method>\r
+    </type>\r
+    <type name="Tester+&lt;VariableInitializer_1&gt;c__async3F">\r
+      <method name="Int32 &lt;&gt;m__0()" attrs="145">\r
+        <size>9</size>\r
+      </method>\r
+      <method name="Int32 &lt;&gt;m__1()" attrs="145">\r
+        <size>9</size>\r
+      </method>\r
+    </type>\r
+    <type name="Tester+&lt;ArrayAccessTest_5&gt;c__async4+&lt;ArrayAccessTest_5&gt;c__AnonStorey40">\r
+      <method name="Int32 &lt;&gt;m__0()" attrs="131">\r
+        <size>25</size>\r
       </method>\r
     </type>\r
     <type name="Tester+&lt;BinaryTest_2&gt;c__asyncD+&lt;BinaryTest_2&gt;c__AnonStorey41">\r
-      <method name="Boolean &lt;&gt;m__25()" attrs="131">\r
+      <method name="Boolean &lt;&gt;m__0()" attrs="131">\r
         <size>24</size>\r
       </method>\r
-      <method name="Boolean &lt;&gt;m__26()" attrs="131">\r
+      <method name="Boolean &lt;&gt;m__1()" attrs="131">\r
         <size>24</size>\r
       </method>\r
-      <method name="Boolean &lt;&gt;m__27()" attrs="131">\r
+      <method name="Boolean &lt;&gt;m__2()" attrs="131">\r
         <size>24</size>\r
       </method>\r
-      <method name="Void .ctor()" attrs="6278">\r
-        <size>7</size>\r
-      </method>\r
     </type>\r
     <type name="Tester+&lt;CallTest_5&gt;c__async16+&lt;CallTest_5&gt;c__AnonStorey42">\r
-      <method name="Int32 &lt;&gt;m__38()" attrs="131">\r
+      <method name="Int32 &lt;&gt;m__0()" attrs="131">\r
         <size>25</size>\r
       </method>\r
-      <method name="Void .ctor()" attrs="6278">\r
-        <size>7</size>\r
-      </method>\r
     </type>\r
     <type name="Tester+&lt;EventInvoke_1&gt;c__async20+&lt;EventInvoke_1&gt;c__AnonStorey43">\r
-      <method name="System.Action &lt;&gt;m__47()" attrs="131">\r
+      <method name="System.Action &lt;&gt;m__0()" attrs="131">\r
         <size>23</size>\r
       </method>\r
-      <method name="Void &lt;&gt;m__48()" attrs="131">\r
+      <method name="Void &lt;&gt;m__1()" attrs="131">\r
         <size>9</size>\r
       </method>\r
-      <method name="Void .ctor()" attrs="6278">\r
-        <size>7</size>\r
-      </method>\r
     </type>\r
     <type name="Tester+&lt;IndexerTest_3&gt;c__async24+&lt;IndexerTest_3&gt;c__AnonStorey44">\r
-      <method name="Int32 &lt;&gt;m__4E()" attrs="131">\r
+      <method name="Int32 &lt;&gt;m__0()" attrs="131">\r
         <size>25</size>\r
       </method>\r
-      <method name="Void .ctor()" attrs="6278">\r
-        <size>7</size>\r
-      </method>\r
     </type>\r
     <type name="Tester+&lt;IndexerTest_4&gt;c__async25+&lt;IndexerTest_4&gt;c__AnonStorey45">\r
-      <method name="Int32 &lt;&gt;m__50()" attrs="131">\r
+      <method name="Int32 &lt;&gt;m__0()" attrs="131">\r
         <size>25</size>\r
       </method>\r
-      <method name="Void .ctor()" attrs="6278">\r
-        <size>7</size>\r
-      </method>\r
     </type>\r
     <type name="Tester+&lt;IndexerTest_5&gt;c__async26+&lt;IndexerTest_5&gt;c__AnonStorey46">\r
-      <method name="Int32 &lt;&gt;m__52()" attrs="131">\r
+      <method name="Int32 &lt;&gt;m__0()" attrs="131">\r
         <size>25</size>\r
       </method>\r
-      <method name="Void .ctor()" attrs="6278">\r
-        <size>7</size>\r
-      </method>\r
     </type>\r
     <type name="Tester+&lt;IndexerTest_7&gt;c__async28+&lt;IndexerTest_7&gt;c__AnonStorey47">\r
-      <method name="Int32 &lt;&gt;m__57()" attrs="131">\r
+      <method name="Int32 &lt;&gt;m__0()" attrs="131">\r
         <size>25</size>\r
       </method>\r
-      <method name="Void .ctor()" attrs="6278">\r
-        <size>7</size>\r
-      </method>\r
     </type>\r
     <type name="Tester+&lt;UnaryTest_2&gt;c__async3D+&lt;UnaryTest_2&gt;c__AnonStorey48">\r
-      <method name="System.Nullable`1[System.Int16] &lt;&gt;m__7D()" attrs="131">\r
+      <method name="System.Nullable`1[System.Int16] &lt;&gt;m__0()" attrs="131">\r
         <size>14</size>\r
       </method>\r
-      <method name="Void .ctor()" attrs="6278">\r
-        <size>7</size>\r
-      </method>\r
     </type>\r
   </test>\r
   <test name="test-async-14.cs">\r
       <method name="Void MoveNext()" attrs="486">\r
         <size>222</size>\r
       </method>\r
-      <method name="Int32 &lt;&gt;m__1()" attrs="145">\r
-        <size>9</size>\r
-      </method>\r
     </type>\r
     <type name="C+&lt;Main&gt;c__async1">\r
       <method name="Void MoveNext()" attrs="486">\r
         <size>232</size>\r
       </method>\r
-      <method name="Int32 &lt;&gt;m__2()" attrs="145">\r
-        <size>9</size>\r
-      </method>\r
     </type>\r
     <type name="C+&lt;TestResult&gt;c__async0">\r
       <method name="Void SetStateMachine(IAsyncStateMachine)" attrs="486">\r
         <size>13</size>\r
       </method>\r
     </type>\r
+    <type name="C+&lt;TestResult&gt;c__async0">\r
+      <method name="Int32 &lt;&gt;m__0()" attrs="145">\r
+        <size>9</size>\r
+      </method>\r
+    </type>\r
+    <type name="C+&lt;Main&gt;c__async1">\r
+      <method name="Int32 &lt;&gt;m__0()" attrs="145">\r
+        <size>9</size>\r
+      </method>\r
+    </type>\r
   </test>\r
   <test name="test-async-15.cs">\r
     <type name="S">\r
       <method name="Void SetStateMachine(IAsyncStateMachine)" attrs="486">\r
         <size>13</size>\r
       </method>\r
-      <method name="System.String &lt;&gt;m__4()" attrs="145">\r
-        <size>13</size>\r
-      </method>\r
     </type>\r
     <type name="Tester+&lt;Using_1&gt;c__async1">\r
       <method name="Void MoveNext()" attrs="486">\r
       <method name="Void SetStateMachine(IAsyncStateMachine)" attrs="486">\r
         <size>13</size>\r
       </method>\r
-      <method name="Base &lt;&gt;m__5()" attrs="145">\r
+    </type>\r
+    <type name="Tester+&lt;Foreach_1&gt;c__async2">\r
+      <method name="Void MoveNext()" attrs="486">\r
+        <size>331</size>\r
+      </method>\r
+      <method name="Void SetStateMachine(IAsyncStateMachine)" attrs="486">\r
         <size>13</size>\r
       </method>\r
-      <method name="Tester &lt;&gt;m__6()" attrs="145">\r
+    </type>\r
+    <type name="Tester+&lt;SwitchTest_1&gt;c__async0">\r
+      <method name="System.String &lt;&gt;m__0()" attrs="145">\r
         <size>13</size>\r
       </method>\r
-      <method name="Base &lt;&gt;m__7()" attrs="145">\r
+    </type>\r
+    <type name="Tester+&lt;Using_1&gt;c__async1">\r
+      <method name="Base &lt;&gt;m__0()" attrs="145">\r
         <size>13</size>\r
       </method>\r
-      <method name="Base &lt;&gt;m__8()" attrs="145">\r
+      <method name="Tester &lt;&gt;m__1()" attrs="145">\r
         <size>13</size>\r
       </method>\r
-    </type>\r
-    <type name="Tester+&lt;Foreach_1&gt;c__async2">\r
-      <method name="Void MoveNext()" attrs="486">\r
-        <size>331</size>\r
+      <method name="Base &lt;&gt;m__2()" attrs="145">\r
+        <size>13</size>\r
       </method>\r
-      <method name="Void SetStateMachine(IAsyncStateMachine)" attrs="486">\r
+      <method name="Base &lt;&gt;m__3()" attrs="145">\r
         <size>13</size>\r
       </method>\r
-      <method name="System.Collections.Generic.List`1[System.Int32] &lt;&gt;m__9()" attrs="145">\r
+    </type>\r
+    <type name="Tester+&lt;Foreach_1&gt;c__async2">\r
+      <method name="System.Collections.Generic.List`1[System.Int32] &lt;&gt;m__0()" attrs="145">\r
         <size>36</size>\r
       </method>\r
     </type>\r
       <method name="Void MoveNext()" attrs="486">\r
         <size>207</size>\r
       </method>\r
-      <method name="Void &lt;&gt;m__4()" attrs="145">\r
-        <size>7</size>\r
-      </method>\r
     </type>\r
     <type name="Tester+&lt;TestException_2&gt;c__async1">\r
       <method name="Void MoveNext()" attrs="486">\r
         <size>199</size>\r
       </method>\r
-      <method name="Void &lt;&gt;m__5()" attrs="145">\r
-        <size>7</size>\r
-      </method>\r
     </type>\r
     <type name="Tester+&lt;TestException_3&gt;c__async2">\r
       <method name="Void MoveNext()" attrs="486">\r
         <size>206</size>\r
       </method>\r
-      <method name="System.Threading.Tasks.Task &lt;&gt;m__6()" attrs="145">\r
-        <size>33</size>\r
-      </method>\r
     </type>\r
     <type name="Tester+&lt;TestException_4&gt;c__async3">\r
       <method name="Void MoveNext()" attrs="486">\r
         <size>239</size>\r
       </method>\r
-      <method name="Int32 &lt;&gt;m__8()" attrs="145">\r
-        <size>9</size>\r
-      </method>\r
     </type>\r
     <type name="Tester+&lt;TestException_5&gt;c__async4">\r
       <method name="Void MoveNext()" attrs="486">\r
         <size>289</size>\r
       </method>\r
-      <method name="Void &lt;&gt;m__9()" attrs="145">\r
-        <size>7</size>\r
-      </method>\r
     </type>\r
     <type name="Tester+&lt;TestException_6&gt;c__async5">\r
       <method name="Void MoveNext()" attrs="486">\r
         <size>243</size>\r
       </method>\r
-      <method name="Void &lt;&gt;m__A()" attrs="145">\r
-        <size>7</size>\r
-      </method>\r
     </type>\r
     <type name="Tester+&lt;TestException_1&gt;c__async0">\r
       <method name="Void SetStateMachine(IAsyncStateMachine)" attrs="486">\r
       <method name="Void SetStateMachine(IAsyncStateMachine)" attrs="486">\r
         <size>13</size>\r
       </method>\r
-      <method name="Void &lt;&gt;m__B()" attrs="145">\r
-        <size>7</size>\r
-      </method>\r
     </type>\r
     <type name="Tester+&lt;TestException_3&gt;c__async2+&lt;TestException_3&gt;c__async7">\r
       <method name="Void MoveNext()" attrs="486">\r
       <method name="Void SetStateMachine(IAsyncStateMachine)" attrs="486">\r
         <size>13</size>\r
       </method>\r
-      <method name="Void &lt;&gt;m__7()" attrs="145">\r
+    </type>\r
+    <type name="Tester+&lt;TestException_1&gt;c__async0">\r
+      <method name="Void &lt;&gt;m__0()" attrs="145">\r
+        <size>7</size>\r
+      </method>\r
+    </type>\r
+    <type name="Tester+&lt;TestException_2&gt;c__async1">\r
+      <method name="Void &lt;&gt;m__0()" attrs="145">\r
+        <size>7</size>\r
+      </method>\r
+    </type>\r
+    <type name="Tester+&lt;TestException_3&gt;c__async2">\r
+      <method name="System.Threading.Tasks.Task &lt;&gt;m__0()" attrs="145">\r
+        <size>33</size>\r
+      </method>\r
+    </type>\r
+    <type name="Tester+&lt;TestException_4&gt;c__async3">\r
+      <method name="Int32 &lt;&gt;m__0()" attrs="145">\r
+        <size>9</size>\r
+      </method>\r
+    </type>\r
+    <type name="Tester+&lt;TestException_5&gt;c__async4">\r
+      <method name="Void &lt;&gt;m__0()" attrs="145">\r
+        <size>7</size>\r
+      </method>\r
+    </type>\r
+    <type name="Tester+&lt;TestException_6&gt;c__async5">\r
+      <method name="Void &lt;&gt;m__0()" attrs="145">\r
+        <size>7</size>\r
+      </method>\r
+    </type>\r
+    <type name="Tester+&lt;TestException_7&gt;c__async6">\r
+      <method name="Void &lt;&gt;m__0()" attrs="145">\r
+        <size>7</size>\r
+      </method>\r
+    </type>\r
+    <type name="Tester+&lt;TestException_3&gt;c__async2+&lt;TestException_3&gt;c__async7">\r
+      <method name="Void &lt;&gt;m__0()" attrs="145">\r
         <size>7</size>\r
       </method>\r
     </type>\r
       </method>\r
     </type>\r
     <type name="Tester+&lt;Lambda_2&gt;c__async1+&lt;Lambda_2&gt;c__AnonStorey4">\r
-      <method name="Int32 &lt;&gt;m__1()" attrs="131">\r
-        <size>26</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
     </type>\r
     <type name="Tester+&lt;Lambda_3&gt;c__async2`1+&lt;Lambda_3&gt;c__AnonStorey6`1[T]">\r
-      <method name="Int32 &lt;&gt;m__2()" attrs="131">\r
-        <size>14</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
     </type>\r
+    <type name="Tester+&lt;Lambda_2&gt;c__async1+&lt;Lambda_2&gt;c__AnonStorey4">\r
+      <method name="Int32 &lt;&gt;m__0()" attrs="131">\r
+        <size>26</size>\r
+      </method>\r
+    </type>\r
+    <type name="Tester+&lt;Lambda_3&gt;c__async2`1+&lt;Lambda_3&gt;c__AnonStorey6`1[T]">\r
+      <method name="Int32 &lt;&gt;m__0()" attrs="131">\r
+        <size>14</size>\r
+      </method>\r
+    </type>\r
   </test>\r
   <test name="test-async-19.cs">\r
     <type name="C">\r
       <method name="Void SetStateMachine(IAsyncStateMachine)" attrs="486">\r
         <size>13</size>\r
       </method>\r
-      <method name="Int32 &lt;&gt;m__4()" attrs="145">\r
-        <size>9</size>\r
-      </method>\r
     </type>\r
     <type name="Tester+&lt;AssignCompound_1&gt;c__async1">\r
       <method name="Void MoveNext()" attrs="486">\r
       <method name="Void SetStateMachine(IAsyncStateMachine)" attrs="486">\r
         <size>13</size>\r
       </method>\r
-      <method name="Int32 &lt;&gt;m__5()" attrs="145">\r
-        <size>9</size>\r
-      </method>\r
     </type>\r
     <type name="Tester+&lt;Convert_1&gt;c__async2">\r
       <method name="Void MoveNext()" attrs="486">\r
       <method name="Void SetStateMachine(IAsyncStateMachine)" attrs="486">\r
         <size>13</size>\r
       </method>\r
-      <method name="System.Object &lt;&gt;m__6()" attrs="145">\r
-        <size>13</size>\r
-      </method>\r
     </type>\r
     <type name="Tester+&lt;Invocation_1&gt;c__async3">\r
       <method name="Void MoveNext()" attrs="486">\r
       <method name="Void SetStateMachine(IAsyncStateMachine)" attrs="486">\r
         <size>13</size>\r
       </method>\r
-      <method name="System.Object &lt;&gt;m__7()" attrs="145">\r
+    </type>\r
+    <type name="Tester+&lt;Add_1&gt;c__async0">\r
+      <method name="Int32 &lt;&gt;m__0()" attrs="145">\r
+        <size>9</size>\r
+      </method>\r
+    </type>\r
+    <type name="Tester+&lt;AssignCompound_1&gt;c__async1">\r
+      <method name="Int32 &lt;&gt;m__0()" attrs="145">\r
+        <size>9</size>\r
+      </method>\r
+    </type>\r
+    <type name="Tester+&lt;Convert_1&gt;c__async2">\r
+      <method name="System.Object &lt;&gt;m__0()" attrs="145">\r
+        <size>13</size>\r
+      </method>\r
+    </type>\r
+    <type name="Tester+&lt;Invocation_1&gt;c__async3">\r
+      <method name="System.Object &lt;&gt;m__0()" attrs="145">\r
         <size>13</size>\r
       </method>\r
     </type>\r
       </method>\r
     </type>\r
     <type name="Program+&lt;CompilationTestOnly&gt;c__AnonStorey0">\r
-      <method name="System.Threading.Tasks.Task`1[System.Int32] &lt;&gt;m__1()" attrs="131">\r
-        <size>15</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
+      <method name="System.Threading.Tasks.Task`1[System.Int32] &lt;&gt;m__0()" attrs="131">\r
+        <size>15</size>\r
+      </method>\r
     </type>\r
   </test>\r
   <test name="test-async-26.cs">\r
       </method>\r
     </type>\r
     <type name="C+&lt;Test2&gt;c__Iterator1+&lt;Test2&gt;c__AnonStorey5">\r
-      <method name="System.Threading.Tasks.Task`1[System.String] &lt;&gt;m__1()" attrs="131">\r
-        <size>41</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
         <size>26</size>\r
       </method>\r
     </type>\r
+    <type name="C+&lt;Test2&gt;c__Iterator1+&lt;Test2&gt;c__AnonStorey5">\r
+      <method name="System.Threading.Tasks.Task`1[System.String] &lt;&gt;m__0()" attrs="131">\r
+        <size>41</size>\r
+      </method>\r
+    </type>\r
   </test>\r
   <test name="test-async-31.cs">\r
     <type name="C">\r
       </method>\r
     </type>\r
     <type name="C+&lt;M2&gt;c__async1+&lt;M2&gt;c__AnonStorey4">\r
-      <method name="Void &lt;&gt;m__2()" attrs="131">\r
-        <size>20</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
+      <method name="Void &lt;&gt;m__0()" attrs="131">\r
+        <size>20</size>\r
+      </method>\r
     </type>\r
   </test>\r
   <test name="test-async-32.cs">\r
       <method name="Void SetStateMachine(IAsyncStateMachine)" attrs="486">\r
         <size>13</size>\r
       </method>\r
-      <method name="Void &lt;&gt;m__1()" attrs="145">\r
+      <method name="Void &lt;&gt;m__0()" attrs="145">\r
         <size>2</size>\r
       </method>\r
     </type>\r
       <method name="Void SetStateMachine(IAsyncStateMachine)" attrs="486">\r
         <size>13</size>\r
       </method>\r
-      <method name="System.Threading.Tasks.Task`1[System.Int32] &lt;&gt;m__1()" attrs="145">\r
-        <size>33</size>\r
-      </method>\r
     </type>\r
     <type name="AmbiguousGeneric+&lt;NestedVoidTestSuccess&gt;c__async0+&lt;NestedVoidTestSuccess&gt;c__async4">\r
       <method name="Void MoveNext()" attrs="486">\r
         <size>13</size>\r
       </method>\r
     </type>\r
+    <type name="AmbiguousGeneric+&lt;NestedVoidTestSuccess&gt;c__async0">\r
+      <method name="System.Threading.Tasks.Task`1[System.Int32] &lt;&gt;m__0()" attrs="145">\r
+        <size>33</size>\r
+      </method>\r
+    </type>\r
   </test>\r
   <test name="test-async-42.cs">\r
     <type name="A">\r
       </method>\r
     </type>\r
     <type name="Tests+&lt;RefreshAsync&gt;c__AnonStorey1">\r
-      <method name="Void &lt;&gt;m__1()" attrs="131">\r
-        <size>18</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
+      <method name="Void &lt;&gt;m__0()" attrs="131">\r
+        <size>18</size>\r
+      </method>\r
     </type>\r
   </test>\r
   <test name="test-async-50.cs">\r
       <method name="System.Threading.Tasks.Task LoadPlayers()" attrs="129">\r
         <size>41</size>\r
       </method>\r
-      <method name="System.Action`1[Program+Player] &lt;LoadPlayers&gt;m__1(System.Action`1[Program+Player])" attrs="129">\r
-        <size>20</size>\r
-      </method>\r
-      <method name="Void &lt;LoadPlayers&gt;m__2(Program+Player)" attrs="129">\r
-        <size>13</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>18</size>\r
       </method>\r
         <size>2</size>\r
       </method>\r
     </type>\r
+    <type name="Program">\r
+      <method name="System.Action`1[Program+Player] &lt;LoadPlayers&gt;m__0(System.Action`1[Program+Player])" attrs="129">\r
+        <size>20</size>\r
+      </method>\r
+      <method name="Void &lt;LoadPlayers&gt;m__1(Program+Player)" attrs="129">\r
+        <size>13</size>\r
+      </method>\r
+    </type>\r
+  </test>\r
+  <test name="test-async-52.cs">\r
+    <type name="ActualValueDelegate`1[T]">\r
+      <method name="T Invoke()" attrs="454">\r
+        <size>0</size>\r
+      </method>\r
+      <method name="IAsyncResult BeginInvoke(System.AsyncCallback, System.Object)" attrs="454">\r
+        <size>0</size>\r
+      </method>\r
+      <method name="T EndInvoke(IAsyncResult)" attrs="454">\r
+        <size>0</size>\r
+      </method>\r
+      <method name="Void .ctor(Object, IntPtr)" attrs="6278">\r
+        <size>0</size>\r
+      </method>\r
+    </type>\r
+    <type name="X">\r
+      <method name="Void Main()" attrs="150">\r
+        <size>37</size>\r
+      </method>\r
+      <method name="Boolean Matches[T](ActualValueDelegate`1[T])" attrs="145">\r
+        <size>30</size>\r
+      </method>\r
+      <method name="System.Threading.Tasks.Task Throw()" attrs="145">\r
+        <size>33</size>\r
+      </method>\r
+      <method name="System.Threading.Tasks.Task &lt;Main&gt;m__0()" attrs="145">\r
+        <size>33</size>\r
+      </method>\r
+      <method name="Void .ctor()" attrs="6278">\r
+        <size>7</size>\r
+      </method>\r
+    </type>\r
+    <type name="X+&lt;Throw&gt;c__async0">\r
+      <method name="Void MoveNext()" attrs="486">\r
+        <size>157</size>\r
+      </method>\r
+      <method name="Void SetStateMachine(IAsyncStateMachine)" attrs="486">\r
+        <size>13</size>\r
+      </method>\r
+    </type>\r
+    <type name="X+&lt;Main&gt;c__async3">\r
+      <method name="Void MoveNext()" attrs="486">\r
+        <size>160</size>\r
+      </method>\r
+      <method name="Void SetStateMachine(IAsyncStateMachine)" attrs="486">\r
+        <size>13</size>\r
+      </method>\r
+    </type>\r
   </test>\r
   <test name="test-cls-00.cs">\r
     <type name="CLSCLass_6">\r
       </method>\r
     </type>\r
     <type name="C+&lt;Test_Capturing_1&gt;c__AnonStorey0">\r
-      <method name="Int32 &lt;&gt;m__3()" attrs="131">\r
-        <size>14</size>\r
-      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
+      <method name="Int32 &lt;&gt;m__0()" attrs="131">\r
+        <size>14</size>\r
+      </method>\r
     </type>\r
   </test>\r
   <test name="test-debug-15.cs">\r
       <method name="Void MoveNext()" attrs="486">\r
         <size>1229</size>\r
       </method>\r
-      <method name="Int32 &lt;&gt;m__2()" attrs="145">\r
-        <size>9</size>\r
-      </method>\r
     </type>\r
     <type name="C+&lt;Test_1&gt;c__async0">\r
       <method name="Void SetStateMachine(IAsyncStateMachine)" attrs="486">\r
       <method name="Void SetStateMachine(IAsyncStateMachine)" attrs="486">\r
         <size>13</size>\r
       </method>\r
+      <method name="Int32 &lt;&gt;m__0()" attrs="145">\r
+        <size>9</size>\r
+      </method>\r
     </type>\r
   </test>\r
   <test name="test-debug-20.cs">\r
         <size>7</size>\r
       </method>\r
     </type>\r
-    <type name="X+&lt;Get&gt;c__Iterator2">\r
+    <type name="S+&lt;Get&gt;c__Iterator0">\r
+      <method name="System.Collections.Generic.IEnumerator`1[System.Object] System.Collections.Generic.IEnumerable&lt;object&gt;.GetEnumerator()" attrs="481">\r
+        <size>52</size>\r
+      </method>\r
+    </type>\r
+    <type name="S+&lt;GetS&gt;c__Iterator1">\r
+      <method name="System.Collections.Generic.IEnumerator`1[System.Object] System.Collections.Generic.IEnumerable&lt;object&gt;.GetEnumerator()" attrs="481">\r
+        <size>40</size>\r
+      </method>\r
+    </type>\r
+    <type name="X+&lt;Get&gt;c__Iterator0">\r
       <method name="System.Object System.Collections.Generic.IEnumerator&lt;object&gt;.get_Current()" attrs="2529">\r
         <size>14</size>\r
       </method>\r
       <method name="System.Object System.Collections.IEnumerator.get_Current()" attrs="2529">\r
         <size>14</size>\r
       </method>\r
-      <method name="IEnumerator System.Collections.IEnumerable.GetEnumerator()" attrs="481">\r
-        <size>14</size>\r
-      </method>\r
       <method name="Boolean MoveNext()" attrs="486">\r
         <size>154</size>\r
       </method>\r
       <method name="Void Reset()" attrs="486">\r
         <size>6</size>\r
       </method>\r
+      <method name="IEnumerator System.Collections.IEnumerable.GetEnumerator()" attrs="481">\r
+        <size>14</size>\r
+      </method>\r
+      <method name="System.Collections.Generic.IEnumerator`1[System.Object] System.Collections.Generic.IEnumerable&lt;object&gt;.GetEnumerator()" attrs="481">\r
+        <size>40</size>\r
+      </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
     </type>\r
-    <type name="X+&lt;GetS&gt;c__Iterator3">\r
+    <type name="X+&lt;GetS&gt;c__Iterator1">\r
       <method name="System.Object System.Collections.Generic.IEnumerator&lt;object&gt;.get_Current()" attrs="2529">\r
         <size>14</size>\r
       </method>\r
       <method name="System.Object System.Collections.IEnumerator.get_Current()" attrs="2529">\r
         <size>14</size>\r
       </method>\r
-      <method name="IEnumerator System.Collections.IEnumerable.GetEnumerator()" attrs="481">\r
-        <size>14</size>\r
-      </method>\r
       <method name="Boolean MoveNext()" attrs="486">\r
         <size>159</size>\r
       </method>\r
       <method name="Void Reset()" attrs="486">\r
         <size>6</size>\r
       </method>\r
-      <method name="Void .ctor()" attrs="6278">\r
-        <size>7</size>\r
-      </method>\r
-    </type>\r
-    <type name="S+&lt;Get&gt;c__Iterator0">\r
-      <method name="System.Collections.Generic.IEnumerator`1[System.Object] System.Collections.Generic.IEnumerable&lt;object&gt;.GetEnumerator()" attrs="481">\r
-        <size>52</size>\r
-      </method>\r
-    </type>\r
-    <type name="S+&lt;GetS&gt;c__Iterator1">\r
-      <method name="System.Collections.Generic.IEnumerator`1[System.Object] System.Collections.Generic.IEnumerable&lt;object&gt;.GetEnumerator()" attrs="481">\r
-        <size>40</size>\r
+      <method name="IEnumerator System.Collections.IEnumerable.GetEnumerator()" attrs="481">\r
+        <size>14</size>\r
       </method>\r
-    </type>\r
-    <type name="X+&lt;Get&gt;c__Iterator2">\r
       <method name="System.Collections.Generic.IEnumerator`1[System.Object] System.Collections.Generic.IEnumerable&lt;object&gt;.GetEnumerator()" attrs="481">\r
         <size>40</size>\r
       </method>\r
-    </type>\r
-    <type name="X+&lt;GetS&gt;c__Iterator3">\r
-      <method name="System.Collections.Generic.IEnumerator`1[System.Object] System.Collections.Generic.IEnumerable&lt;object&gt;.GetEnumerator()" attrs="481">\r
-        <size>40</size>\r
+      <method name="Void .ctor()" attrs="6278">\r
+        <size>7</size>\r
       </method>\r
     </type>\r
   </test>\r
index 386a14519f2528e7ca632ad30fc1aa1d713702be..377f94ec09cf2f7542ab9853042c6e8bfd9814b8 100644 (file)
 \r
-Microsoft Visual Studio Solution File, Format Version 10.00\r
-# Visual Studio 2008\r
+Microsoft Visual Studio Solution File, Format Version 11.00\r
+# Visual Studio 2010\r
 Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "mono-api-info", "mono-api-info.csproj", "{6446D5E1-8F4E-4692-8EF3-B1D4CA290ECF}"\r
 EndProject\r
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Mono.Cecil", "..\..\class\Mono.Cecil\Mono.Cecil.csproj", "{D8F63DFF-5230-43E4-9AB2-DA6E721A1FAE}"\r
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Mono.Cecil", "..\..\..\external\cecil\Mono.Cecil.csproj", "{D68133BD-1E63-496E-9EDE-4FBDBF77B486}"\r
+EndProject\r
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "mono-api-html", "mono-api-html\mono-api-html.csproj", "{D25986E2-7A41-4966-A26D-5614BAC7B8A7}"\r
 EndProject\r
 Global\r
        GlobalSection(SolutionConfigurationPlatforms) = preSolution\r
                Debug|Any CPU = Debug|Any CPU\r
                Release|Any CPU = Release|Any CPU\r
+               net_2_0_Debug|Any CPU = net_2_0_Debug|Any CPU\r
+               net_2_0_Release|Any CPU = net_2_0_Release|Any CPU\r
+               net_3_5_Debug|Any CPU = net_3_5_Debug|Any CPU\r
+               net_3_5_Release|Any CPU = net_3_5_Release|Any CPU\r
+               net_4_0_Debug|Any CPU = net_4_0_Debug|Any CPU\r
+               net_4_0_Release|Any CPU = net_4_0_Release|Any CPU\r
+               silverlight_Debug|Any CPU = silverlight_Debug|Any CPU\r
+               silverlight_Release|Any CPU = silverlight_Release|Any CPU\r
+               winphone_Debug|Any CPU = winphone_Debug|Any CPU\r
+               winphone_Release|Any CPU = winphone_Release|Any CPU\r
        EndGlobalSection\r
        GlobalSection(ProjectConfigurationPlatforms) = postSolution\r
                {6446D5E1-8F4E-4692-8EF3-B1D4CA290ECF}.Debug|Any CPU.ActiveCfg = Debug|Any CPU\r
                {6446D5E1-8F4E-4692-8EF3-B1D4CA290ECF}.Debug|Any CPU.Build.0 = Debug|Any CPU\r
+               {6446D5E1-8F4E-4692-8EF3-B1D4CA290ECF}.net_2_0_Debug|Any CPU.ActiveCfg = Debug|Any CPU\r
+               {6446D5E1-8F4E-4692-8EF3-B1D4CA290ECF}.net_2_0_Debug|Any CPU.Build.0 = Debug|Any CPU\r
+               {6446D5E1-8F4E-4692-8EF3-B1D4CA290ECF}.net_2_0_Release|Any CPU.ActiveCfg = Debug|Any CPU\r
+               {6446D5E1-8F4E-4692-8EF3-B1D4CA290ECF}.net_2_0_Release|Any CPU.Build.0 = Debug|Any CPU\r
+               {6446D5E1-8F4E-4692-8EF3-B1D4CA290ECF}.net_3_5_Debug|Any CPU.ActiveCfg = Debug|Any CPU\r
+               {6446D5E1-8F4E-4692-8EF3-B1D4CA290ECF}.net_3_5_Debug|Any CPU.Build.0 = Debug|Any CPU\r
+               {6446D5E1-8F4E-4692-8EF3-B1D4CA290ECF}.net_3_5_Release|Any CPU.ActiveCfg = Debug|Any CPU\r
+               {6446D5E1-8F4E-4692-8EF3-B1D4CA290ECF}.net_3_5_Release|Any CPU.Build.0 = Debug|Any CPU\r
+               {6446D5E1-8F4E-4692-8EF3-B1D4CA290ECF}.net_4_0_Debug|Any CPU.ActiveCfg = Debug|Any CPU\r
+               {6446D5E1-8F4E-4692-8EF3-B1D4CA290ECF}.net_4_0_Debug|Any CPU.Build.0 = Debug|Any CPU\r
+               {6446D5E1-8F4E-4692-8EF3-B1D4CA290ECF}.net_4_0_Release|Any CPU.ActiveCfg = Debug|Any CPU\r
+               {6446D5E1-8F4E-4692-8EF3-B1D4CA290ECF}.net_4_0_Release|Any CPU.Build.0 = Debug|Any CPU\r
                {6446D5E1-8F4E-4692-8EF3-B1D4CA290ECF}.Release|Any CPU.ActiveCfg = Release|Any CPU\r
                {6446D5E1-8F4E-4692-8EF3-B1D4CA290ECF}.Release|Any CPU.Build.0 = Release|Any CPU\r
-               {D8F63DFF-5230-43E4-9AB2-DA6E721A1FAE}.Debug|Any CPU.ActiveCfg = Debug|Any CPU\r
-               {D8F63DFF-5230-43E4-9AB2-DA6E721A1FAE}.Debug|Any CPU.Build.0 = Debug|Any CPU\r
-               {D8F63DFF-5230-43E4-9AB2-DA6E721A1FAE}.Release|Any CPU.ActiveCfg = Release|Any CPU\r
-               {D8F63DFF-5230-43E4-9AB2-DA6E721A1FAE}.Release|Any CPU.Build.0 = Release|Any CPU\r
+               {6446D5E1-8F4E-4692-8EF3-B1D4CA290ECF}.silverlight_Debug|Any CPU.ActiveCfg = Debug|Any CPU\r
+               {6446D5E1-8F4E-4692-8EF3-B1D4CA290ECF}.silverlight_Debug|Any CPU.Build.0 = Debug|Any CPU\r
+               {6446D5E1-8F4E-4692-8EF3-B1D4CA290ECF}.silverlight_Release|Any CPU.ActiveCfg = Debug|Any CPU\r
+               {6446D5E1-8F4E-4692-8EF3-B1D4CA290ECF}.silverlight_Release|Any CPU.Build.0 = Debug|Any CPU\r
+               {6446D5E1-8F4E-4692-8EF3-B1D4CA290ECF}.winphone_Debug|Any CPU.ActiveCfg = Debug|Any CPU\r
+               {6446D5E1-8F4E-4692-8EF3-B1D4CA290ECF}.winphone_Debug|Any CPU.Build.0 = Debug|Any CPU\r
+               {6446D5E1-8F4E-4692-8EF3-B1D4CA290ECF}.winphone_Release|Any CPU.ActiveCfg = Debug|Any CPU\r
+               {6446D5E1-8F4E-4692-8EF3-B1D4CA290ECF}.winphone_Release|Any CPU.Build.0 = Debug|Any CPU\r
+               {D25986E2-7A41-4966-A26D-5614BAC7B8A7}.Debug|Any CPU.ActiveCfg = Debug|Any CPU\r
+               {D25986E2-7A41-4966-A26D-5614BAC7B8A7}.Debug|Any CPU.Build.0 = Debug|Any CPU\r
+               {D25986E2-7A41-4966-A26D-5614BAC7B8A7}.net_2_0_Debug|Any CPU.ActiveCfg = Debug|Any CPU\r
+               {D25986E2-7A41-4966-A26D-5614BAC7B8A7}.net_2_0_Debug|Any CPU.Build.0 = Debug|Any CPU\r
+               {D25986E2-7A41-4966-A26D-5614BAC7B8A7}.net_2_0_Release|Any CPU.ActiveCfg = Debug|Any CPU\r
+               {D25986E2-7A41-4966-A26D-5614BAC7B8A7}.net_2_0_Release|Any CPU.Build.0 = Debug|Any CPU\r
+               {D25986E2-7A41-4966-A26D-5614BAC7B8A7}.net_3_5_Debug|Any CPU.ActiveCfg = Debug|Any CPU\r
+               {D25986E2-7A41-4966-A26D-5614BAC7B8A7}.net_3_5_Debug|Any CPU.Build.0 = Debug|Any CPU\r
+               {D25986E2-7A41-4966-A26D-5614BAC7B8A7}.net_3_5_Release|Any CPU.ActiveCfg = Debug|Any CPU\r
+               {D25986E2-7A41-4966-A26D-5614BAC7B8A7}.net_3_5_Release|Any CPU.Build.0 = Debug|Any CPU\r
+               {D25986E2-7A41-4966-A26D-5614BAC7B8A7}.net_4_0_Debug|Any CPU.ActiveCfg = Debug|Any CPU\r
+               {D25986E2-7A41-4966-A26D-5614BAC7B8A7}.net_4_0_Debug|Any CPU.Build.0 = Debug|Any CPU\r
+               {D25986E2-7A41-4966-A26D-5614BAC7B8A7}.net_4_0_Release|Any CPU.ActiveCfg = Debug|Any CPU\r
+               {D25986E2-7A41-4966-A26D-5614BAC7B8A7}.net_4_0_Release|Any CPU.Build.0 = Debug|Any CPU\r
+               {D25986E2-7A41-4966-A26D-5614BAC7B8A7}.Release|Any CPU.ActiveCfg = Release|Any CPU\r
+               {D25986E2-7A41-4966-A26D-5614BAC7B8A7}.Release|Any CPU.Build.0 = Release|Any CPU\r
+               {D25986E2-7A41-4966-A26D-5614BAC7B8A7}.silverlight_Debug|Any CPU.ActiveCfg = Debug|Any CPU\r
+               {D25986E2-7A41-4966-A26D-5614BAC7B8A7}.silverlight_Debug|Any CPU.Build.0 = Debug|Any CPU\r
+               {D25986E2-7A41-4966-A26D-5614BAC7B8A7}.silverlight_Release|Any CPU.ActiveCfg = Debug|Any CPU\r
+               {D25986E2-7A41-4966-A26D-5614BAC7B8A7}.silverlight_Release|Any CPU.Build.0 = Debug|Any CPU\r
+               {D25986E2-7A41-4966-A26D-5614BAC7B8A7}.winphone_Debug|Any CPU.ActiveCfg = Debug|Any CPU\r
+               {D25986E2-7A41-4966-A26D-5614BAC7B8A7}.winphone_Debug|Any CPU.Build.0 = Debug|Any CPU\r
+               {D25986E2-7A41-4966-A26D-5614BAC7B8A7}.winphone_Release|Any CPU.ActiveCfg = Debug|Any CPU\r
+               {D25986E2-7A41-4966-A26D-5614BAC7B8A7}.winphone_Release|Any CPU.Build.0 = Debug|Any CPU\r
+               {D68133BD-1E63-496E-9EDE-4FBDBF77B486}.Debug|Any CPU.ActiveCfg = net_2_0_Debug|Any CPU\r
+               {D68133BD-1E63-496E-9EDE-4FBDBF77B486}.Debug|Any CPU.Build.0 = net_2_0_Debug|Any CPU\r
+               {D68133BD-1E63-496E-9EDE-4FBDBF77B486}.net_2_0_Debug|Any CPU.ActiveCfg = net_2_0_Debug|Any CPU\r
+               {D68133BD-1E63-496E-9EDE-4FBDBF77B486}.net_2_0_Debug|Any CPU.Build.0 = net_2_0_Debug|Any CPU\r
+               {D68133BD-1E63-496E-9EDE-4FBDBF77B486}.net_2_0_Release|Any CPU.ActiveCfg = net_2_0_Release|Any CPU\r
+               {D68133BD-1E63-496E-9EDE-4FBDBF77B486}.net_2_0_Release|Any CPU.Build.0 = net_2_0_Release|Any CPU\r
+               {D68133BD-1E63-496E-9EDE-4FBDBF77B486}.net_3_5_Debug|Any CPU.ActiveCfg = net_3_5_Debug|Any CPU\r
+               {D68133BD-1E63-496E-9EDE-4FBDBF77B486}.net_3_5_Debug|Any CPU.Build.0 = net_3_5_Debug|Any CPU\r
+               {D68133BD-1E63-496E-9EDE-4FBDBF77B486}.net_3_5_Release|Any CPU.ActiveCfg = net_3_5_Release|Any CPU\r
+               {D68133BD-1E63-496E-9EDE-4FBDBF77B486}.net_3_5_Release|Any CPU.Build.0 = net_3_5_Release|Any CPU\r
+               {D68133BD-1E63-496E-9EDE-4FBDBF77B486}.net_4_0_Debug|Any CPU.ActiveCfg = net_4_0_Debug|Any CPU\r
+               {D68133BD-1E63-496E-9EDE-4FBDBF77B486}.net_4_0_Debug|Any CPU.Build.0 = net_4_0_Debug|Any CPU\r
+               {D68133BD-1E63-496E-9EDE-4FBDBF77B486}.net_4_0_Release|Any CPU.ActiveCfg = net_4_0_Release|Any CPU\r
+               {D68133BD-1E63-496E-9EDE-4FBDBF77B486}.net_4_0_Release|Any CPU.Build.0 = net_4_0_Release|Any CPU\r
+               {D68133BD-1E63-496E-9EDE-4FBDBF77B486}.Release|Any CPU.ActiveCfg = net_2_0_Release|Any CPU\r
+               {D68133BD-1E63-496E-9EDE-4FBDBF77B486}.Release|Any CPU.Build.0 = net_2_0_Release|Any CPU\r
+               {D68133BD-1E63-496E-9EDE-4FBDBF77B486}.silverlight_Debug|Any CPU.ActiveCfg = silverlight_Debug|Any CPU\r
+               {D68133BD-1E63-496E-9EDE-4FBDBF77B486}.silverlight_Debug|Any CPU.Build.0 = silverlight_Debug|Any CPU\r
+               {D68133BD-1E63-496E-9EDE-4FBDBF77B486}.silverlight_Release|Any CPU.ActiveCfg = silverlight_Release|Any CPU\r
+               {D68133BD-1E63-496E-9EDE-4FBDBF77B486}.silverlight_Release|Any CPU.Build.0 = silverlight_Release|Any CPU\r
+               {D68133BD-1E63-496E-9EDE-4FBDBF77B486}.winphone_Debug|Any CPU.ActiveCfg = winphone_Debug|Any CPU\r
+               {D68133BD-1E63-496E-9EDE-4FBDBF77B486}.winphone_Debug|Any CPU.Build.0 = winphone_Debug|Any CPU\r
+               {D68133BD-1E63-496E-9EDE-4FBDBF77B486}.winphone_Release|Any CPU.ActiveCfg = winphone_Release|Any CPU\r
+               {D68133BD-1E63-496E-9EDE-4FBDBF77B486}.winphone_Release|Any CPU.Build.0 = winphone_Release|Any CPU\r
+       EndGlobalSection\r
+       GlobalSection(MonoDevelopProperties) = preSolution\r
+               StartupItem = mono-api-html\mono-api-html.csproj\r
        EndGlobalSection\r
        GlobalSection(SolutionProperties) = preSolution\r
                HideSolutionNode = FALSE\r
diff --git a/mcs/tools/corcompare/mono-api-html/ApiDiff.cs b/mcs/tools/corcompare/mono-api-html/ApiDiff.cs
new file mode 100644 (file)
index 0000000..ecfccea
--- /dev/null
@@ -0,0 +1,101 @@
+//
+// The main differences with mono-api-diff are:
+// * this tool directly produce HTML similar to gdiff.sh used for Xamarin.iOS
+// * this tool reports changes in an "evolutionary" way, not in a breaking way,
+//   i.e. it does not assume the source assembly is right (but simply older)
+// * the diff .xml output was not easy to convert back into the HTML format
+//   that gdiff.sh produced
+// 
+// Authors
+//    Sebastien Pouliot  <sebastien@xamarin.com>
+//
+// Copyright 2013 Xamarin Inc. http://www.xamarin.com
+// 
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+
+using System;
+using System.IO;
+
+namespace Xamarin.ApiDiff {
+
+       public static class State {
+               static TextWriter output;
+
+               public static TextWriter Output { 
+                       get {
+                               if (output == null)
+                                       output = Console.Out;
+                               return output;
+                       }
+                       set { output = value; } 
+               }
+
+               public static string Assembly { get; set; }
+               public static string Namespace { get; set; }
+               public static string Type { get; set; }
+               public static string BaseType { get; set; }
+
+               public static int Indent { get; set; }
+       }
+
+       class Program {
+
+               public static int Main (string[] args)
+               {
+                       if (args.Length < 2) {
+                               Console.WriteLine ("mono-api-html reference.xml assembly.xml [diff.html]");
+                               return 1;
+                       }
+
+                       try {
+                               string input = args [0];
+                               string output = args [1];
+                               var ac = new AssemblyComparer (input, output);
+                               if (args.Length > 2) {
+                                       string diff = String.Empty;
+                                       using (var writer = new StringWriter ()) {
+                                               State.Output = writer;
+                                               ac.Compare ();
+                                               diff = State.Output.ToString ();
+                                       }
+                                       if (diff.Length > 0) {
+                                               using (var file = new StreamWriter (args [2])) {
+                                                       if (ac.SourceAssembly == ac.TargetAssembly) {
+                                                               file.WriteLine ("<h1>{0}.dll</h1>", ac.SourceAssembly);
+                                                       } else {
+                                                               file.WriteLine ("<h1>{0}.dll vs {1}.dll</h1>", ac.SourceAssembly, ac.TargetAssembly);
+                                                       }
+                                                       file.Write (diff);
+                                               }
+                                       }
+                               } else {
+                                       State.Output = Console.Out;
+                                       ac.Compare ();
+                               }
+                       }
+                       catch (Exception e) {
+                               Console.WriteLine (e);
+                               return 1;
+                       }
+                       return 0;
+               }
+       }
+}
\ No newline at end of file
diff --git a/mcs/tools/corcompare/mono-api-html/AssemblyComparer.cs b/mcs/tools/corcompare/mono-api-html/AssemblyComparer.cs
new file mode 100644 (file)
index 0000000..e083c27
--- /dev/null
@@ -0,0 +1,78 @@
+// 
+// Authors
+//    Sebastien Pouliot  <sebastien@xamarin.com>
+//
+// Copyright 2013 Xamarin Inc. http://www.xamarin.com
+// 
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+
+using System;
+using System.Xml.Linq;
+
+namespace Xamarin.ApiDiff {
+
+       public class AssemblyComparer : Comparer {
+
+               XDocument source;
+               XDocument target;
+               NamespaceComparer comparer;
+
+               public AssemblyComparer (string sourceFile, string targetFile)
+               {
+                       source = XDocument.Load (sourceFile);
+                       target = XDocument.Load (targetFile);
+                       comparer =  new NamespaceComparer ();
+               }
+
+               public string SourceAssembly { get; private set; }
+               public string TargetAssembly { get; private set; }
+
+               public void Compare ()
+               {
+                       Compare (source.Element ("assemblies").Elements ("assembly"), 
+                                target.Element ("assemblies").Elements ("assembly"));
+               }
+
+               public override void SetContext (XElement current)
+               {
+                       State.Assembly = current.GetAttribute ("name");
+               }
+
+               public override void Added (XElement target)
+               {
+                       // one assembly per xml file
+               }
+
+               public override void Modified (XElement source, XElement target)
+               {
+                       SourceAssembly = source.GetAttribute ("name");
+                       TargetAssembly = target.GetAttribute ("name");
+                       // TODO: version
+                       // ? custom attributes ?
+                       comparer.Compare (source, target);
+               }
+
+               public override void Removed (XElement source)
+               {
+                       // one assembly per xml file
+               }
+       }
+}
\ No newline at end of file
diff --git a/mcs/tools/corcompare/mono-api-html/ClassComparer.cs b/mcs/tools/corcompare/mono-api-html/ClassComparer.cs
new file mode 100644 (file)
index 0000000..bdf22fe
--- /dev/null
@@ -0,0 +1,245 @@
+// 
+// Authors
+//    Sebastien Pouliot  <sebastien@xamarin.com>
+//
+// Copyright 2013 Xamarin Inc. http://www.xamarin.com
+// 
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+
+using System;
+using System.Collections.Generic;
+using System.IO;
+using System.Xml.Linq;
+
+namespace Xamarin.ApiDiff {
+
+       public class ClassComparer : Comparer {
+
+               InterfaceComparer icomparer;
+               ConstructorComparer ccomparer;
+               FieldComparer fcomparer;
+               PropertyComparer pcomparer;
+               EventComparer ecomparer;
+               MethodComparer mcomparer;
+               ClassComparer kcomparer;
+
+               public ClassComparer ()
+               {
+                       icomparer = new InterfaceComparer ();
+                       ccomparer = new ConstructorComparer ();
+                       fcomparer = new FieldComparer ();
+                       pcomparer = new PropertyComparer ();
+                       ecomparer = new EventComparer ();
+                       mcomparer = new MethodComparer ();
+               }
+
+               public override void SetContext (XElement current)
+               {
+                       State.Type = current.GetAttribute ("name");
+                       State.BaseType = current.GetAttribute ("base");
+               }
+
+               public void Compare (XElement source, XElement target)
+               {
+                       var s = source.Element ("classes");
+                       var t = target.Element ("classes");
+                       if (XNode.DeepEquals (s, t))
+                               return;
+                       Compare (s.Elements ("class"), t.Elements ("class"));
+               }
+
+               public override void Added (XElement target)
+               {
+                       Output.WriteLine ("<h3>New Type {0}.{1}</h3>", State.Namespace, target.Attribute ("name").Value);
+                       Output.WriteLine ("<pre>");
+                       State.Indent = 0;
+                       AddedInner (target);
+                       Output.WriteLine ("</pre>");
+               }
+
+               public void AddedInner (XElement target)
+               {
+                       SetContext (target);
+                       if (target.IsTrue ("serializable"))
+                               Indent ().WriteLine ("[Serializable]");
+
+                       var type = target.Attribute ("type").Value;
+
+                       if (type == "enum") {
+                               // check if [Flags] is present
+                               var cattrs = target.Element ("attributes");
+                               if (cattrs != null) {
+                                       foreach (var ca in cattrs.Elements ("attribute")) {
+                                               if (ca.GetAttribute ("name") == "System.FlagsAttribute") {
+                                                       Indent ().WriteLine ("[Flags]");
+                                                       break;
+                                               }
+                                       }
+                               }
+                       }
+
+                       Indent ().Write ("public");
+
+                       if (type != "enum") {
+                               bool seal = target.IsTrue ("sealed");
+                               bool abst = target.IsTrue ("abstract");
+                               if (seal && abst)
+                                       Output.Write (" static");
+                               else if (seal && type != "struct")
+                                       Output.Write (" sealed");
+                               else if (abst && type != "interface")
+                                       Output.Write (" abstract");
+                       }
+
+                       Output.Write (' ');
+                       Output.Write (type);
+                       Output.Write (' ');
+                       Output.Write (target.GetAttribute ("name"));
+
+                       var baseclass = target.GetAttribute ("base");
+                       if ((type != "enum") && (type != "struct")) {
+                               if (baseclass != null) {
+                                       if (baseclass == "System.Object") {
+                                               // while true we do not need to be reminded every time...
+                                               baseclass = null;
+                                       } else {
+                                               Output.Write (" : ");
+                                               Output.Write (baseclass);
+                                       }
+                               }
+                       }
+
+                       // interfaces on enums are "standard" not user provided - so we do not want to show them
+                       if (type != "enum") {
+                               var i = target.Element ("interfaces");
+                               if (i != null) {
+                                       var interfaces = new List<string> ();
+                                       foreach (var iface in i.Elements ("interface"))
+                                               interfaces.Add (icomparer.GetDescription (iface));
+                                       Output.Write ((baseclass == null) ? " : " : ", ");
+                                       Output.Write (String.Join (", ", interfaces));
+                               }
+                       }
+
+                       Output.WriteLine (" {");
+
+                       var t = target.Element ("constructors");
+                       if (t != null) {
+                               Indent ().WriteLine ("\t// constructors");
+                               foreach (var ctor in t.Elements ("constructor"))
+                                       ccomparer.Added (ctor);
+                       }
+
+                       t = target.Element ("fields");
+                       if (t != null) {
+                               if (type != "enum")
+                                       Indent ().WriteLine ("\t// fields");
+                               else
+                                       SetContext (target);
+                               foreach (var field in t.Elements ("field"))
+                                       fcomparer.Added (field);
+                       }
+
+                       t = target.Element ("properties");
+                       if (t != null) {
+                               Indent ().WriteLine ("\t// properties");
+                               foreach (var property in t.Elements ("property"))
+                                       pcomparer.Added (property);
+                       }
+
+                       t = target.Element ("events");
+                       if (t != null) {
+                               Indent ().WriteLine ("\t// events");
+                               foreach (var evnt in t.Elements ("event"))
+                                       ecomparer.Added (evnt);
+                       }
+
+                       t = target.Element ("methods");
+                       if (t != null) {
+                               Indent ().WriteLine ("\t// methods");
+                               foreach (var method in t.Elements ("method"))
+                                       mcomparer.Added (method);
+                       }
+
+                       t = target.Element ("classes");
+                       if (t != null) {
+                               Output.WriteLine ();
+                               Indent ().WriteLine ("\t// inner types");
+                               kcomparer = new NestedClassComparer ();
+                               State.Indent++;
+                               foreach (var inner in t.Elements ("class"))
+                                       kcomparer.AddedInner (inner);
+                               State.Indent--;
+                       }
+                       Indent ().WriteLine ("}");
+               }
+
+               public override void Modified (XElement source, XElement target)
+               {
+                       // hack - there could be changes that we're not monitoring (e.g. attributes properties)
+                       var output = Output;
+                       State.Output = new StringWriter ();
+
+                       ccomparer.Compare (source, target);
+                       icomparer.Compare (source, target);
+                       fcomparer.Compare (source, target);
+                       pcomparer.Compare (source, target);
+                       ecomparer.Compare (source, target);
+                       mcomparer.Compare (source, target);
+
+                       var si = source.Element ("classes");
+                       if (si != null) {
+                               var ti = target.Element ("classes");
+                               kcomparer = new NestedClassComparer ();
+                               kcomparer.Compare (si.Elements ("class"), ti == null ? null : ti.Elements ("class"));
+                       }
+
+                       var s = (Output as StringWriter).ToString ();
+                       State.Output = output;
+                       if (s.Length > 0) {
+                               Output.WriteLine ("<h3>Type Changed: {0}.{1}</h3>", State.Namespace, GetTypeName (target));
+                               Output.WriteLine (s);
+                       }
+               }
+
+               public override void Removed (XElement source)
+               {
+                       Output.WriteLine ("<h3>Removed Type {0}.{1}", State.Namespace, GetTypeName (source));
+               }
+
+               public virtual string GetTypeName (XElement type)
+               {
+                       return type.GetAttribute ("name");
+               }
+       }
+
+       public class NestedClassComparer : ClassComparer {
+
+               public override void SetContext (XElement current)
+               {
+               }
+
+               public override string GetTypeName (XElement type)
+               {
+                       return State.Type + "." + base.GetTypeName (type);
+               }
+       }
+}
\ No newline at end of file
diff --git a/mcs/tools/corcompare/mono-api-html/Comparer.cs b/mcs/tools/corcompare/mono-api-html/Comparer.cs
new file mode 100644 (file)
index 0000000..7869637
--- /dev/null
@@ -0,0 +1,96 @@
+// 
+// Authors
+//    Sebastien Pouliot  <sebastien@xamarin.com>
+//
+// Copyright 2013 Xamarin Inc. http://www.xamarin.com
+// 
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+
+using System;
+using System.Collections.Generic;
+using System.IO;
+using System.Linq;
+using System.Xml.Linq;
+
+namespace Xamarin.ApiDiff {
+
+       public abstract class Comparer {
+
+               protected List<XElement> removed = new List<XElement> ();
+
+               public TextWriter Output {
+                       get { return State.Output; }
+               }
+
+               protected TextWriter Indent ()
+               {
+                       for (int i = 0; i < State.Indent; i++)
+                               State.Output.Write ("\t");
+                       return State.Output;
+               }
+
+               public abstract void Added (XElement target);
+               public abstract void Modified (XElement source, XElement target);
+               public abstract void Removed (XElement source);
+
+               public virtual bool Equals (XElement source, XElement target)
+               {
+                       return XNode.DeepEquals (source, target);
+               }
+
+               public abstract void SetContext (XElement current);
+
+               public virtual void Compare (IEnumerable<XElement> source, IEnumerable<XElement> target)
+               {
+                       removed.Clear ();
+
+                       foreach (var s in source) {
+                               SetContext (s);
+                               string sn = s.GetAttribute ("name");
+                               var t = target == null ? null : target.SingleOrDefault (x => x.GetAttribute ("name") == sn);
+                               if (t == null) {
+                                       // not in target, it was removed
+                                       removed.Add (s);
+                               } else {
+                                       t.Remove ();
+                                       // possibly modified
+                                       if (Equals (s, t))
+                                               continue;
+
+                                       // still in target so will be part of Added
+                                       Modified (s, t);
+                               }
+                       }
+                       // delayed, that way we show "Modified", "Added" and then "Removed"
+                       foreach (var item in removed) {
+                               SetContext (item);
+                               Removed (item);
+                       }
+                       // remaining == newly added in target
+                       if (target != null) {
+                               foreach (var item in target) {
+                                       SetContext (item);
+                                       Added (item);
+                               }
+                       }
+               }
+       }
+}
\ No newline at end of file
diff --git a/mcs/tools/corcompare/mono-api-html/ConstructorComparer.cs b/mcs/tools/corcompare/mono-api-html/ConstructorComparer.cs
new file mode 100644 (file)
index 0000000..93c4dbd
--- /dev/null
@@ -0,0 +1,114 @@
+// 
+// Authors
+//    Sebastien Pouliot  <sebastien@xamarin.com>
+//
+// Copyright 2013 Xamarin Inc. http://www.xamarin.com
+// 
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+
+using System;
+using System.Collections.Generic;
+using System.Reflection;
+using System.Text;
+using System.Xml.Linq;
+
+namespace Xamarin.ApiDiff {
+
+       public class ConstructorComparer : MemberComparer {
+
+               public override string GroupName {
+                       get { return "constructors"; }
+               }
+
+               public override string ElementName {
+                       get { return "constructor"; }
+               }
+
+               public override bool Find (XElement e)
+               {
+                       return (e.Attribute ("name").Value == Source.Attribute ("name").Value);
+               }
+
+               public override string GetDescription (XElement e)
+               {
+                       StringBuilder sb = GetObsoleteMessage (e);
+                       bool obsolete = sb.Length > 0;
+
+                       var attribs = e.Attribute ("attrib");
+                       if (attribs != null) {
+                               var attr = (MethodAttributes) Int32.Parse (attribs.Value);
+                               if ((attr & MethodAttributes.Public) != MethodAttributes.Public) {
+                                       sb.Append ("protected ");
+                               } else {
+                                       sb.Append ("public ");
+                               }
+
+                               if ((attr & MethodAttributes.Static) != 0) {
+                                       sb.Append ("static ");
+                               } else if ((attr & MethodAttributes.Virtual) != 0) {
+                                       if ((attr & MethodAttributes.VtableLayoutMask) == 0)
+                                               sb.Append ("override ");
+                                       else
+                                               sb.Append ("virtual ");
+                               }
+                       }
+
+                       string name = e.GetAttribute ("name");
+
+                       var r = e.GetTypeName ("returntype");
+                       if (r != null) {
+                               // ctor dont' have a return type
+                               sb.Append (r).Append (' ');
+                       } else {
+                               // show the constructor as it would be defined in C#
+                               name = name.Replace (".ctor", State.Type);
+                       }
+
+                       // the XML file `name` does not contain parameter names, so we must process them ourselves
+                       // which gives us the opportunity to simplify type names
+                       sb.Append (name.Substring (0, name.IndexOf ('(')));
+
+                       var genericp = e.Element ("generic-parameters");
+                       if (genericp != null) {
+                               var list = new List<string> ();
+                               foreach (var p in genericp.Elements ("generic-parameter")) {
+                                       list.Add (p.GetTypeName ("name"));
+                               }
+                               sb.Append ("&lt;").Append (String.Join (", ", list)).Append ("&gt;");
+                       }
+
+                       sb.Append (" (");
+                       var parameters = e.Element ("parameters");
+                       if (parameters != null) {
+                               var list = new List<string> ();
+                               foreach (var p in parameters.Elements ("parameter")) {
+                                       list.Add (p.GetTypeName ("type") + " " + p.GetAttribute ("name"));
+                               }
+                               sb.Append (String.Join (", ", list));
+                       }
+                       sb.Append (");");
+
+                       if (obsolete)
+                               sb.AppendLine (); // more readable output
+                       return sb.ToString ();
+               }
+       }
+}
\ No newline at end of file
diff --git a/mcs/tools/corcompare/mono-api-html/EventComparer.cs b/mcs/tools/corcompare/mono-api-html/EventComparer.cs
new file mode 100644 (file)
index 0000000..c7d1e8b
--- /dev/null
@@ -0,0 +1,53 @@
+// 
+// Authors
+//    Sebastien Pouliot  <sebastien@xamarin.com>
+//
+// Copyright 2013 Xamarin Inc. http://www.xamarin.com
+// 
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+
+using System;
+using System.Text;
+using System.Xml.Linq;
+
+namespace Xamarin.ApiDiff {
+
+       public class EventComparer : MemberComparer {
+
+               public override string GroupName {
+                       get { return "events"; }
+               }
+
+               public override string ElementName {
+                       get { return "event"; }
+               }
+
+               public override string GetDescription (XElement e)
+               {
+                       StringBuilder sb = GetObsoleteMessage (e);
+                       // TODO: attribs
+                       sb.Append ("public event ");
+                       sb.Append (e.GetTypeName ("eventtype")).Append (' ');
+                       sb.Append (e.GetAttribute ("name")).Append (';');
+                       return sb.ToString ();
+               }
+       }
+}
\ No newline at end of file
diff --git a/mcs/tools/corcompare/mono-api-html/FieldComparer.cs b/mcs/tools/corcompare/mono-api-html/FieldComparer.cs
new file mode 100644 (file)
index 0000000..54942b6
--- /dev/null
@@ -0,0 +1,100 @@
+// 
+// Authors
+//    Sebastien Pouliot  <sebastien@xamarin.com>
+//
+// Copyright 2013 Xamarin Inc. http://www.xamarin.com
+// 
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+
+using System;
+using System.Reflection;
+using System.Text;
+using System.Xml.Linq;
+
+namespace Xamarin.ApiDiff {
+
+       public class FieldComparer : MemberComparer {
+
+               public override string GroupName {
+                       get { return "fields"; }
+               }
+
+               public override string ElementName {
+                       get { return "field"; }
+               }
+
+               public override string GetDescription (XElement e)
+               {
+                       var sb = GetObsoleteMessage (e);
+                       bool obsolete = sb.Length > 0;
+
+                       string name = e.GetAttribute ("name");
+                       string value = e.GetAttribute ("value");
+
+                       if (State.BaseType == "System.Enum") {
+                               sb.Append (name).Append (" = ").Append (value).Append (',');
+                       } else {
+                               var attribs = e.Attribute ("attrib");
+                               if (attribs != null) {
+                                       var attr = (FieldAttributes)Int32.Parse (attribs.Value);
+                                       if ((attr & FieldAttributes.Public) != FieldAttributes.Public) {
+                                               sb.Append ("protected ");
+                                       } else {
+                                               sb.Append ("public ");
+                                       }
+
+                                       if ((attr & FieldAttributes.Static) != 0)
+                                               sb.Append ("static ");
+
+                                       if ((attr & FieldAttributes.Literal) != 0)
+                                               sb.Append ("const ");
+                               }
+
+                               string ftype = e.GetTypeName ("fieldtype");
+                               sb.Append (ftype).Append (' ');
+                               sb.Append (name);
+                               if (ftype == "string")
+                                       sb.Append (" = \"").Append (e.Attribute ("value").Value).Append ('"');
+                               sb.Append (';');
+                       }
+
+                       if (obsolete)
+                               sb.AppendLine (); // more readable output
+                       return sb.ToString ();
+               }
+
+               public override void BeforeAdding ()
+               {
+                       if (State.BaseType == "System.Enum")
+                               Output.WriteLine ("<p>Added values:</p><pre>");
+                       else
+                               base.BeforeAdding ();
+               }
+
+               public override void BeforeRemoving ()
+               {
+                       if (State.BaseType == "System.Enum")
+                               Output.WriteLine ("<p>Removed values:</p><pre>");
+                       else
+                               base.BeforeRemoving ();
+               }
+       }
+}
\ No newline at end of file
diff --git a/mcs/tools/corcompare/mono-api-html/Helpers.cs b/mcs/tools/corcompare/mono-api-html/Helpers.cs
new file mode 100644 (file)
index 0000000..098b29b
--- /dev/null
@@ -0,0 +1,130 @@
+// 
+// Authors
+//    Sebastien Pouliot  <sebastien@xamarin.com>
+//
+// Copyright 2013 Xamarin Inc. http://www.xamarin.com
+// 
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+
+using System;
+using System.Xml.Linq;
+
+namespace Xamarin.ApiDiff {
+
+       public static class Helper {
+
+               public static bool IsTrue (this XElement self, string name)
+               {
+                       return (self.GetAttribute (name) == "true");
+               }
+
+               public static string GetAttribute (this XElement self, string name)
+               {
+                       var n = self.Attribute (name);
+                       if (n == null)
+                               return null;
+                       return n.Value;
+               }
+
+               // null == no obsolete, String.Empty == no description
+               public static string GetObsoleteMessage (this XElement self)
+               {
+                       var cattrs = self.Element ("attributes");
+                       if (cattrs == null)
+                               return null;
+
+                       foreach (var ca in cattrs.Elements ("attribute")) {
+                               if (ca.GetAttribute ("name") != "System.ObsoleteAttribute")
+                                       continue;
+                               var props = ca.Element ("properties");
+                               if (props == null)
+                                       return String.Empty; // no description
+                               foreach (var p in props.Elements ("property")) {
+                                       if (p.GetAttribute ("name") != "Message")
+                                               continue;
+                                       return p.GetAttribute ("value");
+                               }
+                       }
+                       return null;
+               }
+
+               // make it beautiful (.NET -> C#)
+               public static string GetTypeName (this XElement self, string name)
+               {
+                       string type = self.GetAttribute (name);
+                       if (type == null)
+                               return null;
+
+                       // inner types
+                       return GetTypeName (type.Replace ('+', '.'));
+               }
+
+               static string GetTypeName (string type)
+               {
+                       if (type.StartsWith ("System.Nullable`1[", StringComparison.Ordinal))
+                               return type.Substring (18, type.Length - 19) + "?";
+
+                       int pos = type.IndexOf ('`');
+                       if (pos >= 0) {
+                               int end = type.LastIndexOf (']');
+                               string subtype = type.Substring (pos + 3, end - pos - 3);
+                               return type.Substring (0, pos) + "&lt;" + GetTypeName (subtype) + "&gt;";
+                       }
+
+                       switch (type) {
+                       case "System.String":
+                               return "string";
+                       case "System.Int32":
+                               return "int";
+                       case "System.UInt32":
+                               return "uint";
+                       case "System.Int64":
+                               return "long";
+                       case "System.UInt64":
+                               return "ulong";
+                       case "System.Void":
+                               return "void";
+                       case "System.Boolean":
+                               return "bool";
+                       case "System.Object":
+                               return "object";
+                       case "System.Single":
+                               return "float";
+                       case "System.Double":
+                               return "double";
+                       case "System.Byte":
+                               return "byte";
+                       case "System.SByte":
+                               return "sbyte";
+                       case "System.Int16":
+                               return "short";
+                       case "System.UInt16":
+                               return "ushort";
+                       case "System.Char":
+                               return "char";
+                       default:
+                               if (type.StartsWith (State.Namespace, StringComparison.Ordinal))
+                                       type = type.Substring (State.Namespace.Length + 1);
+                               return type;
+                       }
+               }
+       }
+}
\ No newline at end of file
diff --git a/mcs/tools/corcompare/mono-api-html/InterfaceComparer.cs b/mcs/tools/corcompare/mono-api-html/InterfaceComparer.cs
new file mode 100644 (file)
index 0000000..df52f16
--- /dev/null
@@ -0,0 +1,47 @@
+// 
+// Authors
+//    Sebastien Pouliot  <sebastien@xamarin.com>
+//
+// Copyright 2013 Xamarin Inc. http://www.xamarin.com
+// 
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+
+using System;
+using System.Xml.Linq;
+
+namespace Xamarin.ApiDiff {
+
+       public class InterfaceComparer : MemberComparer {
+
+               public override string GroupName {
+                       get { return "interfaces"; }
+               }
+
+               public override string ElementName {
+                       get { return "interface"; }
+               }
+
+               public override string GetDescription (XElement e)
+               {
+                       return e.GetTypeName ("name");
+               }
+       }
+}
\ No newline at end of file
diff --git a/mcs/tools/corcompare/mono-api-html/MemberComparer.cs b/mcs/tools/corcompare/mono-api-html/MemberComparer.cs
new file mode 100644 (file)
index 0000000..8dcdff5
--- /dev/null
@@ -0,0 +1,178 @@
+// 
+// Authors
+//    Sebastien Pouliot  <sebastien@xamarin.com>
+//
+// Copyright 2013 Xamarin Inc. http://www.xamarin.com
+// 
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Xml.Linq;
+
+namespace Xamarin.ApiDiff {
+
+       public abstract class MemberComparer : Comparer {
+
+               public abstract string GroupName { get; }
+               public abstract string ElementName { get; }
+
+               public void Compare (XElement source, XElement target)
+               {
+                       var s = source.Element (GroupName);
+                       var t = target.Element (GroupName);
+                       if (XNode.DeepEquals (s, t))
+                               return;
+
+                       if (s == null) {
+                               BeforeAdding ();
+                               foreach (var item in t.Elements (ElementName))
+                                       Added (item);
+                               AfterAdding ();
+                       } else if (t == null) {
+                               BeforeRemoving ();
+                               foreach (var item in s.Elements (ElementName))
+                                       Removed (item);
+                               AfterRemoving ();
+                       } else {
+                               Compare (s.Elements (ElementName), t.Elements (ElementName));
+                       }
+               }
+
+               public override void SetContext (XElement current)
+               {
+               }
+
+               public XElement Source { get; set; }
+
+               public virtual bool Find (XElement e)
+               {
+                       return e.GetAttribute ("name") == Source.GetAttribute ("name");
+               }
+
+               public override void Compare (IEnumerable<XElement> source, IEnumerable<XElement> target)
+               {
+                       removed.Clear ();
+
+                       foreach (var s in source) {
+                               SetContext (s);
+                               Source = s;
+                               var t = target.SingleOrDefault (Find);
+                               if (t == null) {
+                                       // not in target, it was removed
+                                       removed.Add (s);
+                               } else {
+                                       // possibly modified
+                                       if (Equals (s, t)) {
+                                               t.Remove ();
+                                               continue;
+                                       }
+
+                                       // still in target so will be part of Added
+                                       removed.Add (s);
+                                       Modified (s, t);
+                               }
+                       }
+                       // delayed, that way we show "Modified", "Added" and then "Removed"
+                       bool r = false;
+                       foreach (var item in removed) {
+                               SetContext (item);
+                               if (!r) {
+                                       BeforeRemoving ();
+                                       r = true;
+                               }
+                               Removed (item);
+                       }
+                       if (r)
+                               AfterRemoving ();
+                       // remaining == newly added in target
+                       bool a = false;
+                       foreach (var item in target) {
+                               SetContext (item);
+                               if (!a) {
+                                       BeforeAdding ();
+                                       a = true;
+                               }
+                               Added (item);
+                       }
+                       if (a)
+                               AfterAdding ();
+               }
+
+               public abstract string GetDescription (XElement e);
+
+               protected StringBuilder GetObsoleteMessage (XElement e)
+               {
+                       var sb = new StringBuilder ();
+                       string o = e.GetObsoleteMessage ();
+                       if (o != null) {
+                               sb.Append ("[Obsolete (\"").Append (o).AppendLine ("\")]");
+                               for (int i = 0; i < State.Indent + 1; i++)
+                                       sb.Append ('\t');
+                       }
+                       return sb;
+               }
+
+               public override bool Equals (XElement source, XElement target)
+               {
+                       if (base.Equals (source, target))
+                               return true;
+
+                       return GetDescription (source) == GetDescription (target);
+               }
+
+               public virtual void BeforeAdding ()
+               {
+                       Output.WriteLine ("<p>Added {0}:</p><pre>", GroupName);
+               }
+
+               public override void Added (XElement target)
+               {
+                       Indent ().WriteLine ("\t{0}", GetDescription (target));
+               }
+
+               public virtual void AfterAdding ()
+               {
+                       Output.WriteLine ("</pre>");
+               }
+
+               public override void Modified (XElement source, XElement target)
+               {
+               }
+
+               public virtual void BeforeRemoving ()
+               {
+                       Output.WriteLine ("<p>Removed {0}:</p><pre>", GroupName);
+               }
+
+               public override void Removed (XElement source)
+               {
+                       Indent ().WriteLine ("\t{0}", GetDescription (source));
+               }
+
+               public virtual void AfterRemoving ()
+               {
+                       Output.WriteLine ("</pre>");
+               }
+       }
+}
\ No newline at end of file
diff --git a/mcs/tools/corcompare/mono-api-html/MethodComparer.cs b/mcs/tools/corcompare/mono-api-html/MethodComparer.cs
new file mode 100644 (file)
index 0000000..fb28c40
--- /dev/null
@@ -0,0 +1,49 @@
+// 
+// Authors
+//    Sebastien Pouliot  <sebastien@xamarin.com>
+//
+// Copyright 2013 Xamarin Inc. http://www.xamarin.com
+// 
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+
+using System;
+using System.Xml.Linq;
+
+namespace Xamarin.ApiDiff {
+
+       public class MethodComparer : ConstructorComparer {
+
+               public override string GroupName {
+                       get { return "methods"; }
+               }
+
+               public override string ElementName {
+                       get { return "method"; }
+               }
+
+               // operators have identical names but vary by return types
+               public override bool Find (XElement e)
+               {
+                       return (e.GetAttribute ("name") == Source.GetAttribute ("name")) &&
+                               (e.GetAttribute ("returntype") == Source.GetAttribute ("returntype"));
+               }
+       }
+}
\ No newline at end of file
diff --git a/mcs/tools/corcompare/mono-api-html/NamespaceComparer.cs b/mcs/tools/corcompare/mono-api-html/NamespaceComparer.cs
new file mode 100644 (file)
index 0000000..7239385
--- /dev/null
@@ -0,0 +1,90 @@
+// 
+// Authors
+//    Sebastien Pouliot  <sebastien@xamarin.com>
+//
+// Copyright 2013 Xamarin Inc. http://www.xamarin.com
+// 
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+
+using System;
+using System.IO;
+using System.Xml.Linq;
+
+namespace Xamarin.ApiDiff {
+
+       public class NamespaceComparer : Comparer {
+
+               ClassComparer comparer;
+
+               public NamespaceComparer ()
+               {
+                       comparer =  new ClassComparer ();
+               }
+
+               public void Compare (XElement source, XElement target)
+               {
+                       var s = source.Element ("namespaces");
+                       var t = target.Element ("namespaces");
+                       if (XNode.DeepEquals (s, t))
+                               return;
+                       Compare (s.Elements ("namespace"), t.Elements ("namespace"));
+               }
+
+               public override void SetContext (XElement current)
+               {
+                       State.Namespace = current.Attribute ("name").Value;
+               }
+
+               public override void Added (XElement target)
+               {
+                       Output.WriteLine ("<h2>New Namespace {0}</h2>", target.Attribute ("name").Value);
+                       Output.WriteLine ();
+                       // list all new types
+                       foreach (var addedType in target.Element ("classes").Elements ("class"))
+                               comparer.Added (addedType);
+                       Output.WriteLine ();
+               }
+
+               public override void Modified (XElement source, XElement target)
+               {
+                       var output = Output;
+                       State.Output = new StringWriter ();
+                       comparer.Compare (source, target);
+
+                       var s = Output.ToString ();
+                       State.Output = output;
+                       if (s.Length > 0) {
+                               Output.WriteLine ("<h2>Namespace {0}</h2>", target.Attribute ("name").Value);
+                               Output.WriteLine (s);
+                       }
+               }
+
+               public override void Removed (XElement source)
+               {
+                       Output.WriteLine ("<h2>Removed Namespace {0}</h2>", source.Attribute ("name").Value);
+                       Output.WriteLine ();
+                       // list all removed types
+                       foreach (var removedType in source.Element ("classes").Elements ("class"))
+                               comparer.Removed (removedType);
+                       Output.WriteLine ();
+               }
+       }
+}
\ No newline at end of file
diff --git a/mcs/tools/corcompare/mono-api-html/PropertyComparer.cs b/mcs/tools/corcompare/mono-api-html/PropertyComparer.cs
new file mode 100644 (file)
index 0000000..0971e71
--- /dev/null
@@ -0,0 +1,97 @@
+// 
+// Authors
+//    Sebastien Pouliot  <sebastien@xamarin.com>
+//
+// Copyright 2013 Xamarin Inc. http://www.xamarin.com
+// 
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+
+using System;
+using System.Reflection;
+using System.Text;
+using System.Xml.Linq;
+
+namespace Xamarin.ApiDiff {
+
+       public class PropertyComparer : MemberComparer {
+
+               public override string GroupName {
+                       get { return "properties"; }
+               }
+
+               public override string ElementName {
+                       get { return "property"; }
+               }
+
+               public override bool Find (XElement e)
+               {
+                       if (!base.Find (e))
+                               return false;
+                       // the same Item (indexer) property can have different parameters
+                       return e.GetAttribute ("params") == Source.GetAttribute ("params");
+               }
+
+               public override string GetDescription (XElement e)
+               {
+                       string name = e.Attribute ("name").Value;
+                       string ptype = e.GetTypeName ("ptype");
+
+                       bool virt = false;
+                       bool over = false;
+                       bool stat = false;
+                       bool getter = false;
+                       bool setter = false;
+                       bool family = false;
+                       var methods = e.Element ("methods");
+                       if (methods != null) {
+                               foreach (var m in methods.Elements ("method")) {
+                                       virt |= m.IsTrue ("virtual");
+                                       stat |= m.IsTrue ("static");
+                                       var n = m.GetAttribute ("name");
+                                       getter |= n.StartsWith ("get_", StringComparison.Ordinal);
+                                       setter |= n.StartsWith ("set_", StringComparison.Ordinal);
+                                       var attribs = (MethodAttributes) Int32.Parse (m.GetAttribute ("attrib"));
+                                       family = ((attribs & MethodAttributes.Public) != MethodAttributes.Public);
+                                       over |= (attribs & MethodAttributes.VtableLayoutMask) == 0;
+                               }
+                       }
+
+                       var sb = GetObsoleteMessage (e);
+                       bool obsolete = sb.Length > 0;
+
+                       sb.Append (family ? "protected " : "public ");
+                       if (virt)
+                               sb.Append (over ? "override " : "virtual ");
+                       else if (stat)
+                               sb.Append ("static ");
+                       sb.Append (ptype).Append (' ').Append (name).Append (" { ");
+                       if (getter)
+                               sb.Append ("get; ");
+                       if (setter)
+                               sb.Append ("set; ");
+                       sb.Append ("}");
+
+                       if (obsolete)
+                               sb.AppendLine (); // more readable output
+                       return sb.ToString ();
+               }
+       }
+}
\ No newline at end of file
diff --git a/mcs/tools/corcompare/mono-api-html/mono-api-html.csproj b/mcs/tools/corcompare/mono-api-html/mono-api-html.csproj
new file mode 100644 (file)
index 0000000..6a205f2
--- /dev/null
@@ -0,0 +1,54 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <PropertyGroup>
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
+    <ProductVersion>10.0.0</ProductVersion>
+    <SchemaVersion>2.0</SchemaVersion>
+    <ProjectGuid>{D25986E2-7A41-4966-A26D-5614BAC7B8A7}</ProjectGuid>
+    <OutputType>Exe</OutputType>
+    <RootNamespace>Xamarin.ApiDiff</RootNamespace>
+    <AssemblyName>mono-api-html</AssemblyName>
+  </PropertyGroup>
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
+    <DebugSymbols>true</DebugSymbols>
+    <DebugType>full</DebugType>
+    <Optimize>false</Optimize>
+    <OutputPath>bin\Debug</OutputPath>
+    <DefineConstants>DEBUG;</DefineConstants>
+    <ErrorReport>prompt</ErrorReport>
+    <WarningLevel>4</WarningLevel>
+    <ConsolePause>false</ConsolePause>
+    <Commandlineparameters>../../../6.4.5.xml ../../../7.0.2.xml</Commandlineparameters>
+  </PropertyGroup>
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
+    <DebugType>full</DebugType>
+    <Optimize>true</Optimize>
+    <OutputPath>bin\Release</OutputPath>
+    <ErrorReport>prompt</ErrorReport>
+    <WarningLevel>4</WarningLevel>
+    <Externalconsole>true</Externalconsole>
+  </PropertyGroup>
+  <ItemGroup>
+    <Reference Include="System" />
+    <Reference Include="System.Xml.Linq" />
+    <Reference Include="System.Xml" />
+    <Reference Include="System.Core" />
+  </ItemGroup>
+  <ItemGroup>
+    <Compile Include="Helpers.cs" />
+    <Compile Include="InterfaceComparer.cs" />
+    <Compile Include="NamespaceComparer.cs" />
+    <Compile Include="MemberComparer.cs" />
+    <Compile Include="FieldComparer.cs" />
+    <Compile Include="PropertyComparer.cs" />
+    <Compile Include="EventComparer.cs" />
+    <Compile Include="MethodComparer.cs" />
+    <Compile Include="ConstructorComparer.cs" />
+    <Compile Include="Comparer.cs" />
+    <Compile Include="AssemblyComparer.cs" />
+    <Compile Include="ClassComparer.cs" />
+    <Compile Include="ApiDiff.cs" />
+  </ItemGroup>
+  <Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
+</Project>
\ No newline at end of file
index 1596015470e1372724a2fc19575f28fdab1ee966..44ef75821a1f923b5bf00fffd867b7754b6ca601 100644 (file)
@@ -56,7 +56,7 @@
     <Reference Include="System.Core">\r
       <RequiredTargetFramework>3.5</RequiredTargetFramework>\r
     </Reference>\r
-    <Reference Include="System.XML" />\r
+    <Reference Include="System.Xml" />\r
   </ItemGroup>\r
   <ItemGroup>\r
     <Compile Include="AssemblyResolver.cs" />\r
       <Install>true</Install>\r
     </BootstrapperPackage>\r
   </ItemGroup>\r
-  <ItemGroup>\r
-    <ProjectReference Include="..\..\..\external\cecil\Mono.Cecil.csproj">\r
-      <Project>{d68133bd-1e63-496e-9ede-4fbdbf77b486}</Project>\r
-      <Name>Mono.Cecil</Name>\r
-    </ProjectReference>\r
-  </ItemGroup>\r
-  <ItemGroup>\r
-    <None Include="app.config" />\r
-  </ItemGroup>\r
   <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
   <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
        Other similar extension points exist, see Microsoft.Common.targets.\r
   <Target Name="AfterBuild">\r
   </Target>\r
   -->\r
+  <ItemGroup>\r
+    <ProjectReference Include="..\..\..\external\cecil\Mono.Cecil.csproj">\r
+      <Project>{D68133BD-1E63-496E-9EDE-4FBDBF77B486}</Project>\r
+      <Name>Mono.Cecil</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
 </Project>
\ No newline at end of file
index 65e7f26fa91ca37d7dc3655b03fe3063d6877900..40b683600311feffd744b79d3a38db0a50d4ca5e 100644 (file)
@@ -2,6 +2,7 @@ using System;
 using System.Reflection;
 using System.Collections;
 using System.Collections.Generic;
+using System.Text.RegularExpressions;
 using System.IO;
 
 using Mono.CompilerServices.SymbolWriter;
@@ -15,6 +16,11 @@ class Settings
        public string OutputDirectory { get; set; }
        public string InputPattern { get; set; }
        public string OutputPattern { get; set; }
+       public bool InputPatternIsRegex { get; set; }
+       public bool FileNamesOnly { get; set; }
+       public bool Verbose { get; set; }
+
+       Regex inputPatternRegex;
 
        public bool Validate ()
        {
@@ -23,8 +29,15 @@ class Settings
 
        public string Replace (string input)
        {
-               if (input.StartsWith (InputPattern))
-                       return input.Replace (InputPattern, OutputPattern);
+               if (InputPatternIsRegex) {
+                       if (inputPatternRegex == null)
+                               inputPatternRegex = new Regex (InputPattern);
+                       return inputPatternRegex.Replace (input, OutputPattern);
+               } else {
+                       if (input.StartsWith (InputPattern))
+                               return OutputPattern + input.Substring (InputPattern.Length);
+               }
+
                return input;
        }
 }
@@ -46,7 +59,14 @@ class MdbRebase
                var output = new MonoSymbolFile ();
 
                foreach (var s in input.Sources) {
-                       s.FileName = settings.Replace (s.FileName);
+                       var newFileName = settings.FileNamesOnly
+                               ? Path.Combine (Path.GetDirectoryName (s.FileName), settings.Replace (Path.GetFileName (s.FileName)))
+                               : settings.Replace (s.FileName);
+
+                       if (settings.Verbose)
+                               Console.WriteLine ("{0} -> {1}", s.FileName, newFileName);
+
+                       s.FileName = newFileName;
                        output.AddSource (s);
                }
 
@@ -97,6 +117,9 @@ class Driver {
 
                var p = new OptionSet () {
                        { "d=|output=",  "Output directory to the mdb file, replace existing one if ommited", v => s.OutputDirectory = v },
+                       { "v|verbose", "Be verbose with output (show individual path rewrites)", v => s.Verbose = true },
+                       { "f|filenames", "Only operate on file names, not full absolute paths", v => s.FileNamesOnly = true },
+                       { "r|regex", "Input pattern is a regular expression", v => s.InputPatternIsRegex = true },
                        { "i=|input-pattern=", "Input pattern to replace (must not be a prefix to output-pattern)(required)", v => s.InputPattern = v },
                        { "o=|output-pattern=", "Output pattern to replace (required)", v => s.OutputPattern = v },
                        { "h|?|help", v => showHelp = true },
index 7559208868850cf98cc65ce296f8a8e9b3388214..244d0478bdfac18a75c546c33a641262184f0e06 100644 (file)
@@ -3365,10 +3365,10 @@ public abstract class MemberFormatter {
                if (type is PointerType) {
                        return AppendPointerTypeName (buf, type, context);
                }
-               AppendNamespace (buf, type);
                if (type is GenericParameter) {
                        return AppendTypeName (buf, type, context);
                }
+               AppendNamespace (buf, type);
                GenericInstanceType genInst = type as GenericInstanceType;
                if (type.GenericParameters.Count == 0 &&
                                (genInst == null ? true : genInst.GenericArguments.Count == 0)) {
index 6896008e2f200e9b313027b264a4583f9bd8760e..52bc1961113cd8cd08e0b61e198a03390a71a2fa 100644 (file)
@@ -362,6 +362,10 @@ namespace Mono.DocTest {
                /// <returns>A <see cref="T:Mono.DocTest.Widget" /> instance.</returns>
                public static Widget operator+ (Widget x) {return null;}
 
+               /// <remarks><c>M:Mono.DocTest.Widget.op_Division</c>.</remarks>
+               /// <returns>A <see cref="T:Mono.DocTest.Widget" /> instance.</returns>
+               public static Widget op_Division = null;
+
                /// <param name="x1">Yet Another <see cref="T:Mono.DocTest.Widget" />.</param>
                /// <param name="x2">Yay, <see cref="T:Mono.DocTest.Widget" />s.</param>
                /// <remarks><c>M:Mono.DocTest.Widget.op_Addition(Mono.DocTest.Widget,Mono.DocTest.Widget)</c>.</remarks>
index 6d67e84a38e88f5ac4db2239b66dadca19bf6cf4..8918f4d86884af136610c06c40c275d5feac1576 100644 (file)
         <remarks>To be added.</remarks>
       </Docs>
     </Member>
+    <Member MemberName="op_Division">
+      <MemberSignature Language="C#" Value="public static Mono.DocTest.Widget op_Division;" />
+      <MemberSignature Language="ILAsm" Value=".field public static class Mono.DocTest.Widget op_Division" />
+      <MemberType>Field</MemberType>
+      <ReturnValue>
+        <ReturnType>Mono.DocTest.Widget</ReturnType>
+      </ReturnValue>
+      <Docs>
+        <summary>To be added.</summary>
+        <remarks>To be added.</remarks>
+      </Docs>
+    </Member>
     <Member MemberName="op_Explicit">
       <MemberSignature Language="C#" Value="public static int op_Explicit (Mono.DocTest.Widget x);" />
       <MemberSignature Language="ILAsm" Value=".method public static hidebysig specialname int32 op_Explicit(class Mono.DocTest.Widget x) cil managed" />
index 31435197800f7f09515598fabf94131998dadd7d..c873e3aa4159940dd3007691310ae8bb31b11358 100644 (file)
           <c>M:Mono.DocTest.Widget.op_Addition(Mono.DocTest.Widget,Mono.DocTest.Widget)</c>.</remarks>
       </Docs>
     </Member>
+    <Member MemberName="op_Division">
+      <MemberSignature Language="C#" Value="public static Mono.DocTest.Widget op_Division;" />
+      <MemberSignature Language="ILAsm" Value=".field public static class Mono.DocTest.Widget op_Division" />
+      <MemberType>Field</MemberType>
+      <AssemblyInfo>
+        <AssemblyVersion>0.0.0.0</AssemblyVersion>
+      </AssemblyInfo>
+      <ReturnValue>
+        <ReturnType>Mono.DocTest.Widget</ReturnType>
+      </ReturnValue>
+      <Docs>
+        <summary>To be added.</summary>
+        <returns>A <see cref="T:Mono.DocTest.Widget" /> instance.</returns>
+        <remarks>
+          <c>M:Mono.DocTest.Widget.op_Division</c>.</remarks>
+      </Docs>
+    </Member>
     <Member MemberName="op_Explicit">
       <MemberSignature Language="C#" Value="public static int op_Explicit (Mono.DocTest.Widget x);" />
       <MemberSignature Language="ILAsm" Value=".method public static hidebysig specialname int32 op_Explicit(class Mono.DocTest.Widget x) cil managed" />
index 0c1f1893057b0bdaa5cd9f7b111b95bf6b592b91..af7e8564c1a11c410e6740b79b42f5d352059f20 100644 (file)
         <remarks>To be added.</remarks>
       </Docs>
     </Member>
+    <Member MemberName="op_Division">
+      <MemberSignature Language="C#" Value="public static Mono.DocTest.Widget op_Division;" />
+      <MemberSignature Language="ILAsm" Value=".field public static class Mono.DocTest.Widget op_Division" />
+      <MemberType>Field</MemberType>
+      <AssemblyInfo>
+        <AssemblyVersion>0.0.0.0</AssemblyVersion>
+        <AssemblyVersion>2.0.0.0</AssemblyVersion>
+      </AssemblyInfo>
+      <ReturnValue>
+        <ReturnType>Mono.DocTest.Widget</ReturnType>
+      </ReturnValue>
+      <Docs>
+        <summary>To be added.</summary>
+        <remarks>To be added.</remarks>
+      </Docs>
+    </Member>
     <Member MemberName="op_Explicit">
       <MemberSignature Language="C#" Value="public static int op_Explicit (Mono.DocTest.Widget x);" />
       <MemberSignature Language="ILAsm" Value=".method public static hidebysig specialname int32 op_Explicit(class Mono.DocTest.Widget x) cil managed" />
index b2242b00993d41051ff72600d1dbd2a1856612ee..d7fb2ea21da64f4774cf911adf6ddcf7788977bb 100644 (file)
         <remarks>To be added.</remarks>
       </Docs>
     </Member>
+    <Member MemberName="op_Division">
+      <MemberSignature Language="C#" Value="public static Mono.DocTest.Widget op_Division;" />
+      <MemberSignature Language="ILAsm" Value=".field public static class Mono.DocTest.Widget op_Division" />
+      <MemberType>Field</MemberType>
+      <AssemblyInfo>
+        <AssemblyVersion>0.0.0.0</AssemblyVersion>
+      </AssemblyInfo>
+      <ReturnValue>
+        <ReturnType>Mono.DocTest.Widget</ReturnType>
+      </ReturnValue>
+      <Docs>
+        <summary>To be added.</summary>
+        <remarks>To be added.</remarks>
+      </Docs>
+    </Member>
     <Member MemberName="op_Explicit">
       <MemberSignature Language="C#" Value="public static int op_Explicit (Mono.DocTest.Widget x);" />
       <MemberSignature Language="ILAsm" Value=".method public static hidebysig specialname int32 op_Explicit(class Mono.DocTest.Widget x) cil managed" />
index 943c58d4227e67576b25a1284cf535024bab60a9..7f29d8c54a2f46a274111820156c090c167a66b5 100644 (file)
                     <a href="http://www.go-mono.com/docs/monodoc.ashx?link=T:System.String">string</a>
                   </i>. <span class="NotEntered">Documentation for this section has not yet been entered.</span></td>
               </tr>
+              <tr valign="top">
+                <td>
+                  <div>static </div>
+                </td>
+                <td>
+                  <b>
+                    <a href="#F:Mono.DocTest.Widget.op_Division">op_Division</a>
+                  </b>
+                </td>
+                <td>
+                  <i>
+                    <a href="../Mono.DocTest/Widget.html">Widget</a>
+                  </i>. <span class="NotEntered">Documentation for this section has not yet been entered.</span></td>
+              </tr>
               <tr valign="top">
                 <td>
                   <div>
             <b>Namespace: </b>Mono.DocTest<br /><b>Assembly: </b>DocTest (in DocTest.dll)<br /><b>Assembly Versions: </b>0.0.0.0</div>
           <hr size="1" />
         </blockquote>
+        <h3 id="F:Mono.DocTest.Widget.op_Division">op_Division Field</h3>
+        <blockquote id="F:Mono.DocTest.Widget.op_Division:member">
+          <p class="Summary">
+            <span class="NotEntered">Documentation for this section has not yet been entered.</span>
+          </p>
+          <h2>Syntax</h2>
+          <div class="Signature">public static <a href="../Mono.DocTest/Widget.html">Widget</a> operator/ </div>
+          <h4 class="Subsection">Returns</h4>
+          <blockquote class="SubsectionBox" id="F:Mono.DocTest.Widget.op_Division:Returns">A <a href="../Mono.DocTest/Widget.html">Mono.DocTest.Widget</a> instance.</blockquote>
+          <h2 class="Section">Remarks</h2>
+          <div class="SectionBox" id="F:Mono.DocTest.Widget.op_Division:Remarks">
+            <tt>M:Mono.DocTest.Widget.op_Division</tt>.</div>
+          <h2 class="Section">Requirements</h2>
+          <div class="SectionBox" id="F:Mono.DocTest.Widget.op_Division:Version Information">
+            <b>Namespace: </b>Mono.DocTest<br /><b>Assembly: </b>DocTest (in DocTest.dll)<br /><b>Assembly Versions: </b>0.0.0.0</div>
+          <hr size="1" />
+        </blockquote>
         <h3 id="M:Mono.DocTest.Widget.op_Explicit(Mono.DocTest.Widget)~System.Int32">Conversion Method</h3>
         <blockquote id="M:Mono.DocTest.Widget.op_Explicit(Mono.DocTest.Widget)~System.Int32:member">
           <p class="Summary">
index e431794cd27283d46824b4d130cc36de91e7a69b..eb7fb859d7108ca9f31e808a113e126bc422dc0e 100644 (file)
@@ -568,6 +568,12 @@ class Example {
             <remarks>
                 <c>M:Mono.DocTest.Widget.op_Addition(Mono.DocTest.Widget,Mono.DocTest.Widget)</c>.</remarks>
         </member>
+        <member name="F:Mono.DocTest.Widget.op_Division">
+            <summary>To be added.</summary>
+            <returns>A <see cref="T:Mono.DocTest.Widget" /> instance.</returns>
+            <remarks>
+                <c>M:Mono.DocTest.Widget.op_Division</c>.</remarks>
+        </member>
         <member name="M:Mono.DocTest.Widget.op_Explicit(Mono.DocTest.Widget)~System.Int32">
             <param name="x">
                 <see cref="T:Mono.DocTest.Widget" />s are fun!.</param>
index 8a8e6007985718e3a48565178334a0a2cb81a211..9bd32cf8c668555b06f920478ee15ee03b7a3f95 100644 (file)
@@ -13,7 +13,8 @@ my_inflate (const Byte *compr, uLong compr_len, Byte *uncompr, uLong uncompr_len
        memset (&stream, 0, sizeof (z_stream));
        stream.next_in = (Byte *) compr;
        stream.avail_in = (uInt) compr_len;
-       /* To decompress gzip format: http://stackoverflow.com/a/1838702/83444 */
+
+       // http://www.zlib.net/manual.html
        err = inflateInit2 (&stream, 16+MAX_WBITS);
        if (err != Z_OK)
                return 1;
index c84505d30ab9a745dd37c4971c575e1698974969..4f6660077050d007c56f426b49c7265bf1271f60 100644 (file)
@@ -126,7 +126,7 @@ namespace Mono.Tools {
                                return new StrongName (data).RSA;
                        }
                        catch {
-                               if (data [0] != 0x30)
+                               if (data.Length == 0 || data [0] != 0x30)
                                        throw;
                                // this could be a PFX file
                                Console.Write ("Enter password for private key (will be visible when typed): ");
index 30c5ac4b9db6d1ca21840af28eaaed038f54a17c..6b684b6066704a5df9bb0f1df77953715c275e61 100644 (file)
@@ -38,9 +38,6 @@ using Mono.Cecil;
 namespace Mono.Tuner {
 
        public class AdjustVisibility : BaseStep {
-
-               static readonly object internalized_key = new object ();
-
                protected override void ProcessAssembly (AssemblyDefinition assembly)
                {
                        if (Annotations.GetAction (assembly) != AssemblyAction.Link)
index 5dd8204a9604e27df06b4795307832b54dfb1ed0..e9d998f1dd80489aae2c0df2fa62558ac8e277f2 100644 (file)
@@ -305,6 +305,7 @@ OPDEF(CEE_MONO_SAVE_LMF, "mono_save_lmf", Pop0, Push0, InlineNone, X, 2, 0xF0, 0
 OPDEF(CEE_MONO_RESTORE_LMF, "mono_restore_lmf", Pop0, Push0, InlineNone, X, 2, 0xF0, 0x0A, NEXT)
 OPDEF(CEE_MONO_CLASSCONST, "mono_classconst", Pop0, PushI, InlineI, X, 2, 0xF0, 0x0B, NEXT)
 OPDEF(CEE_MONO_NOT_TAKEN, "mono_not_taken", Pop0, Push0, InlineNone, X, 2, 0xF0, 0x0C, NEXT)
+/* The argument should be one of the TLS_KEY values defined in mono-tls.h */
 OPDEF(CEE_MONO_TLS, "mono_tls", Pop0, PushI, InlineI, X, 2, 0xF0, 0x0D, NEXT)
 OPDEF(CEE_MONO_ICALL_ADDR, "mono_icall_addr", Pop0, PushI, InlineI, X, 2, 0xF0, 0x0E, NEXT)
 OPDEF(CEE_MONO_DYN_CALL, "mono_dyn_call", Pop0, PushI, InlineI, X, 2, 0xF0, 0x0F, NEXT)
index ad349dd8606a936dc4b26da5bf02dcf910f772d6..8ad1eda644d9188d137a3196d815c7d34f85219e 100644 (file)
@@ -33,6 +33,7 @@
 #include <mono/utils/mono-path.h>
 #include <mono/metadata/reflection.h>
 #include <mono/metadata/coree.h>
+#include <mono/metadata/cil-coff.h>
 #include <mono/utils/mono-io-portability.h>
 #include <mono/utils/atomic.h>
 
@@ -741,6 +742,7 @@ mono_assembly_fill_assembly_name (MonoImage *image, MonoAssemblyName *aname)
 {
        MonoTableInfo *t = &image->tables [MONO_TABLE_ASSEMBLY];
        guint32 cols [MONO_ASSEMBLY_SIZE];
+       gint32 machine;
 
        if (!t->rows)
                return FALSE;
@@ -785,6 +787,24 @@ mono_assembly_fill_assembly_name (MonoImage *image, MonoAssemblyName *aname)
        else
                aname->public_key = 0;
 
+       machine = ((MonoCLIImageInfo*)(image->image_info))->cli_header.coff.coff_machine;
+       switch (machine) {
+       case COFF_MACHINE_I386:
+               aname->arch = MONO_PROCESSOR_ARCHITECTURE_X86;
+               break;
+       case COFF_MACHINE_IA64:
+               aname->arch = MONO_PROCESSOR_ARCHITECTURE_IA64;
+               break;
+       case COFF_MACHINE_AMD64:
+               aname->arch = MONO_PROCESSOR_ARCHITECTURE_AMD64;
+               break;
+       case COFF_MACHINE_ARM:
+               aname->arch = MONO_PROCESSOR_ARCHITECTURE_ARM;
+               break;
+       default:
+               break;
+       }
+
        return TRUE;
 }
 
index 26665e50f5633e14db03741a29c3f0485cc02839..bbfaa8df97f44b22b2db3b43aaaa3ed6dbf1c066 100644 (file)
@@ -680,7 +680,7 @@ enum {
 };
 
 static MonoMethod*
-create_allocator (int atype, int offset)
+create_allocator (int atype, int tls_key)
 {
        int index_var, bytes_var, my_fl_var, my_entry_var;
        guint32 no_freelist_branch, not_small_enough_branch = 0;
@@ -759,7 +759,7 @@ create_allocator (int atype, int offset)
        /* my_fl = ((GC_thread)tsd) -> ptrfree_freelists + index; */
        mono_mb_emit_byte (mb, MONO_CUSTOM_PREFIX);
        mono_mb_emit_byte (mb, 0x0D); /* CEE_MONO_TLS */
-       mono_mb_emit_i4 (mb, offset);
+       mono_mb_emit_i4 (mb, tls_key);
        if (atype == ATYPE_FREEPTR || atype == ATYPE_FREEPTR_FOR_BOX || atype == ATYPE_STRING)
                mono_mb_emit_icon (mb, G_STRUCT_OFFSET (struct GC_Thread_Rep, ptrfree_freelists));
        else if (atype == ATYPE_NORMAL)
@@ -966,10 +966,12 @@ mono_gc_get_managed_allocator_by_type (int atype)
        MonoMethod *res;
        MONO_THREAD_VAR_OFFSET (GC_thread_tls, offset);
 
+       mono_tls_key_set_offset (TLS_KEY_BOEHM_GC_THREAD, offset);
+
        mono_loader_lock ();
        res = alloc_method_cache [atype];
        if (!res)
-               res = alloc_method_cache [atype] = create_allocator (atype, offset);
+               res = alloc_method_cache [atype] = create_allocator (atype, TLS_KEY_BOEHM_GC_THREAD);
        mono_loader_unlock ();
        return res;
 }
index 8d6fdcf4d89bf34958fbd2d28f057c446e16526d..ab7f2c97f305c5dacd493a6dbb355b03a122fa9f 100644 (file)
@@ -37,6 +37,12 @@ typedef struct {
        char    msdos_header2 [64];
 } MonoMSDOSHeader;
 
+/* Possible values for coff_machine */
+#define COFF_MACHINE_I386 332
+#define COFF_MACHINE_IA64 512
+#define COFF_MACHINE_AMD64 34404
+#define COFF_MACHINE_ARM 452
+
 /* 20 bytes */
 typedef struct {
        guint16  coff_machine;
index 5b40a125c11d6171fe223df70e7366413f5803aa..7140a630bad2630e1e332dd5dd3b7c2e1ef089e6 100644 (file)
@@ -151,7 +151,16 @@ mono_image_rva_map (MonoImage *image, guint32 addr)
        const int top = iinfo->cli_section_count;
        MonoSectionTable *tables = iinfo->cli_section_tables;
        int i;
-       
+
+#ifdef HOST_WIN32
+       if (image->is_module_handle) {
+               if (addr && addr < image->raw_data_len)
+                       return image->raw_data + addr;
+               else
+                       return NULL;
+       }
+#endif
+
        for (i = 0; i < top; i++){
                if ((addr >= tables->st_virtual_address) &&
                    (addr < tables->st_virtual_address + tables->st_raw_data_size)){
@@ -159,10 +168,6 @@ mono_image_rva_map (MonoImage *image, guint32 addr)
                                if (!mono_image_ensure_section_idx (image, i))
                                        return NULL;
                        }
-#ifdef HOST_WIN32
-                       if (image->is_module_handle)
-                               return image->raw_data + addr;
-#endif
                        return (char*)iinfo->cli_sections [i] +
                                (addr - tables->st_virtual_address);
                }
index 513e3150269c1dbdd4d4ced4f167d5d94e4ec138..7286c3c249863dd6043a70b282dd4b715b79f4b3 100644 (file)
@@ -402,7 +402,7 @@ get_posix_locale (void)
        const char *locale;
 
        locale = g_getenv ("LC_ALL");
-       if (locale != NULL){
+       if (locale == NULL) {
                locale = g_getenv ("LANG");
                if (locale == NULL)
                        locale = setlocale (LC_ALL, NULL);
index bbf66fbefa387ddbc421ec5c0b187a9b977111e1..a9f3149d952a4f4d0c33302c03383dacb949ae7a 100644 (file)
@@ -44,6 +44,7 @@ struct _MonoType {
 #define MONO_PROCESSOR_ARCHITECTURE_X86 2
 #define MONO_PROCESSOR_ARCHITECTURE_IA64 3
 #define MONO_PROCESSOR_ARCHITECTURE_AMD64 4
+#define MONO_PROCESSOR_ARCHITECTURE_ARM 5
 
 struct _MonoAssemblyName {
        const char *name;
index b701fb622173df9bcf4156fb06eb8563c977197b..9784437db466c668357eabedd4b8949d83363426 100644 (file)
@@ -947,7 +947,7 @@ mono_monitor_get_fast_enter_method (MonoMethod *monitor_enter_method)
 
        mono_mb_emit_byte (mb, MONO_CUSTOM_PREFIX);
        mono_mb_emit_byte (mb, CEE_MONO_TLS);
-       mono_mb_emit_i4 (mb, thread_tls_offset);
+       mono_mb_emit_i4 (mb, TLS_KEY_THREAD);
        mono_mb_emit_icon (mb, G_STRUCT_OFFSET (MonoInternalThread, tid));
        mono_mb_emit_byte (mb, CEE_ADD);
        mono_mb_emit_byte (mb, CEE_LDIND_I);
@@ -1109,7 +1109,7 @@ mono_monitor_get_fast_exit_method (MonoMethod *monitor_exit_method)
        mono_mb_emit_byte (mb, CEE_LDIND_I);
        mono_mb_emit_byte (mb, MONO_CUSTOM_PREFIX);
        mono_mb_emit_byte (mb, CEE_MONO_TLS);
-       mono_mb_emit_i4 (mb, thread_tls_offset);
+       mono_mb_emit_i4 (mb, TLS_KEY_THREAD);
        mono_mb_emit_icon (mb, G_STRUCT_OFFSET (MonoInternalThread, tid));
        mono_mb_emit_byte (mb, CEE_ADD);
        mono_mb_emit_byte (mb, CEE_LDIND_I);
index 4f4ffb18e6e00ab10ea9dd1c545a9d2dd65a3ff5..c208638850d9b3b330cc5c9f9db35c6765b5e5e4 100644 (file)
@@ -704,6 +704,9 @@ create_allocator (int atype)
        MONO_THREAD_VAR_OFFSET (tlab_next_addr, tlab_next_addr_offset);
        MONO_THREAD_VAR_OFFSET (tlab_temp_end, tlab_temp_end_offset);
 
+       mono_tls_key_set_offset (TLS_KEY_SGEN_TLAB_NEXT_ADDR, tlab_next_addr_offset);
+       mono_tls_key_set_offset (TLS_KEY_SGEN_TLAB_TEMP_END, tlab_temp_end_offset);
+
        g_assert (tlab_next_addr_offset != -1);
        g_assert (tlab_temp_end_offset != -1);
 #endif
@@ -851,7 +854,7 @@ create_allocator (int atype)
 
        /* tlab_next_addr (local) = tlab_next_addr (TLS var) */
        tlab_next_addr_var = mono_mb_add_local (mb, &mono_defaults.int_class->byval_arg);
-       EMIT_TLS_ACCESS (mb, tlab_next_addr, tlab_next_addr_offset);
+       EMIT_TLS_ACCESS (mb, tlab_next_addr, TLS_KEY_SGEN_TLAB_NEXT_ADDR);
        mono_mb_emit_stloc (mb, tlab_next_addr_var);
 
        /* p = (void**)tlab_next; */
@@ -870,7 +873,7 @@ create_allocator (int atype)
 
        /* if (G_LIKELY (new_next < tlab_temp_end)) */
        mono_mb_emit_ldloc (mb, new_next_var);
-       EMIT_TLS_ACCESS (mb, tlab_temp_end, tlab_temp_end_offset);
+       EMIT_TLS_ACCESS (mb, tlab_temp_end, TLS_KEY_SGEN_TLAB_TEMP_END);
        slowpath_branch = mono_mb_emit_short_branch (mb, MONO_CEE_BLT_UN_S);
 
        /* Slowpath */
index 741d75735b4cac165f7a2fe9802357f3c8005938..e400d7cc6c8b101e2c73fe93e9c166a292111e05 100755 (executable)
        )
 #endif
 
+#ifndef REG_SP
+#define REG_SP REG_O6
+#endif
+
 #define ARCH_SIGCTX_SP(ctx)    (((ucontext_t *)(ctx))->uc_mcontext.gregs [REG_SP])
 #define ARCH_SIGCTX_IP(ctx)    (((ucontext_t *)(ctx))->uc_mcontext.gregs [REG_PC])
 #define ARCH_COPY_SIGCTX_REGS(a,ctx) do {      \
index effdb5933855c7fe1fa51ffa4cc0ae7955623bf0..b88a4dd5d8bc15a2ff532fa1d1368e32b953d891 100644 (file)
@@ -4862,6 +4862,19 @@ mono_gc_base_init (void)
 
 #ifndef HAVE_KW_THREAD
        mono_native_tls_alloc (&thread_info_key, NULL);
+#if defined(__APPLE__) || defined (HOST_WIN32)
+       /* 
+        * CEE_MONO_TLS requires the tls offset, not the key, so the code below only works on darwin,
+        * where the two are the same.
+        */
+       mono_tls_key_set_offset (TLS_KEY_SGEN_THREAD_INFO, thread_info_key);
+#endif
+#else
+       {
+               int tls_offset = -1;
+               MONO_THREAD_VAR_OFFSET (sgen_thread_info, tls_offset);
+               mono_tls_key_set_offset (TLS_KEY_SGEN_THREAD_INFO, tls_offset);
+       }
 #endif
 
        /*
index 3478fcc579f2fbc28de99080918129f7c86bcbe2..18948819cdb81fadf1eed25a86c273926ec16e17 100644 (file)
@@ -143,7 +143,7 @@ struct _GCMemSection {
        /* in major collections indexes in the pin_queue for objects that pin this section */
        void **pin_queue_start;
        int pin_queue_num_entries;
-       unsigned short num_scan_start;
+       unsigned int num_scan_start;
 };
 
 /*
@@ -945,28 +945,24 @@ extern __thread char *stack_end;
 #endif
 
 #ifdef HAVE_KW_THREAD
-#define EMIT_TLS_ACCESS(mb,dummy,offset)       do {    \
+#define EMIT_TLS_ACCESS(mb,member,key) do {    \
        mono_mb_emit_byte ((mb), MONO_CUSTOM_PREFIX);   \
        mono_mb_emit_byte ((mb), CEE_MONO_TLS);         \
-       mono_mb_emit_i4 ((mb), (offset));               \
+       mono_mb_emit_i4 ((mb), (key));          \
        } while (0)
 #else
 
-/* 
- * CEE_MONO_TLS requires the tls offset, not the key, so the code below only works on darwin,
- * where the two are the same.
- */
 #if defined(__APPLE__) || defined (HOST_WIN32)
-#define EMIT_TLS_ACCESS(mb,member,dummy)       do {    \
+#define EMIT_TLS_ACCESS(mb,member,key) do {    \
        mono_mb_emit_byte ((mb), MONO_CUSTOM_PREFIX);   \
        mono_mb_emit_byte ((mb), CEE_MONO_TLS);         \
-       mono_mb_emit_i4 ((mb), thread_info_key);        \
+       mono_mb_emit_i4 ((mb), TLS_KEY_SGEN_THREAD_INFO);       \
        mono_mb_emit_icon ((mb), G_STRUCT_OFFSET (SgenThreadInfo, member));     \
        mono_mb_emit_byte ((mb), CEE_ADD);              \
        mono_mb_emit_byte ((mb), CEE_LDIND_I);          \
        } while (0)
 #else
-#define EMIT_TLS_ACCESS(mb,member,dummy)       do { g_error ("sgen is not supported when using --with-tls=pthread.\n"); } while (0)
+#define EMIT_TLS_ACCESS(mb,member,key) do { g_error ("sgen is not supported when using --with-tls=pthread.\n"); } while (0)
 #endif
 
 #endif
index 23e03b7ec3192e8fcdf4c1b8f03a8afb5a415238..98b4b7ac1d8220f03e42fa1519c9cb9704366ad8 100755 (executable)
@@ -1574,22 +1574,20 @@ sweep_block (MSBlockInfo *block, gboolean during_major_collection)
 static inline int
 bitcount (mword d)
 {
-#if SIZEOF_VOID_P == 8
-       /* http://www.jjj.de/bitwizardry/bitwizardrypage.html */
-       d -=  (d>>1) & 0x5555555555555555;
-       d  = ((d>>2) & 0x3333333333333333) + (d & 0x3333333333333333);
-       d  = ((d>>4) + d) & 0x0f0f0f0f0f0f0f0f;
-       d *= 0x0101010101010101;
-       return d >> 56;
+       int count = 0;
+
+#ifdef __GNUC__
+       if (sizeof (mword) == sizeof (unsigned long))
+               count += __builtin_popcountl (d);
+       else
+               count += __builtin_popcount (d);
 #else
-       /* http://aggregate.org/MAGIC/ */
-       d -= ((d >> 1) & 0x55555555);
-       d = (((d >> 2) & 0x33333333) + (d & 0x33333333));
-       d = (((d >> 4) + d) & 0x0f0f0f0f);
-       d += (d >> 8);
-       d += (d >> 16);
-       return (d & 0x0000003f);
+       while (d) {
+               count ++;
+               d &= (d - 1);
+       }
 #endif
+       return count;
 }
 
 static void
index 438713c2bffdf5187e6b298756861df00efc623c..8710dafd661e8d26ac41f99ec451bd617400a474 100644 (file)
@@ -771,7 +771,7 @@ monitor_thread (gpointer unused)
        thread = mono_thread_internal_current ();
        ves_icall_System_Threading_Thread_SetName_internal (thread, mono_string_new (mono_domain_get (), "Threadpool monitor"));
        while (1) {
-               ms = 2000;
+               ms = 500;
                i = 10; //number of spurious awakes we tolerate before doing a round of rebalancing.
                do {
                        guint32 ts;
@@ -1041,7 +1041,6 @@ pulse_on_new_job (ThreadPool *tp)
 {
        if (tp->waiting)
                MONO_SEM_POST (&tp->new_job);
-       threadpool_start_thread (tp);
 }
 
 void
@@ -1097,7 +1096,7 @@ threadpool_append_jobs (ThreadPool *tp, MonoObject **jobs, gint njobs)
                mono_cq_enqueue (tp->queue, ar);
        }
 
-       for (i = 0; i < MIN(njobs, tp->max_threads); i++)
+       for (i = 0; tp->waiting > 0 && i < MIN(njobs, tp->max_threads); i++)
                pulse_on_new_job (tp);
 }
 
index e93f9e0a7e71a95abddcfdd4a4bdeea251ad60bd..849ed2de49c314907a3fa4e2ba98e8a4e3d42a59 100755 (executable)
@@ -3340,10 +3340,6 @@ add_wrappers (MonoAotCompile *acfg)
                add_method (acfg, mono_marshal_get_runtime_invoke_dynamic ());
 #endif
 
-               /* JIT icall wrappers */
-               /* FIXME: locking */
-               g_hash_table_foreach (mono_get_jit_icall_info (), add_jit_icall_wrapper, acfg);
-
                /* stelemref */
                add_method (acfg, mono_marshal_get_stelemref ());
 
@@ -3407,6 +3403,10 @@ add_wrappers (MonoAotCompile *acfg)
                        }
                }
 #endif
+
+               /* JIT icall wrappers */
+               /* FIXME: locking */
+               g_hash_table_foreach (mono_get_jit_icall_info (), add_jit_icall_wrapper, acfg);
        }
 
        /* 
index c2a2e726acb50f788c88a77d5b395963014575af..cfe605ce24b6e01e27d7e46dd8a645c3b5333cec 100755 (executable)
@@ -5658,6 +5658,9 @@ decode_vtype (MonoType *t, MonoDomain *domain, guint8 *addr, guint8 *buf, guint8
                nfields --;
        }
        g_assert (nfields == 0);
+
+       *endbuf = buf;
+
        return 0;
 }
 
index e912519cdc5179066322d0ed87dd3eed43679165..d00b7332e32e14199c9f43b69917f49f7c394042 100644 (file)
@@ -35,7 +35,6 @@ typedef struct {
        char *start_symbol, *end_symbol;
        guint8 *code;
        guint32 code_size;
-       MonoDebugMethodJitInfo *debug_info;
 } MethodLineNumberInfo;
 
 struct _MonoDwarfWriter
@@ -888,8 +887,11 @@ emit_all_line_number_info (MonoDwarfWriter *w)
        /* Emit line number table */
        for (l = info_list; l; l = l->next) {
                MethodLineNumberInfo *info = l->data;
+               MonoDebugMethodJitInfo *dmji;
 
-               emit_line_number_info (w, info->method, info->start_symbol, info->end_symbol, info->code, info->code_size, info->debug_info);
+               dmji = mono_debug_find_method (info->method, mono_domain_get ());;
+               emit_line_number_info (w, info->method, info->start_symbol, info->end_symbol, info->code, info->code_size, dmji);
+               mono_debug_free_method_jit_info (dmji);
        }
        g_slist_free (info_list);
 
@@ -2083,7 +2085,6 @@ mono_dwarf_writer_emit_method (MonoDwarfWriter *w, MonoCompile *cfg, MonoMethod
                        info->end_symbol = g_strdup (end_symbol);
                        info->code = code;
                        info->code_size = code_size;
-                       info->debug_info = debug_info;
                        w->line_info = g_slist_prepend (w->line_info, info);
                } else {
                        emit_line_number_info (w, method, start_symbol, end_symbol, code, code_size, debug_info);
index ab704e4fe5cc6898142edd46a3b6f9f9faf69772..004cb0d430a2a7e17b86a501bf194083526c265e 100644 (file)
@@ -225,16 +225,17 @@ mono_arch_get_restore_context (MonoTrampInfo **info, gboolean aot)
        amd64_mov_reg_membase (code, AMD64_R15, AMD64_R11,  G_STRUCT_OFFSET (MonoContext, r15), 8);
 #endif
 
-       if (mono_running_on_valgrind ()) {
-               /* Prevent 'Address 0x... is just below the stack ptr.' errors */
-               amd64_mov_reg_membase (code, AMD64_R8, AMD64_R11,  G_STRUCT_OFFSET (MonoContext, rsp), 8);
-               amd64_mov_reg_membase (code, AMD64_R11, AMD64_R11,  G_STRUCT_OFFSET (MonoContext, rip), 8);
-               amd64_mov_reg_reg (code, AMD64_RSP, AMD64_R8, 8);
-       } else {
-               amd64_mov_reg_membase (code, AMD64_RSP, AMD64_R11,  G_STRUCT_OFFSET (MonoContext, rsp), 8);
-               /* get return address */
-               amd64_mov_reg_membase (code, AMD64_R11, AMD64_R11,  G_STRUCT_OFFSET (MonoContext, rip), 8);
-       }
+       /*
+        * The context resides on the stack, in the stack frame of the
+        * caller of this function.  The stack pointer that we need to
+        * restore is potentially many stack frames higher up, so the
+        * distance between them can easily be more than the red zone
+        * size.  Hence the stack pointer can be restored only after
+        * we have finished loading everything from the context.
+        */
+       amd64_mov_reg_membase (code, AMD64_R8, AMD64_R11,  G_STRUCT_OFFSET (MonoContext, rsp), 8);
+       amd64_mov_reg_membase (code, AMD64_R11, AMD64_R11,  G_STRUCT_OFFSET (MonoContext, rip), 8);
+       amd64_mov_reg_reg (code, AMD64_RSP, AMD64_R8, 8);
 
        /* jump to the saved IP */
        amd64_jump_reg (code, AMD64_R11);
index 2247b91a2abe39a3351df201a4a0ef77a815ee5c..669f18330234eac828c89402bac5c8405efadfaa 100644 (file)
@@ -321,27 +321,53 @@ mono_arch_get_restore_context (MonoTrampInfo **info, gboolean aot)
        /* load ctx */
        x86_mov_reg_membase (code, X86_EAX, X86_ESP, 4, 4);
 
-       /* get return address, stored in ECX */
-       x86_mov_reg_membase (code, X86_ECX, X86_EAX,  G_STRUCT_OFFSET (MonoContext, eip), 4);
        /* restore EBX */
        x86_mov_reg_membase (code, X86_EBX, X86_EAX,  G_STRUCT_OFFSET (MonoContext, ebx), 4);
+
        /* restore EDI */
        x86_mov_reg_membase (code, X86_EDI, X86_EAX,  G_STRUCT_OFFSET (MonoContext, edi), 4);
+
        /* restore ESI */
        x86_mov_reg_membase (code, X86_ESI, X86_EAX,  G_STRUCT_OFFSET (MonoContext, esi), 4);
-       /* restore ESP */
-       x86_mov_reg_membase (code, X86_ESP, X86_EAX,  G_STRUCT_OFFSET (MonoContext, esp), 4);
-       /* save the return addr to the restored stack */
-       x86_push_reg (code, X86_ECX);
-       /* restore EBP */
-       x86_mov_reg_membase (code, X86_EBP, X86_EAX,  G_STRUCT_OFFSET (MonoContext, ebp), 4);
-       /* restore ECX */
-       x86_mov_reg_membase (code, X86_ECX, X86_EAX,  G_STRUCT_OFFSET (MonoContext, ecx), 4);
+
        /* restore EDX */
        x86_mov_reg_membase (code, X86_EDX, X86_EAX,  G_STRUCT_OFFSET (MonoContext, edx), 4);
-       /* restore EAX */
-       x86_mov_reg_membase (code, X86_EAX, X86_EAX,  G_STRUCT_OFFSET (MonoContext, eax), 4);
 
+       /*
+        * The context resides on the stack, in the stack frame of the
+        * caller of this function.  The stack pointer that we need to
+        * restore is potentially many stack frames higher up, so the
+        * distance between them can easily be more than the red zone
+        * size.  Hence the stack pointer can be restored only after
+        * we have finished loading everything from the context.
+        */
+
+       /* load ESP into EBP */
+       x86_mov_reg_membase (code, X86_EBP, X86_EAX,  G_STRUCT_OFFSET (MonoContext, esp), 4);
+       /* load return address into ECX */
+       x86_mov_reg_membase (code, X86_ECX, X86_EAX,  G_STRUCT_OFFSET (MonoContext, eip), 4);
+       /* save the return addr to the restored stack - 4 */
+       x86_mov_membase_reg (code, X86_EBP, -4, X86_ECX, 4);
+
+       /* load EBP into ECX */
+       x86_mov_reg_membase (code, X86_ECX, X86_EAX,  G_STRUCT_OFFSET (MonoContext, ebp), 4);
+       /* save EBP to the restored stack - 8 */
+       x86_mov_membase_reg (code, X86_EBP, -8, X86_ECX, 4);
+
+       /* load EAX into ECX */
+       x86_mov_reg_membase (code, X86_ECX, X86_EAX,  G_STRUCT_OFFSET (MonoContext, eax), 4);
+       /* save EAX to the restored stack - 12 */
+       x86_mov_membase_reg (code, X86_EBP, -12, X86_ECX, 4);
+
+       /* restore ECX */
+       x86_mov_reg_membase (code, X86_ECX, X86_EAX,  G_STRUCT_OFFSET (MonoContext, ecx), 4);
+
+       /* restore ESP - 12 */
+       x86_lea_membase (code, X86_ESP, X86_EBP, -12);
+       /* restore EAX */
+       x86_pop_reg (code, X86_EAX);
+       /* restore EBP */
+       x86_pop_reg (code, X86_EBP);
        /* jump to the saved IP */
        x86_ret (code);
 
index b54d1dd2525dc488c0d1a93e9ea1baa6bb381607..97f053511f0b384036c715ecdc94a624175b84d7 100644 (file)
@@ -11123,17 +11123,31 @@ mono_method_to_ir (MonoCompile *cfg, MonoMethod *method, MonoBasicBlock *start_b
                                bblock->out_of_line = TRUE;
                                ip += 2;
                                break;
-                       case CEE_MONO_TLS:
+                       case CEE_MONO_TLS: {
+                               int key;
+
                                CHECK_STACK_OVF (1);
                                CHECK_OPSIZE (6);
-                               MONO_INST_NEW (cfg, ins, OP_TLS_GET);
-                               ins->dreg = alloc_preg (cfg);
-                               ins->inst_offset = (gint32)read32 (ip + 2);
+                               key = (gint32)read32 (ip + 2);
+                               g_assert (key < TLS_KEY_NUM);
+
+                               ins = mono_create_tls_get (cfg, key);
+                               if (!ins) {
+                                       if (cfg->compile_aot) {
+                                               cfg->disable_aot = TRUE;
+                                               MONO_INST_NEW (cfg, ins, OP_TLS_GET);
+                                               ins->dreg = alloc_preg (cfg);
+                                               ins->type = STACK_PTR;
+                                       } else {
+                                               g_assert_not_reached ();
+                                       }
+                               }
                                ins->type = STACK_PTR;
                                MONO_ADD_INS (bblock, ins);
                                *sp++ = ins;
                                ip += 6;
                                break;
+                       }
                        case CEE_MONO_DYN_CALL: {
                                MonoCallInst *call;
 
index 911ae23543bb1850676af910904125c620541fa4..22eb02e19020e322d3658f006002039b53f69f91 100644 (file)
@@ -149,7 +149,7 @@ static gpointer*
  */
 __attribute__ ((noinline))
 #endif
-mono_convert_imt_slot_to_vtable_slot (gpointer* slot, mgreg_t *regs, guint8 *code, MonoMethod *method, MonoMethod **impl_method, gboolean *need_rgctx_tramp, gboolean *variance_used, gpointer *aot_addr)
+       mono_convert_imt_slot_to_vtable_slot (gpointer* slot, mgreg_t *regs, guint8 *code, MonoMethod *method, gboolean lookup_aot, MonoMethod **impl_method, gboolean *need_rgctx_tramp, gboolean *variance_used, gpointer *aot_addr)
 {
        MonoObject *this_argument = mono_arch_get_this_arg_from_call (regs, code);
        MonoVTable *vt = this_argument->vtable;
@@ -191,7 +191,7 @@ mono_convert_imt_slot_to_vtable_slot (gpointer* slot, mgreg_t *regs, guint8 *cod
                        impl = mono_class_inflate_generic_method (impl, &context);
                } else {
                        /* Avoid loading metadata or creating a generic vtable if possible */
-                       if (!vt->klass->valuetype)
+                       if (lookup_aot && !vt->klass->valuetype)
                                *aot_addr = mono_aot_get_method_from_vt_slot (mono_domain_get (), vt, interface_offset + mono_method_get_vtable_slot (imt_method));
                        else
                                *aot_addr = NULL;
@@ -410,14 +410,8 @@ common_call_trampoline (mgreg_t *regs, guint8 *code, MonoMethod *m, guint8* tram
                    m = mono_object_get_virtual_method (this_arg, m);
                        vtable_slot_to_patch = NULL;
                } else {
-                       addr = NULL;
-                       vtable_slot = mono_convert_imt_slot_to_vtable_slot (vtable_slot, regs, code, m, &impl_method, &need_rgctx_tramp, &variance_used, &addr);
-                       /* This is the vcall slot which gets called through the IMT thunk */
-                       vtable_slot_to_patch = vtable_slot;
-                       /* mono_convert_imt_slot_to_vtable_slot () also gives us the method that is supposed
-                        * to be called, so we compile it and go ahead as usual.
-                        */
-                       /*g_print ("imt found method %p (%s) at %p\n", impl_method, impl_method->name, code);*/
+                       gboolean lookup_aot;
+
                        if (m->is_inflated && ((MonoMethodInflated*)m)->context.method_inst) {
                                /* Generic virtual method */
                                generic_virtual = m;
@@ -426,7 +420,18 @@ common_call_trampoline (mgreg_t *regs, guint8 *code, MonoMethod *m, guint8* tram
                                variant_iface = m;
                        }
 
-                       if (addr && !generic_virtual && !variant_iface) {
+                       addr = NULL;
+                       /* We can only use the AOT compiled code if we don't require further processing */
+                       lookup_aot = !generic_virtual & !variant_iface;
+                       vtable_slot = mono_convert_imt_slot_to_vtable_slot (vtable_slot, regs, code, m, lookup_aot, &impl_method, &need_rgctx_tramp, &variance_used, &addr);
+                       /* This is the vcall slot which gets called through the IMT thunk */
+                       vtable_slot_to_patch = vtable_slot;
+                       /* mono_convert_imt_slot_to_vtable_slot () also gives us the method that is supposed
+                        * to be called, so we compile it and go ahead as usual.
+                        */
+                       /*g_print ("imt found method %p (%s) at %p\n", impl_method, impl_method->name, code);*/
+
+                       if (addr) {
                                /*
                                 * We found AOT compiled code for the method, skip the rest.
                                 */
index 04a25569c54f846e8ef601808cf99de4e381e21e..42612570c3f17d2c0ae6d599384f5c2e9c592ad1 100644 (file)
@@ -153,6 +153,8 @@ gboolean disable_vtypes_in_regs = FALSE;
 
 gboolean mono_dont_free_global_codeman;
 
+static GSList *tramp_infos;
+
 gpointer
 mono_realloc_native_code (MonoCompile *cfg)
 {
@@ -382,6 +384,7 @@ mono_print_method_from_ip (void *ip)
        FindTrampUserData user_data;
        MonoGenericSharingContext*gsctx;
        const char *shared_type;
+       GSList *l;
        
        ji = mini_jit_info_table_find (domain, ip, &target_domain);
        if (!ji) {
@@ -394,9 +397,18 @@ mono_print_method_from_ip (void *ip)
                        char *mname = mono_method_full_name (user_data.method, TRUE);
                        printf ("IP %p is a JIT trampoline for %s\n", ip, mname);
                        g_free (mname);
+                       return;
                }
-               else
-                       g_print ("No method at %p\n", ip);
+               for (l = tramp_infos; l; l = l->next) {
+                       MonoTrampInfo *tinfo = l->data;
+
+                       if ((guint8*)ip >= tinfo->code && (guint8*)ip <= tinfo->code + tinfo->code_size) {
+                               printf ("IP %p is at offset 0x%x of trampoline '%s'.\n", ip, (int)((guint8*)ip - tinfo->code), tinfo->name);
+                               return;
+                       }
+               }
+
+               g_print ("No method at %p\n", ip);
                fflush (stdout);
                return;
        }
@@ -636,6 +648,26 @@ mono_tramp_info_free (MonoTrampInfo *info)
        g_free (info);
 }
 
+/*
+ * mono_tramp_info_register:
+ *
+ * Remember INFO for use by mono_print_method_from_ip ().
+ */
+void
+mono_tramp_info_register (MonoTrampInfo *info)
+{
+       MonoTrampInfo *copy;
+
+       copy = g_new0 (MonoTrampInfo, 1);
+       copy->code = info->code;
+       copy->code_size = info->code_size;
+       copy->name = g_strdup (info->name);
+
+       mono_loader_lock_if_inited ();
+       tramp_infos = g_slist_prepend (tramp_infos, copy);
+       mono_loader_unlock_if_inited ();
+}
+
 G_GNUC_UNUSED static void
 break_count (void)
 {
@@ -2856,7 +2888,7 @@ mini_thread_cleanup (MonoInternalThread *thread)
 }
 
 int
-mini_get_tls_offset (MonoJitTlsKey key)
+mini_get_tls_offset (MonoTlsKey key)
 {
        int offset;
 
@@ -2874,8 +2906,8 @@ mini_get_tls_offset (MonoJitTlsKey key)
                offset = mono_get_lmf_tls_offset ();
                break;
        default:
-               g_assert_not_reached ();
-               offset = -1;
+               offset = mono_tls_key_get_offset (key);
+               g_assert (offset != -1);
                break;
        }
        return offset;
@@ -2900,21 +2932,25 @@ mono_create_tls_get_offset (MonoCompile *cfg, int offset)
        return ins;
 }
 
-static MonoInst*
-mono_create_tls_get (MonoCompile *cfg, MonoJitTlsKey key)
+MonoInst*
+mono_create_tls_get (MonoCompile *cfg, MonoTlsKey key)
 {
        /*
         * TLS offsets might be different at AOT time, so load them from a GOT slot and
         * use a different opcode.
         */
-       if (cfg->compile_aot && MONO_ARCH_HAVE_TLS_GET && ARCH_HAVE_TLS_GET_REG) {
-               MonoInst *ins, *c;
-
-               EMIT_NEW_TLS_OFFSETCONST (cfg, c, key);
-               MONO_INST_NEW (cfg, ins, OP_TLS_GET_REG);
-               ins->dreg = mono_alloc_preg (cfg);
-               ins->sreg1 = c->dreg;
-               return ins;
+       if (cfg->compile_aot) {
+               if (MONO_ARCH_HAVE_TLS_GET && ARCH_HAVE_TLS_GET_REG) {
+                       MonoInst *ins, *c;
+
+                       EMIT_NEW_TLS_OFFSETCONST (cfg, c, key);
+                       MONO_INST_NEW (cfg, ins, OP_TLS_GET_REG);
+                       ins->dreg = mono_alloc_preg (cfg);
+                       ins->sreg1 = c->dreg;
+                       return ins;
+               } else {
+                       return NULL;
+               }
        }
 
        return mono_create_tls_get_offset (cfg, mini_get_tls_offset (key));
index 627cb2ae49e498caad8d072547424e80b0eeb510..e1c184fbee2712cbdd8277c3795e1d38e3e2a07f 100644 (file)
@@ -1051,16 +1051,6 @@ typedef struct {
        gboolean orig_ex_ctx_set;
 } MonoJitTlsData;
 
-/* TLS entries used by JITted code */
-typedef enum {
-       /* mono_thread_internal_current () */
-       TLS_KEY_THREAD = 0,
-       TLS_KEY_JIT_TLS = 1,
-       /* mono_domain_get () */
-       TLS_KEY_DOMAIN = 2,
-       TLS_KEY_LMF = 3
-} MonoJitTlsKey;
-
 /*
  * This structure is an extension of MonoLMF and contains extra information.
  */
@@ -1966,7 +1956,8 @@ MonoNativeTlsKey mono_get_jit_tls_key       (void) MONO_INTERNAL;
 gint32    mono_get_jit_tls_offset           (void) MONO_INTERNAL;
 gint32    mono_get_lmf_tls_offset           (void) MONO_INTERNAL;
 gint32    mono_get_lmf_addr_tls_offset      (void) MONO_INTERNAL;
-int       mini_get_tls_offset               (MonoJitTlsKey key) MONO_INTERNAL;
+int       mini_get_tls_offset               (MonoTlsKey key) MONO_INTERNAL;
+MonoInst* mono_create_tls_get               (MonoCompile *cfg, MonoTlsKey key) MONO_INTERNAL;
 MonoInst* mono_get_jit_tls_intrinsic        (MonoCompile *cfg) MONO_INTERNAL;
 MonoInst* mono_get_domain_intrinsic         (MonoCompile* cfg) MONO_INTERNAL;
 MonoInst* mono_get_thread_intrinsic         (MonoCompile* cfg) MONO_INTERNAL;
@@ -2189,6 +2180,7 @@ void              mono_emit_unwind_op (MonoCompile *cfg, int when,
                                                                           int val) MONO_INTERNAL;
 MonoTrampInfo*    mono_tramp_info_create (const char *name, guint8 *code, guint32 code_size, MonoJumpInfo *ji, GSList *unwind_ops) MONO_INTERNAL;
 void              mono_tramp_info_free (MonoTrampInfo *info) MONO_INTERNAL;
+void              mono_tramp_info_register (MonoTrampInfo *info) MONO_INTERNAL;
 
 int               mono_method_to_ir (MonoCompile *cfg, MonoMethod *method, MonoBasicBlock *start_bblock, MonoBasicBlock *end_bblock, 
                                                                         MonoInst *return_var, GList *dont_inline, MonoInst **inline_args, 
index 098ff5d4b2224cace181f5ee13b093c5f57fa077..b2fb35067a98f1138a964d8f583d4a1d81426298 100644 (file)
@@ -252,17 +252,20 @@ handle_reg_constraints (MonoCompile *cfg)
                cfg->cbb = bb;
                MONO_BB_FOR_EACH_INS (bb, ins) {
                        const char *spec = ins_get_spec (ins->opcode);
-                       int dest_sreg1, dest_sreg2, dest_dreg;
+                       int dest_sreg1, dest_sreg2, dest_sreg3, dest_dreg;
 
                        dest_sreg1 = MONO_ARCH_INST_FIXED_REG (spec [MONO_INST_SRC1]);
                        dest_sreg2 = MONO_ARCH_INST_FIXED_REG (spec [MONO_INST_SRC2]);
+                       dest_sreg3 = MONO_ARCH_INST_FIXED_REG (spec [MONO_INST_SRC3]);
                        dest_dreg = MONO_ARCH_INST_FIXED_REG (spec [MONO_INST_DEST]);
 
                        if (MONO_ARCH_INST_IS_REGPAIR (spec [MONO_INST_DEST]) ||
-                               MONO_ARCH_INST_IS_REGPAIR (spec [MONO_INST_SRC1]) ||
-                               MONO_ARCH_INST_IS_REGPAIR (spec [MONO_INST_SRC2]))
+                                       MONO_ARCH_INST_IS_REGPAIR (spec [MONO_INST_SRC1]) ||
+                                       MONO_ARCH_INST_IS_REGPAIR (spec [MONO_INST_SRC2]) ||
+                                       MONO_ARCH_INST_IS_REGPAIR (spec [MONO_INST_SRC3])) {
                                /* FIXME: */
                                g_assert_not_reached ();
+                       }
 
                        if (spec [MONO_INST_CLOB] == 'c') {
                                MonoCallInst *call = (MonoCallInst*)ins;
@@ -303,7 +306,7 @@ handle_reg_constraints (MonoCompile *cfg)
 
                        if (spec [MONO_INST_CLOB] == '1') {
                                /* Copying sreg1 to dreg could clobber sreg2 so make a copy of sreg2 */
-                               if (spec [MONO_INST_SRC2] && (ins->dreg == ins->sreg2)) {
+                               if (spec [MONO_INST_SRC2] != ' ' && (ins->dreg == ins->sreg2)) {
                                        int new_sreg2 = mono_alloc_preg (cfg);
                                        MonoInst *move;
                                        g_assert (spec [MONO_INST_DEST] != 'f');
@@ -312,6 +315,7 @@ handle_reg_constraints (MonoCompile *cfg)
                                        prev = move;
                                        ins->sreg2 = new_sreg2;
                                }
+                               g_assert (!(spec [MONO_INST_SRC3] != ' ' && (ins->dreg == ins->sreg3)));
                                if (spec [MONO_INST_DEST] == 'f')
                                        emit_fp_move (cfg, ins->dreg, ins->sreg1, prev);
                                else
@@ -329,6 +333,11 @@ handle_reg_constraints (MonoCompile *cfg)
                                ins->sreg2 = dest_sreg2;
                        }
 
+                       if (dest_sreg3 != -1) {
+                               emit_move (cfg, dest_sreg3, ins->sreg3, prev);
+                               ins->sreg3 = dest_sreg3;
+                       }
+
                        if (dest_dreg != -1) {
                                emit_move (cfg, ins->dreg, dest_dreg, ins);
                                g_assert (spec [MONO_INST_CLOB] != '1');
@@ -497,6 +506,13 @@ update_gen_kill_set (MonoCompile *cfg, MonoRegallocContext *ctx, MonoBasicBlock
                        mono_bitset_set_fast (bb->gen_set, sreg);
        }
 
+       /* SREG3 */
+       sreg = ins->sreg3;
+       if (spec [MONO_INST_SRC3] != ' ') {
+               if (!mono_bitset_test_fast (bb->kill_set, sreg))
+                       mono_bitset_set_fast (bb->gen_set, sreg);
+       }
+
        /* DREG */
        if (spec [MONO_INST_DEST] != ' ') {
                if (MONO_IS_STORE_MEMBASE (ins)) {
@@ -707,6 +723,17 @@ compute_live_in_out_sets (MonoCompile *cfg, MonoRegallocContext *ctx)
 #endif
 }
 
+static MonoLiveInterval*
+get_var_interval (MonoCompile *cfg, MonoRegallocContext *ctx, int idx)
+{
+       MonoLiveInterval *interval = ctx->varinfo [idx].interval;
+       if (interval)
+               return interval;
+       interval = mono_mempool_alloc0 (cfg->mempool, sizeof (MonoLiveInterval));
+       ctx->varinfo [idx].interval = interval;
+       return interval;
+}
+
 static inline void
 update_liveness (MonoCompile *cfg, MonoRegallocContext *ctx, MonoInst *ins, int inst_num, gint32 *last_use)
 {
@@ -730,9 +757,9 @@ update_liveness (MonoCompile *cfg, MonoRegallocContext *ctx, MonoInst *ins, int
                                         * Avoid a hole in the liveness range, since the allocation code
                                         * could think the register is free there.
                                         */
-                                       mono_linterval_add_range (ctx->cfg, ctx->varinfo [ins->dreg].interval, inst_num, last_use [ins->dreg]);
+                                       mono_linterval_add_range (ctx->cfg, get_var_interval (cfg, ctx, ins->dreg), inst_num, last_use [ins->dreg]);
                                } else {
-                                       mono_linterval_add_range (ctx->cfg, ctx->varinfo [ins->dreg].interval, inst_num + INS_POS_DEF, last_use [ins->dreg]);
+                                       mono_linterval_add_range (ctx->cfg, get_var_interval (cfg, ctx, ins->dreg), inst_num + INS_POS_DEF, last_use [ins->dreg]);
                                }
                                last_use [ins->dreg] = 0;
                        }
@@ -743,7 +770,7 @@ update_liveness (MonoCompile *cfg, MonoRegallocContext *ctx, MonoInst *ins, int
                                        spec = INS_INFO (ins->opcode);
                                } else {
                                        LIVENESS_DEBUG (printf ("\tdead def of R%d, add range to R%d: [%x, %x]\n", ins->dreg, ins->dreg, inst_num + INS_POS_DEF, inst_num + INS_POS_DEF));
-                                       mono_linterval_add_range (ctx->cfg, ctx->varinfo [ins->dreg].interval, inst_num + INS_POS_DEF, inst_num + INS_POS_DEF);
+                                       mono_linterval_add_range (ctx->cfg, get_var_interval (cfg, ctx, ins->dreg), inst_num + INS_POS_DEF, inst_num + INS_POS_DEF);
                                }
                        }
                }
@@ -789,6 +816,20 @@ update_liveness (MonoCompile *cfg, MonoRegallocContext *ctx, MonoInst *ins, int
                        last_use [sreg] = inst_num + INS_POS_USE;
                }
                ctx->varinfo [sreg].use_pos = g_slist_prepend_mempool (ctx->cfg->mempool, ctx->varinfo [sreg].use_pos, GINT_TO_POINTER (inst_num));
+
+       /* SREG3 */
+       sreg = ins->sreg3;
+       if (spec [MONO_INST_SRC3] != ' ') {
+               if (last_use [sreg] == 0) {
+                       LIVENESS_DEBUG (printf ("\tlast use of R%d set to %x\n", sreg, inst_num + INS_POS_USE));
+                       last_use [sreg] = inst_num + INS_POS_USE;
+               }
+               ctx->varinfo [sreg].use_pos = g_slist_prepend_mempool (ctx->cfg->mempool, ctx->varinfo [sreg].use_pos, GINT_TO_POINTER (inst_num));
+
+               /*
+               if (ins->sreg3 <= MONO_MAX_IREGS)
+                       mono_linterval_add_range (ctx->cfg, get_var_interval (cfg, ctx, ins->sreg3), inst_num + INS_POS_DEF, inst_num + INS_POS_DEF);
+               */
        }
 
        if (ins_get_spec (ins->opcode)[MONO_INST_CLOB] == 'c') {
@@ -830,15 +871,15 @@ update_liveness (MonoCompile *cfg, MonoRegallocContext *ctx, MonoInst *ins, int
                if (clob == 'c') {
                        /* A call clobbers some int/fp registers */
                        for (l = mono_arch_get_iregs_clobbered_by_call ((MonoCallInst*)ins); l; l = l->next)
-                               mono_linterval_add_range (ctx->cfg, ctx->varinfo [GPOINTER_TO_INT (l->data)].interval, inst_num + INS_POS_CLOB, inst_num + INS_POS_CLOB);
+                               mono_linterval_add_range (ctx->cfg, get_var_interval (cfg, ctx, GPOINTER_TO_INT (l->data)), inst_num + INS_POS_CLOB, inst_num + INS_POS_CLOB);
                        for (l = mono_arch_get_fregs_clobbered_by_call ((MonoCallInst*)ins); l; l = l->next)
-                               mono_linterval_add_range (ctx->cfg, ctx->varinfo [GPOINTER_TO_INT (l->data)].interval, inst_num + INS_POS_CLOB, inst_num + INS_POS_CLOB);
+                               mono_linterval_add_range (ctx->cfg, get_var_interval (cfg, ctx, GPOINTER_TO_INT (l->data)), inst_num + INS_POS_CLOB, inst_num + INS_POS_CLOB);
                }
                else {
                        int clob_reg = MONO_ARCH_INST_FIXED_REG (clob);
 
                        if (clob_reg != -1)
-                               mono_linterval_add_range (ctx->cfg, ctx->varinfo [clob_reg].interval, inst_num + INS_POS_CLOB, inst_num + INS_POS_CLOB);
+                               mono_linterval_add_range (ctx->cfg, get_var_interval (cfg, ctx, clob_reg), inst_num + INS_POS_CLOB, inst_num + INS_POS_CLOB);
                }
        }
 }
@@ -861,10 +902,6 @@ compute_intervals (MonoCompile *cfg, MonoRegallocContext *ctx)
        reverse_len = 1024;
        reverse = mono_mempool_alloc (cfg->mempool, sizeof (MonoInst*) * reverse_len);
 
-       for (idx = 0; idx < max_vars; ++idx) {
-               ctx->varinfo [idx].interval = mono_mempool_alloc0 (cfg->mempool, sizeof (MonoLiveInterval));
-       }
-
        /*
         * Process bblocks in reverse order, so the addition of new live ranges
         * to the intervals is faster.
@@ -931,7 +968,7 @@ compute_intervals (MonoCompile *cfg, MonoRegallocContext *ctx)
                        if (last_use [idx] != 0) {
                                /* Live at exit, not written -> live on enter */
                                LIVENESS_DEBUG (printf ("Var R%d live at enter, add range to R%d: [%x, %x)\n", idx, idx, block_from, last_use [idx]));
-                               mono_linterval_add_range (cfg, ctx->varinfo [idx].interval, block_from, last_use [idx]);
+                               mono_linterval_add_range (cfg, get_var_interval (cfg, ctx, idx), block_from, last_use [idx]);
                        }
                }
        }
@@ -946,14 +983,14 @@ compute_intervals (MonoCompile *cfg, MonoRegallocContext *ctx)
        for (i = 0; i < cfg->num_varinfo; i ++) {
                MonoMethodVar *vi = MONO_VARINFO (cfg, i);
                if ((cfg->varinfo [vi->idx]->opcode == OP_ARG) && (cfg->varinfo [vi->idx] != cfg->ret))
-                       mono_linterval_add_range (cfg, ctx->varinfo [cfg->varinfo [i]->dreg].interval, 0, 1);
+                       mono_linterval_add_range (cfg, get_var_interval (cfg, ctx, cfg->varinfo [i]->dreg), 0, 1);
        }
 #endif
 
 #if 0
                for (idx = 0; idx < max_vars; ++idx) {
                        printf ("LIVENESS R%d: ", idx);
-                       mono_linterval_print (ctx->varinfo [idx].interval);
+                       mono_linterval_print (get_var_interval (cfg, ctx, idx));
                        printf ("\n");
                }
        }
@@ -1204,7 +1241,7 @@ linear_scan (MonoCompile *cfg, MonoRegallocContext *ctx)
        /* Create list of allocatable variables */
        vars = NULL;
        for (i = MONO_FIRST_VREG; i < cfg->next_vreg; ++i) {
-               if (ctx->varinfo [i].interval->range)
+               if (get_var_interval (cfg, ctx, i)->range)
                        vars = g_list_prepend (vars, &ctx->varinfo [i]);
        }
 
@@ -1222,7 +1259,7 @@ linear_scan (MonoCompile *cfg, MonoRegallocContext *ctx)
        /* The hard registers are assigned to themselves */
        for (i = 0; i < MONO_MAX_IREGS + MONO_MAX_FREGS; ++i) {
                ctx->varinfo [i].hreg = i;
-               if (ctx->varinfo [i].interval->range)
+               if (get_var_interval (cfg, ctx, i)->range)
                        inactive = g_list_append (inactive, &ctx->varinfo [i]);         
        }
 
@@ -2207,6 +2244,12 @@ rewrite_code (MonoCompile *cfg, MonoRegallocContext *ctx)
                                ins->sreg2 = l->hreg;
                        }
 
+                       if (spec [MONO_INST_SRC3] != ' ') {
+                               MonoRegallocInterval *l = child_at (&ctx->varinfo [ins->sreg3], pos + INS_POS_USE);
+                               g_assert (l->hreg != -1);
+                               ins->sreg3 = l->hreg;
+                       }
+
                        if (cfg->verbose_level > 1)
                                mono_print_ins_index (1, ins);
 
index 517fe8e1d21a000d607c60f9e6159b0635c801bd..1166d803f58cdeaa42c707bbfc7cf18c567dabc1 100644 (file)
@@ -341,6 +341,8 @@ mono_save_xdebug_info (MonoCompile *cfg)
 void
 mono_save_trampoline_xdebug_info (MonoTrampInfo *info)
 {
+       mono_tramp_info_register (info);
+
        if (use_gdb_interface) {
                MonoImageWriter *w;
                MonoDwarfWriter *dw;
@@ -381,6 +383,7 @@ mono_save_xdebug_info (MonoCompile *cfg)
 void
 mono_save_trampoline_xdebug_info (MonoTrampInfo *info)
 {
+       mono_tramp_info_register (info);
 }
 
 #endif
index d1ef1ca8c91e545586ee9d6d10b438c6724415ed..1e2ac3eefc7410039b25a90f1cbb63fa97ac2f4f 100644 (file)
@@ -802,7 +802,9 @@ runtest: $(TESTSI_CS) $(TESTSI_IL) $(TESTBS) libtest.la $(PREREQSI_IL) $(PREREQS
        @failed=0; \
        passed=0; \
        failed_tests="";\
-       for i in $(TESTSI_CS) $(TESTBS) $(TESTSI_IL); do        \
+       rm -f testlist testlist.sorted; \
+       for i in $(TESTSI_CS) $(TESTBS) $(TESTSI_IL); do echo $${i} >> testlist; sort testlist > testlist.sorted; done; \
+       for i in `cat testlist.sorted`; do \
                rm -f $${i}.so; \
                if [ x$(AOT) = x1 ]; then if echo $(AOT_DISABLED_TESTS) | grep -v -q $${i}; then $(with_mono_path) $(JITTEST_PROG_RUN) --aot --debug $${i} > $${i}.aotlog 2>&1 || exit 1; fi; fi; \
                if $(srcdir)/test-driver '$(with_mono_path) $(JITTEST_PROG_RUN)' $$i '$(DISABLED_TESTS)' 'no-dump' $(RUNTIME_ARGS); \
@@ -815,6 +817,7 @@ runtest: $(TESTSI_CS) $(TESTSI_IL) $(TESTBS) libtest.la $(PREREQSI_IL) $(PREREQS
                fi \
        done; \
        echo "$${passed} test(s) passed. $${failed} test(s) did not pass."; \
+       rm -f testlist testlist.sorted; \
        if [ $${failed} != 0 ]; then echo -e "\nFailed tests:\n"; \
          for i in $${failed_tests}; do echo $${i}; done; exit 1; fi
 
index 166a4d1de2c08d3d6f530905e62d409740b177f1..aadf7adf7438f77b1ae5730d66532a7695dffc2f 100644 (file)
@@ -29,12 +29,7 @@ public class Tests {
        public static extern IntPtr mono_test_marshal_return_delegate_2 ();
 
        static int test_0_get_function_pointer_for_delegate () {
-               // This is a 2.0 feature
-               MethodInfo mi = typeof (Marshal).GetMethod ("GetFunctionPointerForDelegate");
-               if (mi == null)
-                       return 0;
-
-               IntPtr fnPtr = (IntPtr)mi.Invoke (null, new object [] { new SimpleDelegate (delegate_test)});
+               IntPtr fnPtr = Marshal.GetFunctionPointerForDelegate (new SimpleDelegate (delegate_test));
 
                if (mono_test_marshal_delegate (fnPtr) != 3)
                        return 1;
@@ -43,28 +38,18 @@ public class Tests {
        }
 
        static int test_0_get_delegate_for_function_pointer () {
-               // This is a 2.0 feature
-               MethodInfo mi = typeof (Marshal).GetMethod ("GetDelegateForFunctionPointer");
-               if (mi == null)
-                       return 0;
-
                IntPtr ptr = mono_test_marshal_return_delegate (new SimpleDelegate (delegate_test));
-               
-               SimpleDelegate d = (SimpleDelegate)mi.Invoke (null, new object [] { ptr, typeof (SimpleDelegate) });
+
+               SimpleDelegate d = (SimpleDelegate)Marshal.GetDelegateForFunctionPointer (ptr, typeof (SimpleDelegate));
 
                return d (5) == 6 ? 0 : 1;
        }
 
        /* Obtain a delegate from a native function pointer */
        static int test_0_get_delegate_for_ftnptr_native () {
-               // This is a 2.0 feature
-               MethodInfo mi = typeof (Marshal).GetMethod ("GetDelegateForFunctionPointer");
-               if (mi == null)
-                       return 0;
-
                IntPtr ptr = mono_test_marshal_return_delegate_2 ();
 
-               SimpleDelegate d = (SimpleDelegate)mi.Invoke (null, new object [] { ptr, typeof (SimpleDelegate) });
+               SimpleDelegate d = (SimpleDelegate)Marshal.GetDelegateForFunctionPointer (ptr, typeof (SimpleDelegate));
 
                return d (5) == 6 ? 0 : 1;
        }
index 8eefcda5ca5498bc7414f6f58863d1e1e28451b8..95f2fa0c10ddbce76342c6176dd4f38130bcecbc 100644 (file)
@@ -100,6 +100,7 @@ monoutils_sources = \
        mono-threads-windows.c  \
        mono-threads.h  \
        mono-tls.h      \
+       mono-tls.c      \
        linux_magic.h   \
        mono-memory-model.h     \
        atomic.h        \
index 59287aac7758e79bb207d64fc5137f2aae134ded..f83272f88e651859ccdb4cedcf19bdfbf1eeb1e2 100644 (file)
@@ -24,7 +24,7 @@
 /* Use mmap for allocating memory */
 #define HAVE_MORECORE 0
 #define NO_MALLINFO 1
-#include <dlmalloc.h>
+#include <mono/utils/dlmalloc.h>
 
 /*
 * Quickstart
index 56f5ea90addbdf83bfe8f6a4440d71a568b23b8e..6772dacfd503424548de5370bfb2792b81bb32c6 100644 (file)
 /* Deal with Microsoft C compiler differences */
 #ifdef _MSC_VER
 
+#include <math.h>
 #include <float.h>
 #define isnan(x)       _isnan(x)
 #define trunc(x)       (((x) < 0) ? ceil((x)) : floor((x)))
index 87bf9ca899e7c8462bcbca353e73a060e294dcf4..f039ec28e4ea2f3a7cd49a9c1438c695b7f1c969 100644 (file)
@@ -49,9 +49,9 @@ mono_hwcap_arch_init (void)
         * in turn means a v9 or better.
         */
        if (getpagesize () == 8192)
-               strcpy (buf, "sparcv9")
+               strcpy (buf, "sparcv9");
        else
-               strcpy (buf, "sparcv8")
+               strcpy (buf, "sparcv8");
 #endif
 
        mono_hwcap_sparc_is_v9 = strstr (buf, "sparcv9");
diff --git a/mono/utils/mono-tls.c b/mono/utils/mono-tls.c
new file mode 100644 (file)
index 0000000..890f078
--- /dev/null
@@ -0,0 +1,35 @@
+/*
+ * mono-tls.c: Low-level TLS support
+ *
+ * Copyright 2013 Xamarin, Inc (http://www.xamarin.com)
+ */
+
+#include "mono-tls.h"
+
+static int tls_offsets [TLS_KEY_NUM];
+static gboolean tls_offset_set [TLS_KEY_NUM];
+
+/*
+ * mono_tls_key_get_offset:
+ *
+ *   Return the TLS offset used by the TLS var identified by KEY, previously initialized by a call to
+ * mono_tls_key_set_offset (). Return -1 if the offset is not known.
+ */
+int
+mono_tls_key_get_offset (MonoTlsKey key)
+{
+       g_assert (tls_offset_set [key]);
+       return tls_offsets [key];
+}
+
+/*
+ * mono_tls_key_set_offset:
+ *
+ *   Set the TLS offset used by the TLS var identified by KEY.
+ */
+void
+mono_tls_key_set_offset (MonoTlsKey key, int offset)
+{
+       tls_offsets [key] = offset;
+       tls_offset_set [key] = TRUE;
+}
index c38708469f34d6adea5f7c3244f21e1158fb2eb2..7622c6dae4641a8b690b769d0d731c9ee8bdbb0c 100644 (file)
 #ifndef __MONO_TLS_H__
 #define __MONO_TLS_H__
 
+#include <glib.h>
+
+/* TLS entries used by the runtime */
+typedef enum {
+       /* mono_thread_internal_current () */
+       TLS_KEY_THREAD = 0,
+       TLS_KEY_JIT_TLS = 1,
+       /* mono_domain_get () */
+       TLS_KEY_DOMAIN = 2,
+       TLS_KEY_LMF = 3,
+       TLS_KEY_SGEN_THREAD_INFO = 4,
+       TLS_KEY_SGEN_TLAB_NEXT_ADDR = 5,
+       TLS_KEY_SGEN_TLAB_TEMP_END = 6,
+       TLS_KEY_BOEHM_GC_THREAD = 7,
+       TLS_KEY_NUM = 8
+} MonoTlsKey;
 
 #ifdef HOST_WIN32
 
@@ -49,5 +65,7 @@ mono_native_tls_set_value (MonoNativeTlsKey key, gpointer value)
 
 #endif /* HOST_WIN32 */
 
+int mono_tls_key_get_offset (MonoTlsKey key);
+void mono_tls_key_set_offset (MonoTlsKey key, int offset);
 
 #endif /* __MONO_TLS_H__ */
index b7edc5e83f14ab25ef37881ab9c89b1282a8299b..048d96d0c63d6723b81b6120ffddec870034e0aa 100644 (file)
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>\r
-<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
   <ItemGroup Label="ProjectConfigurations">\r
     <ProjectConfiguration Include="Debug|Win32">\r
       <Configuration>Debug</Configuration>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">\r
     <ConfigurationType>StaticLibrary</ConfigurationType>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v110</PlatformToolset>\r
+    <PlatformToolset>v120</PlatformToolset>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">\r
     <ConfigurationType>StaticLibrary</ConfigurationType>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v110</PlatformToolset>\r
+    <PlatformToolset>v120</PlatformToolset>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">\r
     <ConfigurationType>StaticLibrary</ConfigurationType>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v110</PlatformToolset>\r
+    <PlatformToolset>v120</PlatformToolset>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">\r
     <ConfigurationType>StaticLibrary</ConfigurationType>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v110</PlatformToolset>\r
+    <PlatformToolset>v120</PlatformToolset>\r
   </PropertyGroup>\r
   <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />\r
   <ImportGroup Label="ExtensionSettings">\r
index aa5e37085ac9208e9ee72ea9bef3007976039225..37f1d70dfc3173e73902954c2a63c4dbc7df7443 100644 (file)
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>\r
-<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
   <ItemGroup Label="ProjectConfigurations">\r
     <ProjectConfiguration Include="Debug|Win32">\r
       <Configuration>Debug</Configuration>\r
     <ConfigurationType>Application</ConfigurationType>\r
     <UseOfMfc>false</UseOfMfc>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v110</PlatformToolset>\r
+    <PlatformToolset>v120</PlatformToolset>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">\r
     <ConfigurationType>Application</ConfigurationType>\r
     <UseOfMfc>false</UseOfMfc>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v110</PlatformToolset>\r
+    <PlatformToolset>v120</PlatformToolset>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">\r
     <ConfigurationType>Application</ConfigurationType>\r
     <UseOfMfc>false</UseOfMfc>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v110</PlatformToolset>\r
+    <PlatformToolset>v120</PlatformToolset>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">\r
     <ConfigurationType>Application</ConfigurationType>\r
     <UseOfMfc>false</UseOfMfc>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v110</PlatformToolset>\r
+    <PlatformToolset>v120</PlatformToolset>\r
   </PropertyGroup>\r
   <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />\r
   <ImportGroup Label="ExtensionSettings">\r
index 1b2327d7564859b62f5dffab7d188965af9057ec..f5cf3627df74acdd4f11e4309f98dae74c1c9d28 100644 (file)
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>\r
-<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
   <ItemGroup Label="ProjectConfigurations">\r
     <ProjectConfiguration Include="Debug|Win32">\r
       <Configuration>Debug</Configuration>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">\r
     <ConfigurationType>StaticLibrary</ConfigurationType>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v110</PlatformToolset>\r
+    <PlatformToolset>v120</PlatformToolset>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">\r
     <ConfigurationType>StaticLibrary</ConfigurationType>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v110</PlatformToolset>\r
+    <PlatformToolset>v120</PlatformToolset>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">\r
     <ConfigurationType>StaticLibrary</ConfigurationType>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v110</PlatformToolset>\r
+    <PlatformToolset>v120</PlatformToolset>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">\r
     <ConfigurationType>StaticLibrary</ConfigurationType>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v110</PlatformToolset>\r
+    <PlatformToolset>v120</PlatformToolset>\r
   </PropertyGroup>\r
   <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />\r
   <ImportGroup Label="ExtensionSettings">\r
index d818b95c7db33a91da1a827fdb733703db46e174..ceb0619d28c0c57f4444ea45b25c7e6720a77346 100644 (file)
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>\r
-<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
   <ItemGroup Label="ProjectConfigurations">\r
     <ProjectConfiguration Include="Debug_SGen|Win32">\r
       <Configuration>Debug_SGen</Configuration>\r
     <ConfigurationType>DynamicLibrary</ConfigurationType>\r
     <UseOfMfc>false</UseOfMfc>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v110</PlatformToolset>\r
+    <PlatformToolset>v120</PlatformToolset>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release_SGen|Win32'" Label="Configuration">\r
     <ConfigurationType>DynamicLibrary</ConfigurationType>\r
     <UseOfMfc>false</UseOfMfc>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v110</PlatformToolset>\r
+    <PlatformToolset>v120</PlatformToolset>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">\r
     <ConfigurationType>DynamicLibrary</ConfigurationType>\r
     <UseOfMfc>false</UseOfMfc>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v110</PlatformToolset>\r
+    <PlatformToolset>v120</PlatformToolset>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug_SGen|Win32'" Label="Configuration">\r
     <ConfigurationType>DynamicLibrary</ConfigurationType>\r
     <UseOfMfc>false</UseOfMfc>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v110</PlatformToolset>\r
+    <PlatformToolset>v120</PlatformToolset>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">\r
     <ConfigurationType>DynamicLibrary</ConfigurationType>\r
     <UseOfMfc>false</UseOfMfc>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v110</PlatformToolset>\r
+    <PlatformToolset>v120</PlatformToolset>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release_SGen|x64'" Label="Configuration">\r
     <ConfigurationType>DynamicLibrary</ConfigurationType>\r
     <UseOfMfc>false</UseOfMfc>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v110</PlatformToolset>\r
+    <PlatformToolset>v120</PlatformToolset>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">\r
     <ConfigurationType>DynamicLibrary</ConfigurationType>\r
     <UseOfMfc>false</UseOfMfc>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v110</PlatformToolset>\r
+    <PlatformToolset>v120</PlatformToolset>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug_SGen|x64'" Label="Configuration">\r
     <ConfigurationType>DynamicLibrary</ConfigurationType>\r
     <UseOfMfc>false</UseOfMfc>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v110</PlatformToolset>\r
+    <PlatformToolset>v120</PlatformToolset>\r
   </PropertyGroup>\r
   <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />\r
   <ImportGroup Label="ExtensionSettings">\r
index 4e72f6ad1a6b2658b75078dbbf0c040f7615e4aa..3ad4ff659156c03dce78025f41c2b2fec53d48b0 100644 (file)
     <ClCompile Include="..\mono\metadata\sgen-toggleref.c" />\r
     <ClCompile Include="..\mono\metadata\sgen-workers.c" />\r
     <ClCompile Include="..\mono\metadata\sgen-fin-weak-hash.c" />\r
-    <ClCompile Include="..\mono\metadata\sgen-bridge.c" />\r
     <ClCompile Include="..\mono\metadata\sgen-stw.c" />\r
     <ClCompile Include="..\mono\metadata\socket-io.c" />\r
     <ClCompile Include="..\mono\metadata\string-icalls.c" />\r
     <ConfigurationType>StaticLibrary</ConfigurationType>\r
     <UseDebugLibraries>true</UseDebugLibraries>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v110</PlatformToolset>\r
+    <PlatformToolset>v120</PlatformToolset>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug_SGen|Win32'" Label="Configuration">\r
     <ConfigurationType>StaticLibrary</ConfigurationType>\r
     <UseDebugLibraries>true</UseDebugLibraries>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v110</PlatformToolset>\r
+    <PlatformToolset>v120</PlatformToolset>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">\r
     <ConfigurationType>StaticLibrary</ConfigurationType>\r
     <ConfigurationType>StaticLibrary</ConfigurationType>\r
     <UseDebugLibraries>false</UseDebugLibraries>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v110</PlatformToolset>\r
+    <PlatformToolset>v120</PlatformToolset>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release_SGen|Win32'" Label="Configuration">\r
     <ConfigurationType>StaticLibrary</ConfigurationType>\r
     <UseDebugLibraries>false</UseDebugLibraries>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v110</PlatformToolset>\r
+    <PlatformToolset>v120</PlatformToolset>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">\r
     <ConfigurationType>StaticLibrary</ConfigurationType>\r
index d4e76000a8b8a804cf1f6b645e4bf8a371ac5b22..8c3ef282414391c568927e6c54bb370b7b0c2130 100644 (file)
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>\r
-<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
   <ItemGroup Label="ProjectConfigurations">\r
     <ProjectConfiguration Include="Debug|Win32">\r
       <Configuration>Debug</Configuration>\r
     <ConfigurationType>StaticLibrary</ConfigurationType>\r
     <UseDebugLibraries>true</UseDebugLibraries>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v110</PlatformToolset>\r
+    <PlatformToolset>v120</PlatformToolset>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">\r
     <ConfigurationType>StaticLibrary</ConfigurationType>\r
     <UseDebugLibraries>true</UseDebugLibraries>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v110</PlatformToolset>\r
+    <PlatformToolset>v120</PlatformToolset>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">\r
     <ConfigurationType>StaticLibrary</ConfigurationType>\r
     <UseDebugLibraries>false</UseDebugLibraries>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v110</PlatformToolset>\r
+    <PlatformToolset>v120</PlatformToolset>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">\r
     <ConfigurationType>StaticLibrary</ConfigurationType>\r
     <UseDebugLibraries>false</UseDebugLibraries>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v110</PlatformToolset>\r
+    <PlatformToolset>v120</PlatformToolset>\r
   </PropertyGroup>\r
   <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />\r
   <ImportGroup Label="ExtensionSettings">\r
index fbe0a89b0325f00445969557a883c423f52e061d..b0b447bc8c2c978e1667c27a17999ed47748bdf7 100644 (file)
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>\r
-<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
   <ItemGroup Label="ProjectConfigurations">\r
     <ProjectConfiguration Include="Debug|Win32">\r
       <Configuration>Debug</Configuration>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">\r
     <ConfigurationType>DynamicLibrary</ConfigurationType>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v110</PlatformToolset>\r
+    <PlatformToolset>v120</PlatformToolset>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">\r
     <ConfigurationType>DynamicLibrary</ConfigurationType>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v110</PlatformToolset>\r
+    <PlatformToolset>v120</PlatformToolset>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">\r
     <ConfigurationType>DynamicLibrary</ConfigurationType>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v110</PlatformToolset>\r
+    <PlatformToolset>v120</PlatformToolset>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">\r
     <ConfigurationType>DynamicLibrary</ConfigurationType>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v110</PlatformToolset>\r
+    <PlatformToolset>v120</PlatformToolset>\r
   </PropertyGroup>\r
   <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />\r
   <ImportGroup Label="ExtensionSettings">\r
index 56eb4665d80c1f82f86af3d444836f0107de9e4b..3ecf25bff1e7ea2cac166a736f947f6a5ce88391 100644 (file)
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>\r
-<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
   <ItemGroup Label="ProjectConfigurations">\r
     <ProjectConfiguration Include="Debug_SGen|Win32">\r
       <Configuration>Debug_SGen</Configuration>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">\r
     <ConfigurationType>Application</ConfigurationType>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v110</PlatformToolset>\r
+    <PlatformToolset>v120</PlatformToolset>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release_SGen|Win32'" Label="Configuration">\r
     <ConfigurationType>Application</ConfigurationType>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v110</PlatformToolset>\r
+    <PlatformToolset>v120</PlatformToolset>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">\r
     <ConfigurationType>Application</ConfigurationType>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v110</PlatformToolset>\r
+    <PlatformToolset>v120</PlatformToolset>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug_SGen|Win32'" Label="Configuration">\r
     <ConfigurationType>Application</ConfigurationType>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v110</PlatformToolset>\r
+    <PlatformToolset>v120</PlatformToolset>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">\r
     <ConfigurationType>Application</ConfigurationType>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v110</PlatformToolset>\r
+    <PlatformToolset>v120</PlatformToolset>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release_SGen|x64'" Label="Configuration">\r
     <ConfigurationType>Application</ConfigurationType>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v110</PlatformToolset>\r
+    <PlatformToolset>v120</PlatformToolset>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">\r
     <ConfigurationType>Application</ConfigurationType>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v110</PlatformToolset>\r
+    <PlatformToolset>v120</PlatformToolset>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug_SGen|x64'" Label="Configuration">\r
     <ConfigurationType>Application</ConfigurationType>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v110</PlatformToolset>\r
+    <PlatformToolset>v120</PlatformToolset>\r
   </PropertyGroup>\r
   <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />\r
   <ImportGroup Label="ExtensionSettings">\r
index 2dd2d2631f83839133ae8a17269465685d3dddcc..b4b2c4e5d80ff5c1a97820c2774a9a6a27eabadc 100644 (file)
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>\r
-<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
   <ItemGroup Label="ProjectConfigurations">\r
     <ProjectConfiguration Include="Debug|Win32">\r
       <Configuration>Debug</Configuration>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">\r
     <ConfigurationType>Application</ConfigurationType>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v110</PlatformToolset>\r
+    <PlatformToolset>v120</PlatformToolset>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">\r
     <ConfigurationType>Application</ConfigurationType>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v110</PlatformToolset>\r
+    <PlatformToolset>v120</PlatformToolset>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">\r
     <ConfigurationType>Application</ConfigurationType>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v110</PlatformToolset>\r
+    <PlatformToolset>v120</PlatformToolset>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">\r
     <ConfigurationType>Application</ConfigurationType>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v110</PlatformToolset>\r
+    <PlatformToolset>v120</PlatformToolset>\r
   </PropertyGroup>\r
   <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />\r
   <ImportGroup Label="ExtensionSettings">\r
index 17ff95c816e9d9c74b8c6a837b016f257a047158..b9cae332c8e15b2f6857590b2f797d5dc4381b44 100644 (file)
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>\r
-<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
   <ItemGroup Label="ProjectConfigurations">\r
     <ProjectConfiguration Include="Debug|Win32">\r
       <Configuration>Debug</Configuration>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">\r
     <ConfigurationType>Application</ConfigurationType>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v110</PlatformToolset>\r
+    <PlatformToolset>v120</PlatformToolset>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">\r
     <ConfigurationType>Application</ConfigurationType>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v110</PlatformToolset>\r
+    <PlatformToolset>v120</PlatformToolset>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">\r
     <ConfigurationType>Application</ConfigurationType>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v110</PlatformToolset>\r
+    <PlatformToolset>v120</PlatformToolset>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">\r
     <ConfigurationType>Application</ConfigurationType>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v110</PlatformToolset>\r
+    <PlatformToolset>v120</PlatformToolset>\r
   </PropertyGroup>\r
   <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />\r
   <ImportGroup Label="ExtensionSettings">\r
index d8e0599e91db63e0e63403959df5173350f60f4a..f77df6ffae81890739e5eadd50d0029204d392c4 100644 (file)
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>\r
-<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
   <ItemGroup Label="ProjectConfigurations">\r
     <ProjectConfiguration Include="Debug|Win32">\r
       <Configuration>Debug</Configuration>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">\r
     <ConfigurationType>Application</ConfigurationType>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v110</PlatformToolset>\r
+    <PlatformToolset>v120</PlatformToolset>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">\r
     <ConfigurationType>Application</ConfigurationType>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v110</PlatformToolset>\r
+    <PlatformToolset>v120</PlatformToolset>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">\r
     <ConfigurationType>Application</ConfigurationType>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v110</PlatformToolset>\r
+    <PlatformToolset>v120</PlatformToolset>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">\r
     <ConfigurationType>Application</ConfigurationType>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v110</PlatformToolset>\r
+    <PlatformToolset>v120</PlatformToolset>\r
   </PropertyGroup>\r
   <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />\r
   <ImportGroup Label="ExtensionSettings">\r
index edb6ce136eb566eb68086e609a8f423187de3aa3..aafc552c829544f2195ebb41e7bc6e90c79e7cb6 100644 (file)
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>\r
-<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
   <ItemGroup Label="ProjectConfigurations">\r
     <ProjectConfiguration Include="Debug|Win32">\r
       <Configuration>Debug</Configuration>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">\r
     <ConfigurationType>DynamicLibrary</ConfigurationType>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v110</PlatformToolset>\r
+    <PlatformToolset>v120</PlatformToolset>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">\r
     <ConfigurationType>DynamicLibrary</ConfigurationType>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v110</PlatformToolset>\r
+    <PlatformToolset>v120</PlatformToolset>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">\r
     <ConfigurationType>DynamicLibrary</ConfigurationType>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v110</PlatformToolset>\r
+    <PlatformToolset>v120</PlatformToolset>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">\r
     <ConfigurationType>DynamicLibrary</ConfigurationType>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v110</PlatformToolset>\r
+    <PlatformToolset>v120</PlatformToolset>\r
   </PropertyGroup>\r
   <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />\r
   <ImportGroup Label="ExtensionSettings">\r
index 1116f3b890428b15405e4859fbc5fbb7ac100990..5e57c01b5dd91ad006d1752bfd865ecd40daa186 100644 (file)
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>\r
-<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
   <ItemGroup Label="ProjectConfigurations">\r
     <ProjectConfiguration Include="Debug|Win32">\r
       <Configuration>Debug</Configuration>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">\r
     <ConfigurationType>Application</ConfigurationType>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v110</PlatformToolset>\r
+    <PlatformToolset>v120</PlatformToolset>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">\r
     <ConfigurationType>Application</ConfigurationType>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v110</PlatformToolset>\r
+    <PlatformToolset>v120</PlatformToolset>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">\r
     <ConfigurationType>Application</ConfigurationType>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v110</PlatformToolset>\r
+    <PlatformToolset>v120</PlatformToolset>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">\r
     <ConfigurationType>Application</ConfigurationType>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v110</PlatformToolset>\r
+    <PlatformToolset>v120</PlatformToolset>\r
   </PropertyGroup>\r
   <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />\r
   <ImportGroup Label="ExtensionSettings">\r
index ee2255af874d113d6651dac8df28f69f87ae5771..d9d013ce515de9a5e2d235fdef6b1284ceb186ec 100644 (file)
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>\r
-<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
   <ItemGroup Label="ProjectConfigurations">\r
     <ProjectConfiguration Include="Debug|Win32">\r
       <Configuration>Debug</Configuration>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">\r
     <ConfigurationType>DynamicLibrary</ConfigurationType>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v110</PlatformToolset>\r
+    <PlatformToolset>v120</PlatformToolset>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">\r
     <ConfigurationType>DynamicLibrary</ConfigurationType>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v110</PlatformToolset>\r
+    <PlatformToolset>v120</PlatformToolset>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">\r
     <ConfigurationType>DynamicLibrary</ConfigurationType>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v110</PlatformToolset>\r
+    <PlatformToolset>v120</PlatformToolset>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">\r
     <ConfigurationType>DynamicLibrary</ConfigurationType>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v110</PlatformToolset>\r
+    <PlatformToolset>v120</PlatformToolset>\r
   </PropertyGroup>\r
   <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />\r
   <ImportGroup Label="ExtensionSettings">\r
index d24d2858aa2a5c0759e5a4f87d6439c715cc3979..da7aaa3e67d3ac38c1f6ad4a5b463f4c52b5fd44 100644 (file)
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>\r
-<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
   <ItemGroup Label="ProjectConfigurations">\r
     <ProjectConfiguration Include="Debug|Win32">\r
       <Configuration>Debug</Configuration>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">\r
     <ConfigurationType>DynamicLibrary</ConfigurationType>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v110</PlatformToolset>\r
+    <PlatformToolset>v120</PlatformToolset>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">\r
     <ConfigurationType>DynamicLibrary</ConfigurationType>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v110</PlatformToolset>\r
+    <PlatformToolset>v120</PlatformToolset>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">\r
     <ConfigurationType>DynamicLibrary</ConfigurationType>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v110</PlatformToolset>\r
+    <PlatformToolset>v120</PlatformToolset>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">\r
     <ConfigurationType>DynamicLibrary</ConfigurationType>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v110</PlatformToolset>\r
+    <PlatformToolset>v120</PlatformToolset>\r
   </PropertyGroup>\r
   <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />\r
   <ImportGroup Label="ExtensionSettings">\r
index 5038b830f871e0a07f5258ba5cfd152191af2764..22a2c1bdaedeb5e7f38cc3b393b0efb9a78c14be 100644 (file)
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>\r
-<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
   <ItemGroup Label="ProjectConfigurations">\r
     <ProjectConfiguration Include="Debug|Win32">\r
       <Configuration>Debug</Configuration>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">\r
     <ConfigurationType>DynamicLibrary</ConfigurationType>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v110</PlatformToolset>\r
+    <PlatformToolset>v120</PlatformToolset>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">\r
     <ConfigurationType>DynamicLibrary</ConfigurationType>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v110</PlatformToolset>\r
+    <PlatformToolset>v120</PlatformToolset>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">\r
     <ConfigurationType>DynamicLibrary</ConfigurationType>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v110</PlatformToolset>\r
+    <PlatformToolset>v120</PlatformToolset>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">\r
     <ConfigurationType>DynamicLibrary</ConfigurationType>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v110</PlatformToolset>\r
+    <PlatformToolset>v120</PlatformToolset>\r
   </PropertyGroup>\r
   <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />\r
   <ImportGroup Label="ExtensionSettings">\r
index 60faa3ffd7b84a1aa942f521cdfc55cdd9a66f15..582cca988bcb30ff7a6a17a487f1afb3e8db89f4 100644 (file)
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>\r
-<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
   <ItemGroup Label="ProjectConfigurations">\r
     <ProjectConfiguration Include="Debug|Win32">\r
       <Configuration>Debug</Configuration>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">\r
     <ConfigurationType>DynamicLibrary</ConfigurationType>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v110</PlatformToolset>\r
+    <PlatformToolset>v120</PlatformToolset>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">\r
     <ConfigurationType>DynamicLibrary</ConfigurationType>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v110</PlatformToolset>\r
+    <PlatformToolset>v120</PlatformToolset>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">\r
     <ConfigurationType>DynamicLibrary</ConfigurationType>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v110</PlatformToolset>\r
+    <PlatformToolset>v120</PlatformToolset>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">\r
     <ConfigurationType>DynamicLibrary</ConfigurationType>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v110</PlatformToolset>\r
+    <PlatformToolset>v120</PlatformToolset>\r
   </PropertyGroup>\r
   <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />\r
   <ImportGroup Label="ExtensionSettings">\r
index 161940e62f42b2816952d4128fb6820ae5d7f685..ecfc8d6953c2c425241da579a84e2ce28e4d254a 100644 (file)
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>\r
-<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
   <ItemGroup Label="ProjectConfigurations">\r
     <ProjectConfiguration Include="Debug|Win32">\r
       <Configuration>Debug</Configuration>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">\r
     <ConfigurationType>Application</ConfigurationType>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v110</PlatformToolset>\r
+    <PlatformToolset>v120</PlatformToolset>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">\r
     <ConfigurationType>Application</ConfigurationType>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v110</PlatformToolset>\r
+    <PlatformToolset>v120</PlatformToolset>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">\r
     <ConfigurationType>Application</ConfigurationType>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v110</PlatformToolset>\r
+    <PlatformToolset>v120</PlatformToolset>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">\r
     <ConfigurationType>Application</ConfigurationType>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v110</PlatformToolset>\r
+    <PlatformToolset>v120</PlatformToolset>\r
   </PropertyGroup>\r
   <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />\r
   <ImportGroup Label="ExtensionSettings">\r
index 51e48f432a89758fd09c8da677f5e0e150c1354a..3159e42dbb82f9e1cca8e6ccd4a1fa93f00d1eba 100644 (file)
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>\r
-<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
   <ItemGroup Label="ProjectConfigurations">\r
     <ProjectConfiguration Include="Debug|Win32">\r
       <Configuration>Debug</Configuration>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">\r
     <ConfigurationType>Application</ConfigurationType>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v110</PlatformToolset>\r
+    <PlatformToolset>v120</PlatformToolset>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">\r
     <ConfigurationType>Application</ConfigurationType>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v110</PlatformToolset>\r
+    <PlatformToolset>v120</PlatformToolset>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">\r
     <ConfigurationType>Application</ConfigurationType>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v110</PlatformToolset>\r
+    <PlatformToolset>v120</PlatformToolset>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">\r
     <ConfigurationType>Application</ConfigurationType>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v110</PlatformToolset>\r
+    <PlatformToolset>v120</PlatformToolset>\r
   </PropertyGroup>\r
   <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />\r
   <ImportGroup Label="ExtensionSettings">\r
index f87a9c2c97617a4b120da334b365a9d5c1f147c0..69a9aefb9c0520e2952dd187cb6317620c5e553e 100644 (file)
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>\r
-<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
   <ItemGroup Label="ProjectConfigurations">\r
     <ProjectConfiguration Include="Debug|Win32">\r
       <Configuration>Debug</Configuration>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">\r
     <ConfigurationType>Application</ConfigurationType>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v110</PlatformToolset>\r
+    <PlatformToolset>v120</PlatformToolset>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">\r
     <ConfigurationType>Application</ConfigurationType>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v110</PlatformToolset>\r
+    <PlatformToolset>v120</PlatformToolset>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">\r
     <ConfigurationType>Application</ConfigurationType>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v110</PlatformToolset>\r
+    <PlatformToolset>v120</PlatformToolset>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">\r
     <ConfigurationType>Application</ConfigurationType>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v110</PlatformToolset>\r
+    <PlatformToolset>v120</PlatformToolset>\r
   </PropertyGroup>\r
   <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />\r
   <ImportGroup Label="ExtensionSettings">\r
index 19a6dcb76d6e8a0fe4e009831f990325f70125cf..8ec30a352f2d7ebbb1973164d584c3c912448348 100644 (file)
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>\r
-<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
   <ItemGroup Label="ProjectConfigurations">\r
     <ProjectConfiguration Include="Debug|Win32">\r
       <Configuration>Debug</Configuration>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">\r
     <ConfigurationType>Application</ConfigurationType>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v110</PlatformToolset>\r
+    <PlatformToolset>v120</PlatformToolset>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">\r
     <ConfigurationType>Application</ConfigurationType>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v110</PlatformToolset>\r
+    <PlatformToolset>v120</PlatformToolset>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">\r
     <ConfigurationType>Application</ConfigurationType>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v110</PlatformToolset>\r
+    <PlatformToolset>v120</PlatformToolset>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">\r
     <ConfigurationType>Application</ConfigurationType>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v110</PlatformToolset>\r
+    <PlatformToolset>v120</PlatformToolset>\r
   </PropertyGroup>\r
   <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />\r
   <ImportGroup Label="ExtensionSettings">\r
index b24739fa686de7d203056aa7670c081f7abaab4f..c339ebced737526b4eed078345d66c4f46d9ae61 100644 (file)
@@ -32,7 +32,6 @@ MPH_UNIX_SOURCE =                             \
        fstab.c                                 \
        grp.c                                   \
        macros.c                                \
-       mac-reachability.c                      \
        nl.c                                    \
        nl.h                                    \
        old-map.c                               \
@@ -116,10 +115,6 @@ libMonoPosixHelper_la_LIBADD =                     \
 libMonoPosixHelper_la_LDFLAGS = -no-undefined -avoid-version
 libMonoSupportW_la_LDFLAGS = -no-undefined -avoid-version
 
-if PLATFORM_DARWIN
-libMonoPosixHelper_la_LDFLAGS += -framework CoreFoundation -framework SystemConfiguration
-endif
-
 libMonoSupportW_la_SOURCES =                   \
                supportw.c                      \
                support-heap.c                  \
diff --git a/support/mac-reachability.c b/support/mac-reachability.c
deleted file mode 100644 (file)
index c2499f5..0000000
+++ /dev/null
@@ -1,153 +0,0 @@
-//
-// mac-reachability.c: System.Net.NetworkingInformation.NetworkChange
-// implementation for Mac OS X using SystemConfiguration's
-// NetworkReachability API.
-//
-// Authors:
-//  Aaron Bockover (abock@xamarin.com)
-//
-// Copyright (c) 2013 Xamarin, Inc. (http://www.xamarin.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-// 
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-// 
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-#if HAVE_CONFIG_H
-#include "config.h"
-#endif
-
-int mono_sc_reachability_enabled (void);
-
-#if defined(PLATFORM_MACOSX) || defined(TARGET_IOS)
-
-int
-mono_sc_reachability_enabled (void)
-{
-       return 1;
-}
-
-#include <SystemConfiguration/SCNetworkReachability.h>
-#include <netinet/in.h>
-
-typedef void (*mono_sc_reachability_callback)(int);
-
-typedef struct {
-       SCNetworkReachabilityRef reachability;
-       mono_sc_reachability_callback callback;
-} mono_sc_reachability;
-
-mono_sc_reachability * mono_sc_reachability_new (mono_sc_reachability_callback callback);
-void mono_sc_reachability_free (mono_sc_reachability *reachability);
-int mono_sc_reachability_is_available (mono_sc_reachability *reachability);
-
-static int
-_mono_sc_reachability_is_available (SCNetworkReachabilityFlags flags)
-{
-       return (flags & kSCNetworkFlagsReachable) && (flags & kSCNetworkFlagsConnectionRequired) == 0;
-}
-
-static void
-_mono_sc_reachability_callback (SCNetworkReachabilityRef target, SCNetworkReachabilityFlags flags, void *user)
-{
-       mono_sc_reachability *reachability;
-       
-       if (user == NULL) {
-               return;
-       }
-
-       reachability = (mono_sc_reachability *)user;
-       if (reachability->callback == NULL) {
-               return;
-       }
-
-       reachability->callback (_mono_sc_reachability_is_available (flags));
-}
-
-mono_sc_reachability *
-mono_sc_reachability_new (mono_sc_reachability_callback callback)
-{
-       struct sockaddr_in zero;
-       SCNetworkReachabilityRef reachability;
-       SCNetworkReachabilityContext context;
-       mono_sc_reachability *instance;
-
-       if (callback == NULL) {
-               return NULL;
-       }
-
-       bzero (&zero, sizeof (zero));
-       zero.sin_len = sizeof (zero);
-       zero.sin_family = AF_INET;
-
-       reachability = SCNetworkReachabilityCreateWithAddress (NULL, (const struct sockaddr *)&zero);
-       if (reachability == NULL) {
-               return NULL;
-       }
-
-       instance = (mono_sc_reachability *)malloc (sizeof (mono_sc_reachability));
-       instance->reachability = reachability;
-       instance->callback = callback;
-
-       bzero (&context, sizeof (context));
-       context.info = instance;
-
-       if (!SCNetworkReachabilitySetCallback (reachability, _mono_sc_reachability_callback, &context) ||
-               !SCNetworkReachabilityScheduleWithRunLoop (reachability, CFRunLoopGetCurrent (), kCFRunLoopDefaultMode)) {
-               mono_sc_reachability_free (instance);
-               return NULL;
-       }
-
-       return instance;
-}
-
-void
-mono_sc_reachability_free (mono_sc_reachability *reachability)
-{
-       if (reachability != NULL) {
-               if (reachability->reachability != NULL) {
-                       SCNetworkReachabilityUnscheduleFromRunLoop (reachability->reachability,
-                               CFRunLoopGetCurrent (), kCFRunLoopDefaultMode);
-                       CFRelease (reachability->reachability);
-                       reachability->reachability = NULL;
-               }
-
-               reachability->callback = NULL;
-               free (reachability);
-               reachability = NULL;
-       }
-}
-
-int
-mono_sc_reachability_is_available (mono_sc_reachability *reachability)
-{
-       SCNetworkReachabilityFlags flags;
-       return reachability != NULL && reachability->reachability != NULL &&
-               SCNetworkReachabilityGetFlags (reachability->reachability, &flags) &&
-               _mono_sc_reachability_is_available (flags);
-}
-
-#else
-
-int
-mono_sc_reachability_enabled (void)
-{
-       return 0;
-}
-
-#endif