Merge remote-tracking branch 'joncham/sgen-msvc2'
authorRodrigo Kumpera <kumpera@gmail.com>
Wed, 10 Oct 2012 22:01:21 +0000 (18:01 -0400)
committerRodrigo Kumpera <kumpera@gmail.com>
Wed, 10 Oct 2012 22:01:21 +0000 (18:01 -0400)
Conflicts:
mono/metadata/sgen-copy-object.h
mono/metadata/sgen-gc.c

488 files changed:
configure.in
data/config.in
data/mono.d
eglib/src/Makefile.am
eglib/src/giconv.c
eglib/src/glib.h
eglib/test/Makefile.am
eglib/test/utf8.c
ikvm-native/Makefile.am
libgc/Makefile.am
libgc/configure.in
man/mdoc.5
man/mono.1
mcs/class/EntityFramework.SqlServer/EntityFramework.SqlServer-net_4_5.csproj [new file with mode: 0644]
mcs/class/EntityFramework/EntityFramework-net_4_5.csproj [new file with mode: 0644]
mcs/class/IKVM.Reflection/Emit/EnumBuilder.cs
mcs/class/IKVM.Reflection/Emit/TypeBuilder.cs
mcs/class/IKVM.Reflection/MethodInfo.cs
mcs/class/IKVM.Reflection/Reader/GenericTypeParameter.cs
mcs/class/IKVM.Reflection/Reader/ModuleReader.cs
mcs/class/IKVM.Reflection/Reader/TypeDefImpl.cs
mcs/class/IKVM.Reflection/Type.cs
mcs/class/IKVM.Reflection/TypeInfo.cs [new file with mode: 0644]
mcs/class/IKVM.Reflection/Writer/TextSection.cs
mcs/class/Makefile
mcs/class/Managed.Windows.Forms/System.Windows.Forms/AxHost.cs
mcs/class/Microsoft.Build.Engine/Assembly/AssemblyInfo.cs
mcs/class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/BatchingImplBase.cs
mcs/class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/BuildChoose.cs
mcs/class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/BuildEngine.cs
mcs/class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/BuildItem.cs
mcs/class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/BuildItemGroup.cs
mcs/class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/BuildItemGroupCollection.cs
mcs/class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/BuildProperty.cs
mcs/class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/BuildPropertyGroup.cs
mcs/class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/BuildPropertyGroupCollection.cs
mcs/class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/BuildSettings.cs
mcs/class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/BuildTask.cs
mcs/class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/BuildWhen.cs
mcs/class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/ChangeType.cs
mcs/class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/ColorResetter.cs
mcs/class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/ColorSetter.cs
mcs/class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/ConditionAndExpression.cs
mcs/class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/ConditionExpression.cs
mcs/class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/ConditionFactorExpresion.cs
mcs/class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/ConditionFunctionExpression.cs
mcs/class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/ConditionNotExpression.cs
mcs/class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/ConditionOrExpression.cs
mcs/class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/ConditionParser.cs
mcs/class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/ConditionRelationalExpression.cs
mcs/class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/ConditionTokenizer.cs
mcs/class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/ConsoleLogger.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/EventSource.cs
mcs/class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/Expression.cs
mcs/class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/ExpressionCollection.cs
mcs/class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/ExpressionEvaluationException.cs
mcs/class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/ExpressionParseException.cs
mcs/class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/FileLogger.cs
mcs/class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/GroupingCollection.cs
mcs/class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/HostLogger.cs [deleted file]
mcs/class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/IReference.cs
mcs/class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/Import.cs
mcs/class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/ImportCollection.cs
mcs/class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/ImportedProject.cs
mcs/class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/InternalLoggerException.cs
mcs/class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/InvalidProjectFileException.cs
mcs/class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/ItemReference.cs
mcs/class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/LogExtensions.cs
mcs/class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/MetadataReference.cs
mcs/class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/Project.cs
mcs/class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/ProjectLoadSettings.cs
mcs/class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/PropertyPosition.cs
mcs/class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/PropertyReference.cs
mcs/class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/SolutionParser.cs [deleted file]
mcs/class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/Target.cs
mcs/class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/TargetBatchingImpl.cs
mcs/class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/TargetCollection.cs
mcs/class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/TaskBatchingImpl.cs
mcs/class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/TaskDatabase.cs
mcs/class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/TaskEngine.cs
mcs/class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/Token.cs
mcs/class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/Toolset.cs
mcs/class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/ToolsetCollection.cs
mcs/class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/ToolsetDefinitionLocations.cs
mcs/class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/UnknownToolsVersionException.cs
mcs/class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/UsingTask.cs
mcs/class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/UsingTaskCollection.cs
mcs/class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/Utilities.cs
mcs/class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/WriteHandler.cs
mcs/class/Microsoft.Build.Engine/Microsoft.Build.Engine-net_4_0.sln [new file with mode: 0644]
mcs/class/Microsoft.Build.Engine/Microsoft.Build.Engine.mdp [deleted file]
mcs/class/Microsoft.Build.Engine/Microsoft.Build.Engine.mds [deleted file]
mcs/class/Microsoft.Build.Engine/Test/Microsoft.Build.BuildEngine/TargetTest.cs
mcs/class/Microsoft.Build.Tasks/Microsoft.Build.Tasks/CreateItem.cs
mcs/class/Microsoft.Build.Utilities/Mono.XBuild.Utilities/MSBuildUtils.cs
mcs/class/Microsoft.Build.Utilities/Mono.XBuild.Utilities/ReservedNameUtils.cs
mcs/class/Mono.CSharp/Test/Evaluator/TypesTest.cs
mcs/class/Mono.CodeContracts/Mono.CodeContracts-net_4_5.csproj
mcs/class/Mono.CodeContracts/Mono.CodeContracts.Static.Analysis.Numerical/DisInterval.cs
mcs/class/Mono.CodeContracts/Mono.CodeContracts.Static.Analysis.Numerical/ExpressionOperator.cs
mcs/class/Mono.CodeContracts/Mono.CodeContracts.Static.Analysis.Numerical/Interval.cs
mcs/class/Mono.CodeContracts/Mono.CodeContracts.Static.Analysis.Numerical/IntervalBase.cs
mcs/class/Mono.CodeContracts/Mono.CodeContracts.Static.Analysis.Numerical/Rational.cs
mcs/class/Mono.CodeContracts/Mono.CodeContracts.Static.Analysis.Numerical/RationalThreshold.cs
mcs/class/Mono.CodeContracts/Mono.CodeContracts.Static.Analysis.Numerical/Threshold.cs
mcs/class/Mono.CodeContracts/Mono.CodeContracts.Static.DataStructures.Patricia/BranchNode.cs
mcs/class/Mono.CodeContracts/Mono.CodeContracts.Static.DataStructures.Patricia/EmptyNode.cs
mcs/class/Mono.CodeContracts/Mono.CodeContracts.Static.DataStructures.Patricia/LeafNode.cs
mcs/class/Mono.CodeContracts/Mono.CodeContracts.Static.DataStructures.Patricia/PatriciaTrieNode.cs
mcs/class/Mono.CodeContracts/Mono.CodeContracts.Static.DataStructures/IImmutableIntMap.cs
mcs/class/Mono.CodeContracts/Mono.CodeContracts.Static.DataStructures/ImmutableIntMap.cs
mcs/class/Mono.CodeContracts/Mono.CodeContracts.Static.DataStructures/Sequence.cs
mcs/class/Mono.CodeContracts/Mono.CodeContracts.Static.DataStructures/SequenceExtensions.cs
mcs/class/Mono.CodeContracts/Mono.CodeContracts.Static.Lattices/AbstractDomainExtensions.cs
mcs/class/Mono.CodeContracts/Mono.CodeContracts.Static.Lattices/FlatDomain.cs
mcs/class/Mono.CodeContracts/Mono.CodeContracts.Static.Lattices/IAbstractDomain.cs
mcs/class/Mono.CodeContracts/Test/Mono.CodeContracts.Static/AbstractDomainExtensionsTests.cs [new file with mode: 0644]
mcs/class/Mono.CodeContracts/Test/Mono.CodeContracts.Static/DisIntervalTests.cs [new file with mode: 0644]
mcs/class/Mono.CodeContracts/Test/Mono.CodeContracts.Static/DomainTestBase.cs [new file with mode: 0644]
mcs/class/Mono.CodeContracts/Test/Mono.CodeContracts.Static/FlatDomainTests.cs [new file with mode: 0644]
mcs/class/Mono.CodeContracts/Test/Mono.CodeContracts.Static/IntervalTests.cs [new file with mode: 0644]
mcs/class/Mono.CodeContracts/Test/Mono.CodeContracts.Static/PatriciaTrieTests.cs [new file with mode: 0644]
mcs/class/Mono.CodeContracts/Test/Mono.CodeContracts.Static/RationalTestExtensions.cs [new file with mode: 0644]
mcs/class/Mono.CodeContracts/Test/Mono.CodeContracts.Static/RationalTests.cs [new file with mode: 0644]
mcs/class/Mono.CodeContracts/Test/Mono.CodeContracts.Static/RationalThresholdTests.cs [new file with mode: 0644]
mcs/class/Mono.CodeContracts/Test/Mono.CodeContracts.Static/SequenceTests.cs [new file with mode: 0644]
mcs/class/Mono.Data.Sqlite/Mono.Data.Sqlite_2.0/SQLiteStatement.cs
mcs/class/Mono.Debugger.Soft/Mono.Debugger.Soft/MethodBodyMirror.cs
mcs/class/System.ComponentModel.DataAnnotations/System.ComponentModel.DataAnnotations-net_4_0.csproj
mcs/class/System.ComponentModel.DataAnnotations/System.ComponentModel.DataAnnotations-net_4_5.csproj
mcs/class/System.Core/System.Core-tests-net_2_0.csproj
mcs/class/System.Core/System.Core-tests-net_4_0.csproj
mcs/class/System.Core/System.Core-tests-net_4_5.csproj
mcs/class/System.Core/System.Linq.Parallel.QueryNodes/QueryGroupByNode.cs
mcs/class/System.Core/System.Linq.Parallel.QueryNodes/QueryJoinNode.cs
mcs/class/System.Core/System.Linq.Parallel.QueryNodes/QueryZipNode.cs
mcs/class/System.Core/System.Linq.Parallel.QueryNodes/WrapHelper.cs
mcs/class/System.Core/System.Linq.Parallel/ParallelExecuter.cs
mcs/class/System.Core/System.Linq/ParallelEnumerable.cs
mcs/class/System.Core/System.Threading.Tasks/TaskExtensions.cs
mcs/class/System.Core/System.Threading/ReaderWriterLockSlim.cs
mcs/class/System.Core/System/TimeZoneInfo.cs
mcs/class/System.Core/Test/System.Linq/ParallelEnumerableTests.cs
mcs/class/System.Core/Test/System/TimeZoneInfoTest.cs
mcs/class/System.Drawing/Assembly/Shield.ico [new file with mode: 0644]
mcs/class/System.Drawing/Makefile
mcs/class/System.Drawing/System.Drawing-net_2_0.csproj
mcs/class/System.Drawing/System.Drawing-net_4_0.csproj
mcs/class/System.Drawing/System.Drawing-net_4_5.csproj
mcs/class/System.Drawing/System.Drawing-tests-net_2_0.csproj
mcs/class/System.Drawing/System.Drawing-tests-net_4_0.csproj
mcs/class/System.Drawing/System.Drawing-tests-net_4_5.csproj
mcs/class/System.Drawing/System.Drawing/Icon.cs
mcs/class/System.Drawing/System.Drawing/SystemIcons.cs
mcs/class/System.Drawing/Test/System.Drawing/TestIcon.cs
mcs/class/System.Drawing/Test/System.Drawing/bitmaps/only256.ico [new file with mode: 0644]
mcs/class/System.Net.Http.Formatting/Makefile
mcs/class/System.Net.Http.Formatting/System.Net.Http.Formatting-net_4_5.csproj
mcs/class/System.Net.Http/HtppLibrary.csproj [new file with mode: 0644]
mcs/class/System.Net.Http/System.Net.Http/HttpClientHandler.cs
mcs/class/System.Net.Http/System.Net.Http/HttpContent.cs
mcs/class/System.Net.Http/Test/System.Net.Http/StreamContentTest.cs
mcs/class/System.Runtime.Serialization.Formatters.Soap/System.Runtime.Serialization.Formatters.Soap/SoapFormatter.cs
mcs/class/System.Runtime.Serialization.Formatters.Soap/System.Runtime.Serialization.Formatters.Soap/SoapReader.cs
mcs/class/System.Runtime.Serialization.Formatters.Soap/System.Runtime.Serialization.Formatters.Soap/SoapWriter.cs
mcs/class/System.Runtime.Serialization.Formatters.Soap/Test/SoapFormatterTest.cs
mcs/class/System.Runtime.Serialization/Makefile
mcs/class/System.Runtime.Serialization/System.Runtime.Serialization-tests-net_2_0.csproj
mcs/class/System.Runtime.Serialization/System.Runtime.Serialization-tests-net_4_0.csproj
mcs/class/System.Runtime.Serialization/System.Runtime.Serialization-tests-net_4_5.csproj
mcs/class/System.Runtime.Serialization/System.Runtime.Serialization/DataContractSerializer.cs
mcs/class/System.Runtime.Serialization/System.Runtime.Serialization/KnownTypeCollection.cs
mcs/class/System.Runtime.Serialization/System.Runtime.Serialization/XsdDataContractImporter.cs
mcs/class/System.Runtime.Serialization/System.Runtime.Serialization_test.dll.sources
mcs/class/System.Runtime.Serialization/Test/Resources/WSDL/collections.wsdl [new file with mode: 0644]
mcs/class/System.Runtime.Serialization/Test/Resources/WSDL/custom-collections.wsdl [new file with mode: 0644]
mcs/class/System.Runtime.Serialization/Test/System.Runtime.Serialization/CollectionSerialization.cs [new file with mode: 0644]
mcs/class/System.Runtime.Serialization/Test/System.Runtime.Serialization/WsdlHelper.cs [new file with mode: 0644]
mcs/class/System.Runtime.Serialization/Test/System.Runtime.Serialization/XsdDataContractExporterTest2.cs [new file with mode: 0644]
mcs/class/System.Runtime.Serialization/Test/System.Runtime.Serialization/XsdDataContractImporterTest2.cs [new file with mode: 0644]
mcs/class/System.ServiceModel/System.ServiceModel.Channels.Http/HttpReplyChannel.cs
mcs/class/System.ServiceModel/System.ServiceModel.Channels.NetTcp/TcpChannelListener.cs
mcs/class/System.ServiceModel/System.ServiceModel.Channels/HttpRequestChannel.cs
mcs/class/System.ServiceModel/System.ServiceModel.Description/ContractDescriptionGenerator.cs
mcs/class/System.ServiceModel/System.ServiceModel.Description/DataContractSerializerMessageContractImporter.cs
mcs/class/System.ServiceModel/System.ServiceModel.Description/MetadataImporter.cs
mcs/class/System.ServiceModel/System.ServiceModel.Dispatcher/OperationInvokerHandler.cs
mcs/class/System.ServiceModel/System.ServiceModel/ClientRealProxy.cs
mcs/class/System.ServiceModel/System.ServiceModel/HttpTransportSecurity.cs
mcs/class/System.ServiceModel/System.ServiceModel/ServiceHost.cs
mcs/class/System.ServiceModel/Test/Resources/DateTime.wsdl [new file with mode: 0644]
mcs/class/System.ServiceModel/Test/System.ServiceModel.Description/ContractDescriptionTest.cs
mcs/class/System.ServiceModel/Test/System.ServiceModel.Description/WsdlImporterTest.cs
mcs/class/System.ServiceModel/Test/System.ServiceModel.Dispatcher/DispatchOperationTest.cs
mcs/class/System.ServiceModel/Test/System.ServiceModel/ServiceHostTest.cs
mcs/class/System.Threading.Tasks.Dataflow/System.Threading.Tasks.Dataflow-net_4_5.csproj
mcs/class/System.Threading.Tasks.Dataflow/System.Threading.Tasks.Dataflow-tests-net_4_5.csproj
mcs/class/System.Web.Http.SelfHost/Makefile [new file with mode: 0644]
mcs/class/System.Web.Http.SelfHost/System.Web.Http.SelfHost-net_4_5.csproj [new file with mode: 0644]
mcs/class/System.Web.Http.SelfHost/System.Web.Http.SelfHost.dll.sources [new file with mode: 0644]
mcs/class/System.Web.Http/Makefile
mcs/class/System.Web.Http/System.Web.Http-net_4_5.csproj
mcs/class/System.Web.Services/System.Web.Services.Description/WebServicesInteroperability.cs
mcs/class/System.Web.Services/Test/System.Web.Services.Description/6041.wsdl [new file with mode: 0644]
mcs/class/System.Web.Services/Test/System.Web.Services.Description/WebServicesInteroperabilityTest.cs
mcs/class/System.Web/System.Web-net_2_0.csproj
mcs/class/System.Web/System.Web-net_4_0.csproj
mcs/class/System.Web/System.Web-net_4_5.csproj
mcs/class/System.Web/System.Web.dll.sources
mcs/class/System.XML/System.Xml.Serialization/XmlReflectionImporter.cs
mcs/class/System.XML/Test/System.Xml.Serialization/DeserializeTests.cs
mcs/class/System/Documentation/en/System.ComponentModel/DataErrorsChangedEventArgs.xml [new file with mode: 0644]
mcs/class/System/Documentation/en/System.ComponentModel/INotifyDataErrorInfo.xml [new file with mode: 0644]
mcs/class/System/System-build.csproj
mcs/class/System/System-net_2_0.csproj
mcs/class/System/System-net_4_0.csproj
mcs/class/System/System-net_4_5.csproj
mcs/class/System/System-tests-net_2_0.csproj
mcs/class/System/System-tests-net_4_0.csproj
mcs/class/System/System-tests-net_4_5.csproj
mcs/class/System/System.Collections.Concurrent/BlockingCollection.cs
mcs/class/System/System.Collections.Generic/SortedList.cs
mcs/class/System/System.ComponentModel/DataErrorsChangedEventArgs.cs [new file with mode: 0644]
mcs/class/System/System.ComponentModel/INotifyDataErrorInfo.cs [new file with mode: 0644]
mcs/class/System/System.ComponentModel/MaskedTextProvider.cs
mcs/class/System/System.Net.NetworkInformation/MacOsNetworkInterfaceMarshal.cs
mcs/class/System/System.Net.NetworkInformation/NetworkInterface.cs
mcs/class/System/System.Net.NetworkInformation/Ping.cs
mcs/class/System/System.Net/Cookie.cs
mcs/class/System/System.Net/CookieContainer.cs
mcs/class/System/System.Net/HttpListenerRequest.cs
mcs/class/System/System.Net/HttpWebRequest.cs
mcs/class/System/System.Net/HttpWebResponse.cs
mcs/class/System/System.Net/ServicePointManager.cs
mcs/class/System/System.Net/WebClient.cs
mcs/class/System/System.Net/WebConnection.cs
mcs/class/System/System.Net/WebConnectionStream.cs
mcs/class/System/System.Security.Authentication.ExtendedProtection.Configuration/ServiceNameElement.cs
mcs/class/System/System.Security.Cryptography.X509Certificates/OSX509Certificates.cs
mcs/class/System/System.dll.sources
mcs/class/System/System/Uri.cs
mcs/class/System/Test/System.Collections.Concurrent/BlockingCollectionTests.cs
mcs/class/System/Test/System.Collections.Generic/SortedListTest.cs
mcs/class/System/Test/System.Net/CookieContainerTest.cs
mcs/class/System/Test/System.Net/HttpListenerRequestTest.cs
mcs/class/System/Test/System/UriTest3.cs
mcs/class/corlib/Mono.Interop/ComInteropProxy.cs
mcs/class/corlib/Mono.Security.Cryptography/KeyPairPersistence.cs
mcs/class/corlib/Mono.Security.Cryptography/SymmetricTransform.cs
mcs/class/corlib/Mono.Security.X509/PKCS12.cs
mcs/class/corlib/Mono.Security.X509/X509Certificate.cs
mcs/class/corlib/Mono.Security/StrongName.cs
mcs/class/corlib/Mono.Security/StrongNameManager.cs
mcs/class/corlib/System.Collections.Concurrent/ConcurrentQueue.cs
mcs/class/corlib/System.Collections.Concurrent/ConcurrentStack.cs
mcs/class/corlib/System.Collections.Concurrent/ObjectPool.cs [deleted file]
mcs/class/corlib/System.Collections.Concurrent/SplitOrderedList.cs
mcs/class/corlib/System.Collections.Generic/List.cs
mcs/class/corlib/System.Collections/ArrayList.cs
mcs/class/corlib/System.Collections/CaseInsensitiveComparer.cs
mcs/class/corlib/System.Collections/Hashtable.cs
mcs/class/corlib/System.Collections/SortedList.cs
mcs/class/corlib/System.IO.IsolatedStorage/IsolatedStorageFile.cs
mcs/class/corlib/System.IO/Directory.cs
mcs/class/corlib/System.IO/MemoryStream.cs
mcs/class/corlib/System.IO/MonoIO.cs
mcs/class/corlib/System.IO/StreamWriter.cs
mcs/class/corlib/System.Reflection.Emit/EventToken.cs
mcs/class/corlib/System.Reflection.Emit/FieldToken.cs
mcs/class/corlib/System.Reflection.Emit/ILGenerator.cs
mcs/class/corlib/System.Reflection.Emit/MethodToken.cs
mcs/class/corlib/System.Reflection.Emit/OpCodeNames.cs
mcs/class/corlib/System.Reflection.Emit/ParameterToken.cs
mcs/class/corlib/System.Reflection.Emit/PropertyToken.cs
mcs/class/corlib/System.Reflection.Emit/SignatureToken.cs
mcs/class/corlib/System.Reflection.Emit/StringToken.cs
mcs/class/corlib/System.Reflection.Emit/TypeToken.cs
mcs/class/corlib/System.Reflection/Binder.cs
mcs/class/corlib/System.Reflection/Module.cs
mcs/class/corlib/System.Resources/ResourceManager.cs
mcs/class/corlib/System.Runtime.InteropServices/ExtensibleClassFactory.cs
mcs/class/corlib/System.Runtime.InteropServices/Marshal.cs
mcs/class/corlib/System.Runtime.Serialization.Formatters.Binary/ObjectWriter.cs
mcs/class/corlib/System.Security.Cryptography/DSACryptoServiceProvider.cs
mcs/class/corlib/System.Security.Cryptography/RSACryptoServiceProvider.cs
mcs/class/corlib/System.Text/DecoderFallback.cs
mcs/class/corlib/System.Text/EncoderFallback.cs
mcs/class/corlib/System.Text/Encoding.cs
mcs/class/corlib/System.Text/UTF32Encoding.cs
mcs/class/corlib/System.Text/UTF8Encoding.cs
mcs/class/corlib/System.Text/UnicodeEncoding.cs
mcs/class/corlib/System.Threading.Tasks/Task.cs
mcs/class/corlib/System.Threading.Tasks/TaskContinuationOptions.cs
mcs/class/corlib/System.Threading.Tasks/TaskFactory_T.cs
mcs/class/corlib/System.Threading.Tasks/Task_T.cs
mcs/class/corlib/System.Threading/SpinLock.cs
mcs/class/corlib/System.Threading/Thread.cs
mcs/class/corlib/System.Threading/Timer.cs
mcs/class/corlib/System/Array.cs
mcs/class/corlib/System/EmptyArray.cs [new file with mode: 0644]
mcs/class/corlib/System/Enum.cs
mcs/class/corlib/System/Environment.cs
mcs/class/corlib/System/MonoCustomAttrs.cs
mcs/class/corlib/System/String.cs
mcs/class/corlib/System/StringComparer.cs
mcs/class/corlib/System/TermInfoDriver.cs
mcs/class/corlib/Test/System.Collections/SortedListTest.cs
mcs/class/corlib/Test/System.IO/MemoryStreamTest.cs
mcs/class/corlib/Test/System.IO/StreamWriterTest.cs
mcs/class/corlib/Test/System.Runtime.Serialization.Formatters.Binary/BinaryFormatterTest.cs
mcs/class/corlib/Test/System.Security.Cryptography/RijndaelManagedTest.cs
mcs/class/corlib/Test/System.Security.Cryptography/TripleDESCryptoServiceProviderTest.cs
mcs/class/corlib/Test/System.Text/EncodingInfoTest.cs
mcs/class/corlib/Test/System.Threading.Tasks/TaskFactoryTest_T.cs
mcs/class/corlib/Test/System.Threading.Tasks/TaskTest.cs
mcs/class/corlib/Test/System/ArrayTest.cs
mcs/class/corlib/Test/System/StringTest.cs
mcs/class/corlib/corlib-build.csproj
mcs/class/corlib/corlib-net_2_0.csproj
mcs/class/corlib/corlib-net_4_0.csproj
mcs/class/corlib/corlib-net_4_5.csproj
mcs/class/corlib/corlib-tests-net_2_0.csproj
mcs/class/corlib/corlib-tests-net_4_0.csproj
mcs/class/corlib/corlib-tests-net_4_5.csproj
mcs/class/corlib/corlib.dll.sources
mcs/errors/cs0030-15.cs [new file with mode: 0644]
mcs/errors/cs0162-15.cs [new file with mode: 0644]
mcs/errors/cs0162-16.cs [new file with mode: 0644]
mcs/errors/cs1001-5.cs
mcs/errors/cs1001-7.cs [new file with mode: 0644]
mcs/errors/cs1514.cs [new file with mode: 0644]
mcs/errors/cs1525-22.cs
mcs/errors/cs1525-49.cs [new file with mode: 0644]
mcs/errors/cs1525-50.cs [new file with mode: 0644]
mcs/errors/cs1612-9.cs [new file with mode: 0644]
mcs/errors/cs4014-5.cs [new file with mode: 0644]
mcs/mcs/cfold.cs
mcs/mcs/class.cs
mcs/mcs/constant.cs
mcs/mcs/context.cs
mcs/mcs/convert.cs
mcs/mcs/cs-parser.jay
mcs/mcs/cs-tokenizer.cs
mcs/mcs/decl.cs
mcs/mcs/ecore.cs
mcs/mcs/eval.cs
mcs/mcs/expression.cs
mcs/mcs/flowanalysis.cs
mcs/mcs/generic.cs
mcs/mcs/import.cs
mcs/mcs/mcs.csproj
mcs/mcs/method.cs
mcs/mcs/module.cs
mcs/mcs/namespace.cs
mcs/mcs/statement.cs
mcs/tests/.gitattributes [new file with mode: 0644]
mcs/tests/gtest-implicitarray-01.cs
mcs/tests/gtest-iter-27.cs [new file with mode: 0644]
mcs/tests/gtest-iter-28.cs [new file with mode: 0644]
mcs/tests/gtest-optional-25.cs [new file with mode: 0644]
mcs/tests/gtest-partial-03.cs [new file with mode: 0644]
mcs/tests/support-xml-067.cs [new file with mode: 0644]
mcs/tests/test-851-lib.il [new file with mode: 0644]
mcs/tests/test-851.cs [new file with mode: 0644]
mcs/tests/test-852.cs [new file with mode: 0644]
mcs/tests/test-853.cs [new file with mode: 0644]
mcs/tests/test-async-39.cs [new file with mode: 0644]
mcs/tests/test-xml-067-ref.xml [new file with mode: 0644]
mcs/tests/test-xml-067.cs [new file with mode: 0644]
mcs/tests/ver-il-net_4_5.xml
mcs/tools/mdoc/Mono.Documentation/monodocer.cs
mcs/tools/mdoc/Resources/monodoc-ecma.xsd
mcs/tools/xbuild/SolutionParser.cs
mcs/tools/xbuild/xbuild/3.5/Microsoft.Common.targets
mcs/tools/xbuild/xbuild/4.0/Microsoft.Common.targets
mcs/tools/xbuild/xbuild/4.5/Microsoft.Common.targets
mcs/tools/xbuild/xbuild_targets.make
mono-core.spec.in
mono/arch/Makefile.am
mono/arch/alpha/Makefile.am
mono/arch/amd64/Makefile.am
mono/arch/arm/Makefile.am
mono/arch/arm/arm-vfp-codegen.h
mono/arch/hppa/Makefile.am
mono/arch/mips/Makefile.am
mono/arch/ppc/Makefile.am
mono/arch/s390/Makefile.am
mono/arch/s390x/Makefile.am
mono/arch/sparc/Makefile.am
mono/arch/x86/Makefile.am
mono/dis/Makefile.am
mono/interpreter/Makefile.am
mono/io-layer/Makefile.am
mono/io-layer/atomic.h
mono/metadata/Makefile.am
mono/metadata/appdomain.c
mono/metadata/boehm-gc.c
mono/metadata/class-internals.h
mono/metadata/gc-internal.h
mono/metadata/gc.c
mono/metadata/marshal.c
mono/metadata/metadata.c
mono/metadata/object-internals.h
mono/metadata/object.c
mono/metadata/sgen-alloc.c
mono/metadata/sgen-bridge.c
mono/metadata/sgen-bridge.h
mono/metadata/sgen-cardtable.c
mono/metadata/sgen-copy-object.h
mono/metadata/sgen-debug.c
mono/metadata/sgen-fin-weak-hash.c
mono/metadata/sgen-gc.c
mono/metadata/sgen-gc.h
mono/metadata/sgen-hash-table.c
mono/metadata/sgen-hash-table.h [new file with mode: 0644]
mono/metadata/sgen-internal.c
mono/metadata/sgen-los.c
mono/metadata/sgen-major-copying.c
mono/metadata/sgen-marksweep.c
mono/metadata/sgen-memory-governor.c
mono/metadata/sgen-memory-governor.h
mono/metadata/sgen-nursery-allocator.c
mono/metadata/sgen-os-mach.c
mono/metadata/sgen-os-posix.c
mono/metadata/sgen-os-win32.c
mono/metadata/sgen-pinned-allocator.c
mono/metadata/sgen-pinning-stats.c
mono/metadata/sgen-pinning.c
mono/metadata/sgen-protocol.c
mono/metadata/sgen-ssb.c
mono/metadata/sgen-toggleref.c
mono/metadata/sgen-workers.c
mono/metadata/threadpool.c
mono/metadata/threads-types.h
mono/metadata/threads.c
mono/metadata/verify.c
mono/mini/Makefile.am
mono/mini/aot-compiler.c
mono/mini/arrays.cs
mono/mini/cpu-arm.md
mono/mini/debugger-agent.c
mono/mini/driver.c
mono/mini/dwarfwriter.c
mono/mini/exceptions-arm.c
mono/mini/exceptions-x86.c
mono/mini/gc-test.cs
mono/mini/generics.cs
mono/mini/iltests.il.in
mono/mini/image-writer.c
mono/mini/jit-icalls.c
mono/mini/method-to-ir.c
mono/mini/mini-amd64.c
mono/mini/mini-amd64.h
mono/mini/mini-arm.c
mono/mini/mini-darwin.c
mono/mini/mini-exceptions.c
mono/mini/mini-gc.c
mono/mini/mini-llvm.c
mono/mini/mini-ops.h
mono/mini/mini-posix.c
mono/mini/mini-x86.c
mono/mini/mini-x86.h
mono/mini/mini.c
mono/mini/mini.h
mono/mini/tasklets.c
mono/mini/trace.c
mono/mini/trace.h
mono/mini/tramp-amd64.c
mono/mini/unwind.c
mono/monograph/Makefile.am
mono/profiler/Makefile.am
mono/tests/Makefile.am
mono/tests/custom-attr.cs
mono/utils/Makefile.am
mono/utils/dtrace.h
mono/utils/mach-support.c
mono/utils/mach-support.h
mono/utils/mono-context.c
mono/utils/mono-context.h
mono/utils/mono-sigcontext.h
mono/wrapper/Makefile.am
msvc/scripts/order.xml
po/Makefile.am
samples/Makefile.am
support/Makefile.am
tools/sgen/Makefile.am

index 38cc6dc29257fe25a36439284f0e9de7a4f29b00..f80df889c6454689acb127dacf49134bb5e71343 100644 (file)
@@ -1,7 +1,7 @@
 # Process this file with autoconf to produce a configure script.
 #AC_PREREQ([2.62])
 
-AC_INIT(mono, [2.11.4],
+AC_INIT(mono, [2.11.5],
         [http://bugzilla.xamarin.com/enter_bug.cgi?classification=Mono])
 
 AC_CONFIG_SRCDIR([README])
@@ -289,6 +289,7 @@ case "$host" in
                parallel_mark="Disabled_Currently_Hangs_On_MacOSX"
                host_win32=no
                platform_darwin=yes
+               target_mach=yes
                CPPFLAGS="$CPPFLAGS -no-cpp-precomp -D_THREAD_SAFE -DGC_MACOSX_THREADS -DPLATFORM_MACOSX -DUSE_MMAP -DUSE_MUNMAP"
                CPPFLAGS="$CPPFLAGS -DGetCurrentProcess=MonoGetCurrentProcess -DGetCurrentThread=MonoGetCurrentThread -DCreateEvent=MonoCreateEvent"
                libmono_cflags="-D_THREAD_SAFE"
@@ -1132,12 +1133,7 @@ if test x$target_win32 = xno; then
                        /* Lifted this compile time assert method from: http://www.jaggersoft.com/pubs/CVu11_3.html */
                        #define COMPILE_TIME_ASSERT(pred) \
                                switch(0){case 0:case pred:;}
-
-                       int main(void)
-                       {
-                               COMPILE_TIME_ASSERT(sizeof(off_t) * CHAR_BIT == 64);
-                               return 0;
-                       }
+                       COMPILE_TIME_ASSERT(sizeof(off_t) * CHAR_BIT == 64);
                ], [
                        AC_MSG_RESULT(ok)
                        AC_DEFINE(HAVE_LARGE_FILE_SUPPORT, 1, [Have large file support])
@@ -2435,6 +2431,8 @@ case "$host" in
                ;;
 esac
 
+HOST=$TARGET
+
 if test "x$host" != "x$target"; then
    AC_DEFINE(MONO_CROSS_COMPILE,1,[The runtime is compiled for cross-compiling mode])
    enable_mcs_build=no
@@ -2473,20 +2471,7 @@ if test "x$host" != "x$target"; then
                AC_DEFINE(TARGET_X86, 1, [...])
                sizeof_register=4
                ;;
-   armv7l-unknown-linux-gnueabi*)
-               # TEGRA
-               TARGET=ARM;
-               arch_target=arm;
-               AC_DEFINE(TARGET_ARM, 1, [...])
-               ACCESS_UNALIGNED="no"
-               JIT_SUPPORTED=yes
-               CPPFLAGS="$CPPFLAGS -DARM_FPU_VFP=1 -D__ARM_EABI__"
-               jit_wanted=true
-               # Can't use tls, since it depends on the runtime detection of tls offsets
-               # in mono-compiler.h
-               with_tls=pthread
-               ;;
-   armv5tel-unknown-linux-gnueabi*)
+   arm*-unknown-linux-gnueabi*)
                TARGET=ARM;
                arch_target=arm;
                AC_DEFINE(TARGET_ARM, 1, [...])
@@ -2497,19 +2482,17 @@ if test "x$host" != "x$target"; then
                # Can't use tls, since it depends on the runtime detection of tls offsets
                # in mono-compiler.h
                with_tls=pthread
-               ;;
-   armv5-*-linux-androideabi*)
-               TARGET=ARM;
-               arch_target=arm;
-               AC_DEFINE(TARGET_ARM, 1, [...])
-               AC_DEFINE(TARGET_ANDROID, 1, [...])
-               ACCESS_UNALIGNED="no"
-               JIT_SUPPORTED=yes
-               CPPFLAGS="$CPPFLAGS -D__ARM_EABI__ -DARM_FPU_NONE=1"
-               jit_wanted=true
-               # Can't use tls, since it depends on the runtime detection of tls offset
-               # in mono-compiler.h
-               with_tls=pthread
+               target_mach=no
+               case "$target" in
+               armv7l-unknown-linux-gnueabi*)
+                       # TEGRA
+                       CPPFLAGS="$CPPFLAGS -DARM_FPU_VFP=1"
+                       ;;
+               armv5-*-linux-androideabi*)
+                       AC_DEFINE(TARGET_ANDROID, 1, [...])
+                       CPPFLAGS="$CPPFLAGS -DARM_FPU_NONE"
+                       ;;
+               esac
                ;;
        *)
                AC_MSG_ERROR([Cross compiling is not supported for target $target])
@@ -2542,6 +2525,10 @@ MIPS)
        ;;
 esac
 
+if test "x$target_mach" = "xyes"; then
+   AC_DEFINE(TARGET_MACH,1,[The JIT/AOT targets Apple platforms])
+fi
+
 if test "x$sizeof_register" = "x4"; then
    AC_DEFINE(SIZEOF_REGISTER,4,[size of machine integer registers])
 elif test "x$sizeof_register" = "x8"; then
@@ -2886,7 +2873,7 @@ fi
 # When --disable-shared is used, libtool transforms libmono-2.0.la into libmono-2.0.so
 # instead of libmono-static.a
 if test "x$enable_shared" = "xno"; then
-   LIBMONO_LA=.libs/libmono-static.a
+   LIBMONO_LA=libmini-static.la
 else
    LIBMONO_LA=libmono-$API_VER.la
 fi
@@ -2943,6 +2930,9 @@ AM_CONDITIONAL(ARM, test x$TARGET = xARM)
 AM_CONDITIONAL(S390, test x$TARGET = xS390)
 AM_CONDITIONAL(S390x, test x$TARGET = xS390x)
 AM_CONDITIONAL(HPPA, test x$TARGET = xHPPA)
+AM_CONDITIONAL(HOST_X86, test x$HOST = xX86)
+AM_CONDITIONAL(HOST_AMD64, test x$HOST = xAMD64)
+AM_CONDITIONAL(HOST_ARM, test x$HOST = xARM)
 
 AM_CONDITIONAL(JIT_SUPPORTED, test x$JIT_SUPPORTED = xyes)
 AM_CONDITIONAL(INTERP_SUPPORTED, test x$interp_wanted = xtrue)
index 167d509b6de098ec3299acf45d3b94711e9fb1b4..1faae012ef2be58c6435da97f162047d2a081ae3 100644 (file)
@@ -26,4 +26,6 @@
                <dllentry dll="__Internal" name="MoveMemory" target="mono_win32_compat_MoveMemory"/>
                <dllentry dll="__Internal" name="ZeroMemory" target="mono_win32_compat_ZeroMemory"/>
        </dllmap>
+       <dllmap dll="gdiplus" target="@prefix@/lib/libgdiplus@libsuffix@" />
+       <dllmap dll="gdiplus.dll" target="@prefix@/lib/libgdiplus@libsuffix@" />
 </configuration>
index 3d27128b736fbb5302dc79ccab0611335a80375f..e2f4153beffb7da57d8f33c743b8d80ddbe9e676 100644 (file)
@@ -18,6 +18,28 @@ provider mono {
        /* Garbage Collector (GC) */    
        probe gc__begin (int generation);
        probe gc__end (int generation);
+
+       probe gc__heap__alloc (uintptr_t addr, uintptr_t len);
+       probe gc__heap__free (uintptr_t addr, uintptr_t len);
+
+       probe gc__locked ();
+       probe gc__unlocked ();
+
+       probe gc__nursery__tlab__alloc (uintptr_t addr, uintptr_t len);
+       probe gc__nursery__obj__alloc (uintptr_t addr, uintptr_t size, char *ns_name, char *class_name);
+
+       probe gc__major__obj__alloc__large (uintptr_t addr, uintptr_t size, char *ns_name, char *class_name);
+       probe gc__major__obj__alloc__pinned (uintptr_t addr, uintptr_t size, char *ns_name, char *class_name);
+       probe gc__major__obj__alloc__degraded (uintptr_t addr, uintptr_t size, char *ns_name, char *class_name);
+       probe gc__major__obj__alloc__mature (uintptr_t addr, uintptr_t size, char *ns_name, char *class_name);
+
+       /* Can be nursery->nursery, nursery->major or major->major */
+       probe gc__obj__moved (uintptr_t dest, uintptr_t src, int dest_gen, int src_gen, uintptr_t size, char *ns_name, char *class_name);
+
+       probe gc__nursery__swept (uintptr_t addr, uintptr_t len);
+       probe gc__major__swept (uintptr_t addr, uintptr_t len);
+
+       probe gc__obj__pinned (uintptr_t addr, uintptr_t size, char *ns_name, char *class_name, int generation);
 };
 
 #pragma D attributes Evolving/Evolving/Common provider mono provider
index 94bee684e0470a9c4ec5ea2b52da462e19a53e6e..0d0e90354ee8adb5c48053a37c012ab0d0991393 100644 (file)
@@ -59,7 +59,7 @@ libeglib_la_CFLAGS = -g -Wall -D_FORTIFY_SOURCE=2
 libeglib_static_la_SOURCES=$(libeglib_la_SOURCES)
 libeglib_static_la_CFLAGS = $(libeglib_la_CFLAGS)
 
-INCLUDES = -I$(srcdir)
+AM_CPPFLAGS = -I$(srcdir)
 
 if HOST_WIN32
 libeglib_la_LIBADD = -lm $(LIBICONV) -lpsapi
index d8dbe6bf1541ced2c69ba61921c9f4fd2ab242aa..8f507de13a74b190383b35c06a91aa46e1771338 100644 (file)
@@ -887,7 +887,7 @@ g_utf8_to_ucs4_fast (const gchar *str, glong len, glong *items_written)
 }
 
 gunichar2 *
-g_utf8_to_utf16 (const gchar *str, glong len, glong *items_read, glong *items_written, GError **err)
+g_utf8_to_utf16_general (const gchar *str, glong len, glong *items_read, glong *items_written, gboolean include_nuls, GError **err)
 {
        gunichar2 *outbuf, *outptr;
        size_t outlen = 0;
@@ -898,8 +898,13 @@ g_utf8_to_utf16 (const gchar *str, glong len, glong *items_read, glong *items_wr
        
        g_return_val_if_fail (str != NULL, NULL);
        
-       if (len < 0)
+       if (len < 0) {
+               if (include_nuls) {
+                       g_set_error (err, G_CONVERT_ERROR, G_CONVERT_ERROR_FAILED, "Conversions with embedded nulls must pass the string length");
+                       return NULL;
+               }
                len = strlen (str);
+       }
        
        inptr = (char *) str;
        inleft = len;
@@ -924,7 +929,7 @@ g_utf8_to_utf16 (const gchar *str, glong len, glong *items_read, glong *items_wr
                                *items_written = 0;
                        
                        return NULL;
-               } else if (c == 0)
+               } else if (c == 0 && !include_nuls)
                        break;
                
                outlen += g_unichar_to_utf16 (c, NULL);
@@ -945,7 +950,7 @@ g_utf8_to_utf16 (const gchar *str, glong len, glong *items_read, glong *items_wr
        while (inleft > 0) {
                if ((n = decode_utf8 (inptr, inleft, &c)) < 0)
                        break;
-               else if (c == 0)
+               else if (c == 0 && !include_nuls)
                        break;
                
                outptr += g_unichar_to_utf16 (c, outptr);
@@ -958,6 +963,18 @@ g_utf8_to_utf16 (const gchar *str, glong len, glong *items_read, glong *items_wr
        return outbuf;
 }
 
+gunichar2 *
+g_utf8_to_utf16 (const gchar *str, glong len, glong *items_read, glong *items_written, GError **err)
+{
+       return g_utf8_to_utf16_general (str, len, items_read, items_written, FALSE, err);
+}
+
+gunichar2 *
+g_utf8_to_utf16_with_nuls (const gchar *str, glong len, glong *items_read, glong *items_written, GError **err)
+{
+       return g_utf8_to_utf16_general (str, len, items_read, items_written, TRUE, err);
+}
+
 gunichar *
 g_utf8_to_ucs4 (const gchar *str, glong len, glong *items_read, glong *items_written, GError **err)
 {
index 28e68d3e748c5b72f5291bdb57028f938763fea7..c54a50d8fc757a6437446a3ca9ce9a30d873ed85 100644 (file)
@@ -751,6 +751,7 @@ gint       g_unichar_to_utf8 (gunichar c, gchar *outbuf);
 gunichar  *g_utf8_to_ucs4_fast (const gchar *str, glong len, glong *items_written);
 gunichar  *g_utf8_to_ucs4 (const gchar *str, glong len, glong *items_read, glong *items_written, GError **err);
 gunichar2 *g_utf8_to_utf16 (const gchar *str, glong len, glong *items_read, glong *items_written, GError **err);
+gunichar2 *g_utf8_to_utf16_with_nuls (const gchar *str, glong len, glong *items_read, glong *items_written, GError **err);
 gchar     *g_utf16_to_utf8 (const gunichar2 *str, glong len, glong *items_read, glong *items_written, GError **err);
 gunichar  *g_utf16_to_ucs4 (const gunichar2 *str, glong len, glong *items_read, glong *items_written, GError **err);
 gchar     *g_ucs4_to_utf8  (const gunichar *str, glong len, glong *items_read, glong *items_written, GError **err);
index dfa708025a3b1a984a6f06bb7fc7557ffd0dba5a..3f914fd510de3b085243dc6a84613c99ffddc996 100644 (file)
@@ -31,7 +31,7 @@ SOURCES = \
 
 test_eglib_SOURCES = $(SOURCES)
 
-test_eglib_CFLAGS = -Wall -D_FORTIFY_SOURCE=2 -I$(srcdir)/../src -I../src -DDRIVER_NAME=\"EGlib\"
+test_eglib_CFLAGS = -Wall -DEGLIB_TESTS=1 -D_FORTIFY_SOURCE=2 -I$(srcdir)/../src -I../src -DDRIVER_NAME=\"EGlib\"
 test_eglib_LDADD = ../src/libeglib.la $(LIBICONV)
 
 run-eglib: all
index bae5ba0240b5d3e55772459124decbdd19049c21..153a4bbc60f81106f969ccbe637d8576d7d17535 100644 (file)
@@ -136,11 +136,15 @@ compare_strings_utf16_RESULT (const gunichar2 *expected, const gunichar2 *actual
        ret = compare_strings_utf16_pos (expected, actual, size);
        if (ret < 0)
                return OK;
-       return FAILED ("Incorrect output: expected '%s' but was '%s'\n", expected, actual);
+       return FAILED ("Incorrect output: expected '%s' but was '%s', differ at %d ('%c' x '%c')\n", expected, actual, ret, expected [ret], actual [ret]);
 }
 
+#if !defined(EGLIB_TESTS)
+#define g_utf8_to_utf16_with_nuls g_utf8_to_utf16
+#endif
+
 RESULT
-compare_utf8_to_utf16_explicit (const gunichar2 *expected, const gchar *utf8, glong len_in, glong len_out, glong size_spec)
+compare_utf8_to_utf16_explicit (const gunichar2 *expected, const gchar *utf8, glong len_in, glong len_out, glong size_spec, gboolean include_nuls)
 {
        GError *error;
        gunichar2* ret;
@@ -150,7 +154,11 @@ compare_utf8_to_utf16_explicit (const gunichar2 *expected, const gchar *utf8, gl
        result = NULL;
 
        error = NULL;
-       ret = g_utf8_to_utf16 (utf8, size_spec, &in_read, &out_read, &error);
+       if (include_nuls)
+               ret = g_utf8_to_utf16_with_nuls (utf8, size_spec, &in_read, &out_read, &error);
+       else
+               ret = g_utf8_to_utf16 (utf8, size_spec, &in_read, &out_read, &error);
+
        if (error) {
                result = FAILED ("The error is %d %s\n", (error)->code, (error)->message);
                g_error_free (error);
@@ -172,18 +180,30 @@ compare_utf8_to_utf16_explicit (const gunichar2 *expected, const gchar *utf8, gl
        return OK;
 }
 
-
 RESULT
-compare_utf8_to_utf16 (const gunichar2 *expected, const gchar *utf8, glong len_in, glong len_out)
+compare_utf8_to_utf16_general (const gunichar2 *expected, const gchar *utf8, glong len_in, glong len_out, gboolean include_nuls)
 {
        RESULT result;
 
-       result = compare_utf8_to_utf16_explicit (expected, utf8, len_in, len_out, -1);
+       result = compare_utf8_to_utf16_explicit (expected, utf8, len_in, len_out, -1, include_nuls);
        if (result != OK)
                return result;
-       return compare_utf8_to_utf16_explicit (expected, utf8, len_in, len_out, len_in);
+       return compare_utf8_to_utf16_explicit (expected, utf8, len_in, len_out, len_in, include_nuls);
+}
+
+RESULT
+compare_utf8_to_utf16 (const gunichar2 *expected, const gchar *utf8, glong len_in, glong len_out)
+{
+       return compare_utf8_to_utf16_general (expected, utf8, len_in, len_out, FALSE);
 }
 
+RESULT
+compare_utf8_to_utf16_with_nuls (const gunichar2 *expected, const gchar *utf8, glong len_in, glong len_out)
+{
+       return compare_utf8_to_utf16_explicit (expected, utf8, len_in, len_out, len_in, TRUE);
+}
+
+
 RESULT
 test_utf8_seq ()
 {
@@ -240,6 +260,42 @@ test_utf8_to_utf16 ()
        return OK;
 }
 
+RESULT
+test_utf8_to_utf16_with_nuls ()
+{
+       const gchar *src0 = "", *src1 = "AB\0DE", *src2 = "\xE5\xB9\xB4\x27", *src3 = "\xEF\xBC\xA1", *src4 = "\xEF\xBD\x81";
+       gunichar2 str0 [] = {0}, str1 [] = {'A', 'B', 0, 'D', 'E', 0}, str2 [] = {0x5E74, 39, 0}, str3 [] = {0xFF21, 0}, str4 [] = {0xFF41, 0};
+       RESULT result;
+
+#if !defined(EGLIB_TESTS)
+       return OK;
+#endif
+
+       /* implicit length is forbidden */
+               if (g_utf8_to_utf16_with_nuls (src1, -1, NULL, NULL, NULL) != NULL)
+               return FAILED ("explicit nulls must fail with -1 length\n");
+
+       /* empty string */
+       result = compare_utf8_to_utf16_with_nuls (str0, src0, 0, 0);
+       if (result != OK)
+               return result;
+
+       result = compare_utf8_to_utf16_with_nuls  (str1, src1, 5, 5);
+       if (result != OK)
+               return result;
+       result = compare_utf8_to_utf16_with_nuls  (str2, src2, 4, 2);
+       if (result != OK)
+               return result;
+       result = compare_utf8_to_utf16_with_nuls  (str3, src3, 3, 1);
+       if (result != OK)
+               return result;
+       result = compare_utf8_to_utf16_with_nuls  (str4, src4, 3, 1);
+       if (result != OK)
+               return result;
+
+       return OK;
+}
+
 typedef struct {
        char *content;
        size_t length;
@@ -859,6 +915,7 @@ test_utf8_strdown ()
 static Test utf8_tests [] = {
        {"g_utf16_to_utf8", test_utf16_to_utf8},
        {"g_utf8_to_utf16", test_utf8_to_utf16},
+       {"g_utf8_to_utf16_with_nuls", test_utf8_to_utf16_with_nuls},
        {"g_utf8_seq", test_utf8_seq},
        {"g_convert", test_convert },
        {"g_unichar_xdigit_value", test_xdigit },
index c670516a5897f41f2286b6f46a930227a6623483..a916688137c5acd05967a4e7c7b02e2b785d46eb 100644 (file)
@@ -1,5 +1,5 @@
 
-INCLUDES = $(GMODULE_CFLAGS)
+AM_CPPFLAGS = $(GMODULE_CFLAGS)
 
 lib_LTLIBRARIES = libikvm-native.la
 
index e8a0fd5cb3d5099df040608dfa1095b7f93b3b84..49dbe4be81c6dcd2d3466b8ab07bf43b3b8417c6 100644 (file)
@@ -22,7 +22,7 @@ ACLOCAL_AMFLAGS = -I m4
 
 SUBDIRS = m4 include doc
 
-INCLUDES = -I$(top_builddir)/.. -I$(top_srcdir)/..
+AM_CPPFLAGS = -I$(top_builddir)/.. -I$(top_srcdir)/..
 
 #
 # libtool is not capable of creating shared/static versions of a convenience
@@ -115,7 +115,7 @@ endif
 
 ## We have our own definition of LTCOMPILE because we want to use our
 ## CFLAGS, not those passed in from the top level make.
-LTCOMPILE = $(LIBTOOL) --mode=compile --tag=CC $(CC) $(DEFS) $(INCLUDES) \
+LTCOMPILE = $(LIBTOOL) --mode=compile --tag=CC $(CC) $(DEFS) \
        -I$(top_srcdir)/include $(AM_CPPFLAGS) $(CPPFLAGS) \
        $(AM_CFLAGS) $(MY_CFLAGS) $(GC_CFLAGS) 
 LINK = $(LIBTOOL) --mode=link $(CC) $(AM_CFLAGS) $(MY_CFLAGS) $(LDFLAGS) -o $@
index 97d548f03a4bb16bde439ff8f694d42106084c49..18d1179f16895cb7c6e6c17872434dc2ad4eeb89 100644 (file)
@@ -75,7 +75,7 @@ AC_ARG_ENABLE(cplusplus,
 [  --enable-cplusplus          install C++ support],
 )
 
-INCLUDES=-I${srcdir}/include
+AM_CPPFLAGS=-I${srcdir}/include
 THREADDLLIBS=
 ## Libraries needed to support dynamic loading and/or threads.
 case "$THREADS" in
@@ -115,7 +115,7 @@ case "$THREADS" in
       *-*-freebsd*)
        AC_DEFINE(GC_FREEBSD_THREADS)
        if test "x$PTHREAD_CFLAGS" != "x"; then
-               INCLUDES="$INCLUDES $PTHREAD_CFLAGS"
+               AM_CPPFLAGS="$AM_CPPFLAGS $PTHREAD_CFLAGS"
        fi
        if test "x$PTHREAD_LIBS" = "x"; then
                THREADDLLIBS=-pthread
@@ -163,7 +163,7 @@ case "$THREADS" in
          # May want to enable it in other cases, too.
          # Measurements havent yet been done.
        fi
-       INCLUDES="$INCLUDES -pthread"
+       AM_CPPFLAGS="$AM_CPPFLAGS -pthread"
        THREADDLLIBS="-lpthread -lrt"
        ;;
       *)
@@ -191,7 +191,7 @@ case "$THREADS" in
     AC_DEFINE(GC_DGUX386_THREADS)
     AC_DEFINE(DGUX_THREADS)
     # Enable _POSIX4A_DRAFT10_SOURCE with flag -pthread
-    INCLUDES="-pthread $INCLUDES"
+    AM_CPPFLAGS="-pthread $AM_CPPFLAGS"
     ;;
  aix)
     THREADS=posix
@@ -256,7 +256,7 @@ addobjs=
 addlibs=
 addincludes=
 addtests=
-CXXINCLUDES=
+CXXAM_CPPFLAGS=
 case "$TARGET_ECOS" in
    no)
       ;;
@@ -276,7 +276,7 @@ AM_CONDITIONAL(CPLUSPLUS, test "${enable_cplusplus}" = yes)
 
 AC_SUBST(CXX)
 
-AC_SUBST(INCLUDES)
+AC_SUBST(AM_CPPFLAGS)
 AC_SUBST(CXXINCLUDES)
 
 # Configuration of shared libraries
index 5d4102da37f07dd710e225ad62d97386ede56382..440fc15a39793c8747007e4fb31ec825cfcd5c0a 100644 (file)
@@ -603,6 +603,8 @@ Describes the return value of a method:
 .fi
 
 The \fIreturns\fR element can contain the following elements:
+\fIc\fR,
+\fIformat\fR,
 \fIlist\fR,
 \fIpara\fR,
 \fIparamref\fR,
index 351319054f38afbb9536b526fa00fcfbf777f781..19508002a0f8a76486653c6acc2a49d3fdaecbfc 100644 (file)
@@ -525,6 +525,13 @@ System.String except for the System.String:Concat method.
 
        mono --trace=T:System.String,-M:System.String:Concat
 
+.fi
+You can trace managed to unmanaged transitions using
+the wrapper qualifier:
+.nf
+
+       mono --trace=wrapper app.exe
+
 .fi
 Finally, namespaces can be specified using the N: prefix:
 .nf
diff --git a/mcs/class/EntityFramework.SqlServer/EntityFramework.SqlServer-net_4_5.csproj b/mcs/class/EntityFramework.SqlServer/EntityFramework.SqlServer-net_4_5.csproj
new file mode 100644 (file)
index 0000000..4628d3f
--- /dev/null
@@ -0,0 +1,166 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{155AEF28-C81F-405D-9072-9D52780E3E70}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699</NoWarn>\r
+    <OutputPath>./../../class/lib/net_4_5</OutputPath>\r
+    <NoStdLib>true</NoStdLib>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace></RootNamespace>\r
+    <AssemblyName>EntityFramework.SqlServer</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+    <!-- Filter out System.Core added by: Microsoft.NETFramework.props  -->\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <PlatformTarget>AnyCPU</PlatformTarget>\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>DEBUG;TRACE;NET_1_1;NET_2_0;NET_3_0;NET_3_5;NET_4_0;NET_4_5</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+    <AdditionalLibPaths>./../../class/lib/net_4_5</AdditionalLibPaths>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <PlatformTarget>AnyCPU</PlatformTarget>  \r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_1_1;NET_2_0;NET_3_0;NET_3_5;NET_4_0;NET_4_5</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+    <AdditionalLibPaths>./../../class/lib/net_4_5</AdditionalLibPaths>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+   <Compile Include="..\..\..\external\entityframework\src\SharedAssemblyInfo.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework.SqlServer\DbGeographyAdapter.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework.SqlServer\DbGeometryAdapter.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework.SqlServer\Expressions.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework.SqlServer\GlobalSuppressions.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework.SqlServer\IDbSpatialValue.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework.SqlServer\IDbSpatialValueExtensionMethods.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework.SqlServer\Properties\AssemblyVersion.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework.SqlServer\Properties\InternalsVisibleTo.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework.SqlServer\Properties\Resources.SqlServer.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework.SqlServer\SqlDdlBuilder.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework.SqlServer\SqlGen\BoolWrapper.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework.SqlServer\SqlGen\DmlSqlGenerator.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework.SqlServer\SqlTypesAssemblyLoader.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework.SqlServer\SqlVersionUtils.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework.SqlServer\Utilities\DbExpressionExtensions.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework.SqlServer\Utilities\EdmFunctionExtensions.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework.SqlServer\Utilities\MetdataItemExtensions.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework.SqlServer\Utilities\FuncExtensions.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework.SqlServer\Utilities\IDictionaryExtensions.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework.SqlServer\SqlGen\ISqlFragment.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework.SqlServer\SqlGen\JoinSymbol.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework.SqlServer\SqlGen\OptionalColumn.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework.SqlServer\SqlGen\Sql8ConformanceChecker.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework.SqlServer\SqlGen\Sql8ExpressionRewriter.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework.SqlServer\SqlGen\SqlBuilder.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework.SqlServer\SqlGen\SqlFunctionCallHandler.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework.SqlServer\SqlGen\SqlGenerator.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework.SqlServer\SqlGen\SqlSelectClauseBuilder.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework.SqlServer\SqlGen\SqlSelectStatement.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework.SqlServer\SqlGen\SqlWriter.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework.SqlServer\SqlGen\Symbol.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework.SqlServer\SqlGen\SymbolPair.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework.SqlServer\SqlGen\SymbolTable.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework.SqlServer\SqlGen\SymbolUsageManager.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework.SqlServer\SqlGen\TopClause.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework.SqlServer\SqlProviderManifest.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework.SqlServer\SqlProviderServices.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework.SqlServer\SqlProviderUtilities.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework.SqlServer\SqlSpatialDataReader.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework.SqlServer\SqlSpatialServices.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework.SqlServer\SqlTypesAssembly.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework.SqlServer\SqlVersion.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework.SqlServer\Utilities\PrimitiveTypeExtensions.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework.SqlServer\Utilities\RuntimeFailureMethods.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework.SqlServer\Utilities\SqlDataReaderWrapper.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework.SqlServer\Utilities\Throw.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework.SqlServer\Utilities\TypeUsageExtensions.cs" />
+\r
+  </ItemGroup>\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="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent></PreBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <Reference Include="mscorlib.dll">
+      <SpecificVersion>False</SpecificVersion>
+      <HintPath>mscorlib.dll</HintPath>
+    </Reference>
+    <Reference Include="System.dll">
+      <SpecificVersion>False</SpecificVersion>
+      <HintPath>System.dll</HintPath>
+    </Reference>
+    <Reference Include="System.Xml.dll">
+      <SpecificVersion>False</SpecificVersion>
+      <HintPath>System.Xml.dll</HintPath>
+    </Reference>
+    <Reference Include="System.Core.dll">
+      <SpecificVersion>False</SpecificVersion>
+      <HintPath>System.Core.dll</HintPath>
+    </Reference>
+    <Reference Include="EntityFramework.dll">
+      <SpecificVersion>False</SpecificVersion>
+      <HintPath>EntityFramework.dll</HintPath>
+    </Reference>
+    <Reference Include="System.Data.dll">
+      <SpecificVersion>False</SpecificVersion>
+      <HintPath>System.Data.dll</HintPath>
+    </Reference>
+\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+    <ItemGroup>
+    <EmbeddedResource Include="System.Data.Entity.SqlServer.Properties.Resources.SqlServer.resources">
+       <LogicalName>System.Data.Entity.SqlServer.Properties.Resources.SqlServer.resources</LogicalName>
+    </EmbeddedResource>
+    <EmbeddedResource Include="../../../external/entityframework/src/EntityFramework/Resources/System/Data/System.Data.Resources.DbProviderServices.ConceptualSchemaDefinition.csdl">
+       <LogicalName>System.Data.Resources.DbProviderServices.ConceptualSchemaDefinition.csdl</LogicalName>
+    </EmbeddedResource>
+    <EmbeddedResource Include="../../../external/entityframework/src/EntityFramework.SqlServer/Resources/System/Data/SqlClient/System.Data.Resources.SqlClient.SqlProviderServices.ProviderManifest.xml">
+       <LogicalName>System.Data.Resources.SqlClient.SqlProviderServices.ProviderManifest.xml</LogicalName>
+    </EmbeddedResource>
+    <EmbeddedResource Include="../../../external/entityframework/src/EntityFramework.SqlServer/Resources/System/Data/SqlClient/System.Data.Resources.SqlClient.SqlProviderServices.StoreSchemaDefinition.ssdl">
+       <LogicalName>System.Data.Resources.SqlClient.SqlProviderServices.StoreSchemaDefinition.ssdl</LogicalName>
+    </EmbeddedResource>
+    <EmbeddedResource Include="../../../external/entityframework/src/EntityFramework.SqlServer/Resources/System/Data/SqlClient/System.Data.Resources.SqlClient.SqlProviderServices.StoreSchemaDefinition_Sql8.ssdl">
+       <LogicalName>System.Data.Resources.SqlClient.SqlProviderServices.StoreSchemaDefinition_Sql8.ssdl</LogicalName>
+    </EmbeddedResource>
+    <EmbeddedResource Include="../../../external/entityframework/src/EntityFramework.SqlServer/Resources/System/Data/SqlClient/System.Data.Resources.SqlClient.SqlProviderServices.StoreSchemaDefinitionVersion3.ssdl">
+       <LogicalName>System.Data.Resources.SqlClient.SqlProviderServices.StoreSchemaDefinitionVersion3.ssdl</LogicalName>
+    </EmbeddedResource>
+    <EmbeddedResource Include="../../../external/entityframework/src/EntityFramework.SqlServer/Resources/System/Data/SqlClient/System.Data.Resources.SqlClient.SqlProviderServices.StoreSchemaDefinitionVersion3_Sql8.ssdl">
+       <LogicalName>System.Data.Resources.SqlClient.SqlProviderServices.StoreSchemaDefinitionVersion3_Sql8.ssdl</LogicalName>
+    </EmbeddedResource>
+    <EmbeddedResource Include="../../../external/entityframework/src/EntityFramework.SqlServer/Resources/System/Data/SqlClient/System.Data.Resources.SqlClient.SqlProviderServices.StoreSchemaMapping.msl">
+       <LogicalName>System.Data.Resources.SqlClient.SqlProviderServices.StoreSchemaMapping.msl</LogicalName>
+    </EmbeddedResource>
+    <EmbeddedResource Include="../../../external/entityframework/src/EntityFramework.SqlServer/Resources/System/Data/SqlClient/System.Data.Resources.SqlClient.SqlProviderServices.StoreSchemaMappingVersion3.msl">
+       <LogicalName>System.Data.Resources.SqlClient.SqlProviderServices.StoreSchemaMappingVersion3.msl</LogicalName>
+    </EmbeddedResource>
+  </ItemGroup>
+\r
+</Project>\r
+
diff --git a/mcs/class/EntityFramework/EntityFramework-net_4_5.csproj b/mcs/class/EntityFramework/EntityFramework-net_4_5.csproj
new file mode 100644 (file)
index 0000000..8206453
--- /dev/null
@@ -0,0 +1,1761 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{155AEF28-C81F-405D-9072-9D52780E3E70}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699</NoWarn>\r
+    <OutputPath>./../../class/lib/net_4_5</OutputPath>\r
+    <NoStdLib>true</NoStdLib>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace></RootNamespace>\r
+    <AssemblyName>EntityFramework</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+    <!-- Filter out System.Core added by: Microsoft.NETFramework.props  -->\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <PlatformTarget>AnyCPU</PlatformTarget>\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>DEBUG;TRACE;NET_1_1;NET_2_0;NET_3_0;NET_3_5;NET_4_0;NET_4_5</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+    <AdditionalLibPaths>./../../class/lib/net_4_5</AdditionalLibPaths>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <PlatformTarget>AnyCPU</PlatformTarget>  \r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_1_1;NET_2_0;NET_3_0;NET_3_5;NET_4_0;NET_4_5</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+    <AdditionalLibPaths>./../../class/lib/net_4_5</AdditionalLibPaths>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+   <Compile Include="..\..\..\external\entityframework\src\SharedAssemblyInfo.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Config\AppConfigDependencyResolver.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Config\CachingDependencyResolver.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Config\CompositeResolver`.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Config\DbConfiguration.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Config\DbConfigurationFinder.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Config\DbConfigurationLoader.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Config\DbConfigurationManager.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Config\DbNullConfiguration.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Config\DbConfigurationProxy.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Config\DefaultProviderServicesResolver.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Config\IDbDependencyResolver.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Config\IDbDependencyResolverExtensions.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Config\MigrationsConfigurationResolver.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Config\ProviderServicesFactory.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Config\ResolverChain.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Config\RootDependencyResolver.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Config\SingletonDependencyResolver.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\CommandTrees\DbAggregate.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\CommandTrees\DbAndExpression.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\CommandTrees\DbApplyExpression.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\CommandTrees\DbArithmeticExpression.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\CommandTrees\DbCaseExpression.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\CommandTrees\DbCastExpression.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\CommandTrees\DbCommandTreeKind.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\CommandTrees\DbComparisonExpression.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\CommandTrees\DbConstantExpression.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\CommandTrees\DbCrossJoinExpression.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\CommandTrees\DbDerefExpression.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\CommandTrees\DbDistinctExpression.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\CommandTrees\DbElementExpression.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\CommandTrees\DbEntityRefExpression.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\CommandTrees\DbExceptExpression.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\CommandTrees\DbExpressionBinding.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\CommandTrees\DbFilterExpression.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\CommandTrees\DbFunctionExpression.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\CommandTrees\DbGroupAggregate.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\CommandTrees\DbGroupByExpression.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\CommandTrees\DbIntersectExpression.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\CommandTrees\DbIsEmptyExpression.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\CommandTrees\DbIsNullExpression.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\CommandTrees\DbIsOfExpression.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\CommandTrees\DbJoinExpression.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\CommandTrees\DbLambdaExpression.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\CommandTrees\DbLikeExpression.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\CommandTrees\DbLimitExpression.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\CommandTrees\DbNewInstanceExpression.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\CommandTrees\DbNotExpression.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\CommandTrees\DbNullExpression.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\CommandTrees\DbOfTypeExpression.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\CommandTrees\DbOrExpression.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\CommandTrees\DbParameterReferenceExpression.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\CommandTrees\DbProjectExpression.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\CommandTrees\DbPropertyExpression.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\CommandTrees\DbQuantifierExpression.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\CommandTrees\DbRefExpression.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\CommandTrees\DbRelatedEntityRef.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\CommandTrees\DbRelationshipNavigationExpression.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\CommandTrees\DbSkipExpression.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\CommandTrees\DbSortClause.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\CommandTrees\DbSortExpression.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\CommandTrees\DbTreatExpression.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\CommandTrees\DbUnaryExpression.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\CommandTrees\DbFunctionAggregate.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\CommandTrees\BasicCommandTreeVisitor.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\CommandTrees\BasicExpressionVisitor.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\CommandTrees\DbBinaryExpression.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\CommandTrees\DbCommandTree.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\CommandTrees\DbDeleteCommandTree.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\CommandTrees\DbExpression.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\CommandTrees\DbExpressionKind.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\CommandTrees\DbExpressionVisitor.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\CommandTrees\DbExpressionVisitor_TResultType.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\CommandTrees\DbFunctionCommandTree.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\CommandTrees\DbInsertCommandTree.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\CommandTrees\DbLambda.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\CommandTrees\DbModificationClause.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\CommandTrees\DbModificationCommandTree.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\CommandTrees\DbQueryCommandTree.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\CommandTrees\DbSetClause.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\CommandTrees\DbUpdateCommandTree.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\CommandTrees\DbVariableReferenceExpression.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\CommandTrees\DefaultExpressionVisitor.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\CommandTrees\DbGroupExpressionBinding.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\CommandTrees\ExpressionBuilder\DbExpressionBuilder.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\CommandTrees\ExpressionBuilder\EdmFunctions.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\CommandTrees\ExpressionBuilder\Internal\ArgumentValidation.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\CommandTrees\ExpressionBuilder\Internal\EnumerableValidator.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\CommandTrees\ExpressionBuilder\Row.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\CommandTrees\ExpressionBuilder\Spatial\SpatialEdmFunctions.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\CommandTrees\ExpressionRebinder.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\CommandTrees\Internal\DbExpressionRule.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\CommandTrees\Internal\DbExpressionRuleProcessingVisitor.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\CommandTrees\Internal\ExpressionDumper.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\CommandTrees\Internal\ExpressionKeyGen.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\CommandTrees\Internal\ExpressionList.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\CommandTrees\Internal\ExpressionPrinter.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\CommandTrees\Internal\ParameterRetriever.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\CommandTrees\Internal\PatternMatchRule.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\CommandTrees\Internal\PatternMatchRuleProcessor.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\CommandTrees\Internal\Patterns.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\CommandTrees\Internal\Validator.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\CommandTrees\Internal\ViewSimplifier.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\CommandTrees\Internal\XmlExpressionDumper.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\CommandTrees\DbRefKeyExpression.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\CommandTrees\DbUnionAllExpression.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\CommandTrees\DbScanExpression.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\internal\materialization\CodeGenEmitter.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\internal\materialization\CoordinatorFactory`.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\internal\materialization\Coordinator`.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\Internal\ObjectQueryExecutionPlanFactory.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\MaterializedDataRecord.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\DataRecordInfo.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\DbCommandDefinition.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\DbProviderManifest.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\DbProviderServices.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\DbXmlEnabledProviderManifest.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\EntityRecordInfo.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\EntitySql\AST\AliasedExpr.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\EntitySql\AST\ApplyClauseItem.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\EntitySql\AST\ApplyKind.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\EntitySql\AST\AstNode.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\EntitySql\AST\BuiltInExpr.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\EntitySql\AST\BuiltInKind.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\EntitySql\AST\CaseExpr.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\EntitySql\AST\CollectionTypeDefinition.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\EntitySql\AST\Command.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\EntitySql\AST\DerefExpr.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\EntitySql\AST\KeyExpr.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\EntitySql\AST\MultisetConstructorExpr.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\EntitySql\AST\CreateRefExpr.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\EntitySql\AST\DistinctKind.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\EntitySql\AST\DotExpr.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\EntitySql\AST\FromClause.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\EntitySql\AST\FromClauseItem.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\EntitySql\AST\FromClauseItemKind.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\EntitySql\AST\FunctionDefinition.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\EntitySql\AST\GroupAggregateExpr.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\EntitySql\AST\GroupByClause.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\EntitySql\AST\GroupPartitionExpr.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\EntitySql\AST\HavingClause.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\EntitySql\AST\Identifier.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\EntitySql\AST\JoinClauseItem.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\EntitySql\AST\JoinKind.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\EntitySql\AST\Literal.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\EntitySql\AST\LiteralKind.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\EntitySql\AST\MethodExpr.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\EntitySql\AST\NamespaceImport.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\EntitySql\AST\NavigationExpr.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\EntitySql\AST\OrderByClause.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\EntitySql\AST\OrderByClauseItem.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\EntitySql\AST\OrderKind.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\EntitySql\AST\ParenExpr.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\EntitySql\AST\QueryExpr.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\EntitySql\AST\QueryParameter.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\EntitySql\AST\QueryStatement.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\EntitySql\AST\RefExpr.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\EntitySql\AST\RefTypeDefinition.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\EntitySql\AST\RowConstructorExpr.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\EntitySql\AST\RowTypeDefinition.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\EntitySql\AST\SelectClause.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\EntitySql\AST\SelectKind.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\EntitySql\AST\Statement.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\EntitySql\AST\TypeDefinition.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\EntitySql\AST\WhenThenExpr.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\EntitySql\CqlErrorHelper.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\EntitySql\CqlLexer.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\EntitySql\CqlLexerHelpers.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\EntitySql\CqlParser.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\EntitySql\CqlParserHelpers.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\EntitySql\CqlQuery.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\EntitySql\Disposer.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\EntitySql\EntityContainerExpression.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\EntitySql\EntitySqlParser.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\EntitySql\ErrorContext.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\EntitySql\ExpressionResolution.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\EntitySql\ExpressionResolutionClass.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\EntitySql\FunctionAggregateInfo.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\EntitySql\FunctionDefinition.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\EntitySql\FunctionOverloadResolver.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\EntitySql\GroupAggregateInfo.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\EntitySql\GroupAggregateKind.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\EntitySql\GroupKeyAggregateInfo.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\EntitySql\GroupKeyDefinitionScopeEntry.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\EntitySql\GroupPartitionInfo.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\EntitySql\IGetAlternativeName.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\EntitySql\IGroupExpressionExtendedInfo.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\EntitySql\InlineFunctionGroup.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\EntitySql\InlineFunctionInfo.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\EntitySql\InvalidGroupInputRefScopeEntry.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\EntitySql\MetadataEnumMember.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\EntitySql\MetadataFunctionGroup.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\EntitySql\MetadataMember.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\EntitySql\MetadataMemberClass.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\EntitySql\MetadataNamespace.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\EntitySql\MetadataType.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\EntitySql\Pair.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\EntitySql\ParseResult.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\EntitySql\ParserOptions.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\EntitySql\Scope.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\EntitySql\ScopeEntry.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\EntitySql\ScopeEntryKind.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\EntitySql\ScopeRegion.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\EntitySql\SemanticAnalyzer.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\EntitySql\SemanticResolver.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\EntitySql\SourceScopeEntry.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\EntitySql\StaticContext.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\EntitySql\TypeResolver.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\EntitySql\ValueExpression.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\EntityUtil.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\ObjectReferenceEqualityComparer.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\ResultAssembly\BridgeDataReaderFactory.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Internal\ConfigFile\MigrationSqlGeneratorElement.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Infrastructure\IDbAsyncEnumerable.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Infrastructure\IDbAsyncEnumerableExtensions.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Infrastructure\DbSqlSetQuery.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Infrastructure\DbSqlSetQuery`.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Infrastructure\IDbAsyncEnumerator.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Infrastructure\IDbAsyncQueryProvider.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Infrastructure\IDbAsyncQueryProviderExtensions.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Internal\ConfigFile\ProviderCollection.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Internal\ConfigFile\ProviderElement.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Internal\IDbEnumerator.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Internal\DefaultModelCacheKey.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Internal\DefaultModelCacheKeyFactory.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Infrastructure\IDbModelCacheKey.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Infrastructure\IDbModelCacheKeyFactory.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Internal\LazyAsyncEnumerator.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Internal\LazyEnumerator`.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Internal\ProviderConfig.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Spatial\SpatialServicesLoader.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Utilities\BoolExtensions.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Utilities\DbModelExtensions.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Utilities\DbProviderFactoryExtensions.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Utilities\ExceptionExtensions.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\FieldMetadata.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\FieldNameLookup.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\internal\DbTypeMap.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\internal\materialization\CollectionTranslatorResult.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\internal\materialization\columnmapkeybuilder.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\internal\materialization\compensatingcollection.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\internal\materialization\coordinator.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\internal\materialization\coordinatorfactory.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\internal\materialization\coordinatorscratchpad.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\internal\materialization\recordstate.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\internal\materialization\recordstatefactory.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\internal\materialization\recordstatescratchpad.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\internal\materialization\shaper.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\internal\materialization\shaperfactory.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\internal\materialization\ShaperFactory`.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\internal\materialization\Shaper`.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\internal\materialization\translator.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\internal\materialization\TranslatorArg.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\internal\materialization\TranslatorResult.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\internal\materialization\util.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\internal\MultipartIdentifier.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\QueryCache\CompiledQueryCacheEntry.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\QueryCache\CompiledQueryCacheKey.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\QueryCache\EntityClientCacheKey.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\QueryCache\EntitySqlQueryCacheKey.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\QueryCache\LinqQueryCacheKey.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\QueryCache\QueryCacheEntry.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\QueryCache\QueryCacheKey.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\QueryCache\QueryCacheManager.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\QueryCache\shaperfactoryquerycachekey.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\Utils\AliasGenerator.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\Utils\Boolean\AndExpr.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\Utils\Boolean\BasicVisitor.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\Utils\Boolean\BooleanExpressionTermRewriter.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\Utils\Boolean\BoolExpr.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\Utils\Boolean\Clause.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\Utils\Boolean\CnfClause.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\Utils\Boolean\CnfSentence.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\Utils\Boolean\ConversionContext.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\Utils\Boolean\Converter.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\Utils\Boolean\DnfClause.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\Utils\Boolean\DnfSentence.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\Utils\Boolean\DomainConstraint.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\Utils\Boolean\DomainConstraintConversionContext.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\Utils\Boolean\DomainVariable.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\Utils\Boolean\ExprType.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\Utils\Boolean\FalseExpr.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\Utils\Boolean\GenericConversionContext.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\Utils\Boolean\IdentifierService.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\Utils\Boolean\KnowledgeBase.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\Utils\Boolean\LeafVisitor.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\Utils\Boolean\Literal.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\Utils\Boolean\LiteralVertexPair.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\Utils\Boolean\NegationPusher.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\Utils\Boolean\NormalFormNode.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\Utils\Boolean\NotExpr.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\Utils\Boolean\OrExpr.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\Utils\Boolean\Sentence.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\Utils\Boolean\Simplifier.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\Utils\Boolean\Solver.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\Utils\Boolean\TermCounter.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\Utils\Boolean\TermExpr.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\Utils\Boolean\ToDecisionDiagramConverter.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\Utils\Boolean\TreeExpr.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\Utils\Boolean\TrueExpr.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\Utils\Boolean\Vertex.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\Utils\Boolean\Visitor.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\Utils\ByValueComparer.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\Utils\ByValueEqualityComparer.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\Utils\CommandHelper.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\Utils\DisposableCollectionWrapper.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\Utils\Helpers.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\Utils\InternalBase.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\Utils\KeyToListMap.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\Utils\Memoizer.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\Utils\MetadataHelper.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\Utils\ModifiableIteratorCollection.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\Utils\Pair.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\Utils\Set.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\Utils\StringUtil.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\Utils\ThreadSafeList.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\Utils\TrailingSpaceComparer.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\Utils\TrailingSpaceStringComparer.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Common\Utils\TreePrinter.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\EntityClient\DbParameterCollectionHelper.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\EntityClient\EntityCommand.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\EntityClient\EntityConnection.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\EntityClient\EntityConnectionStringBuilder.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\EntityClient\EntityDataReader.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\EntityClient\EntityParameter.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\EntityClient\EntityParameterCollection.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\EntityClient\EntityProviderFactory.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\EntityClient\EntityTransaction.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\EntityClient\Internal\DbConnectionOptions.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\EntityClient\Internal\EntityProviderServices.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\EntityClient\Internal\IEntityAdapter.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\EntityClient\Internal\EntityAdapter.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\EntityClient\Internal\EntityCommandDefinition.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\EntityClient\NameValuePair.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\EntityCommandCompilationException.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\EntityCommandExecutionException.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\EntityException.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\EntityKey.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\EntityKeyMember.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\EntityModel\SchemaObjectModel\Action.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\EntityModel\SchemaObjectModel\AddErrorKind.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\EntityModel\SchemaObjectModel\BooleanFacetDescriptionElement.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\EntityModel\SchemaObjectModel\ByteFacetDescriptionElement.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\EntityModel\SchemaObjectModel\CollectionKind.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\EntityModel\SchemaObjectModel\CollectionTypeElement.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\EntityModel\SchemaObjectModel\ConcurrencyMode.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\EntityModel\SchemaObjectModel\DocumentationElement.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\EntityModel\SchemaObjectModel\EntityContainer.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\EntityModel\SchemaObjectModel\EntityContainerAssociationSet.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\EntityModel\SchemaObjectModel\EntityContainerAssociationSetEnd.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\EntityModel\SchemaObjectModel\EntityContainerEntitySet.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\EntityModel\SchemaObjectModel\EntityContainerEntitySetDefiningQuery.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\EntityModel\SchemaObjectModel\EntityContainerRelationshipSet.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\EntityModel\SchemaObjectModel\EntityContainerRelationshipSetEnd.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\EntityModel\SchemaObjectModel\EntityKeyElement.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\EntityModel\SchemaObjectModel\ErrorCode.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\EntityModel\SchemaObjectModel\FacetDescriptionElement.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\EntityModel\SchemaObjectModel\FacetEnabledSchemaElement.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\EntityModel\SchemaObjectModel\FilteredSchemaElementLookUpTable.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\EntityModel\SchemaObjectModel\Function.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\EntityModel\SchemaObjectModel\FunctionCommandText.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\EntityModel\SchemaObjectModel\FunctionImportElement.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\EntityModel\SchemaObjectModel\IntegerFacetDescriptionElement.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\EntityModel\SchemaObjectModel\IRelationship.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\EntityModel\SchemaObjectModel\IRelationshipEnd.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\EntityModel\SchemaObjectModel\ISchemaElementLookUpTable.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\EntityModel\SchemaObjectModel\ItemType.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\EntityModel\SchemaObjectModel\PropertyRefElement.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\EntityModel\SchemaObjectModel\ModelFunction.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\EntityModel\SchemaObjectModel\ModelFunctionTypeElement.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\EntityModel\SchemaObjectModel\Multiplicity.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\EntityModel\SchemaObjectModel\NavigationProperty.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\EntityModel\SchemaObjectModel\OnOperation.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\EntityModel\SchemaObjectModel\Operation.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\EntityModel\SchemaObjectModel\Parameter.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\EntityModel\SchemaObjectModel\PrimitiveSchema.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\EntityModel\SchemaObjectModel\Property.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\EntityModel\SchemaObjectModel\ReferenceSchema.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\EntityModel\SchemaObjectModel\ReferenceTypeElement.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\EntityModel\SchemaObjectModel\ReferentialConstraint.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\EntityModel\SchemaObjectModel\ReferentialConstraintRoleElement.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\EntityModel\SchemaObjectModel\Relationship.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\EntityModel\SchemaObjectModel\RelationshipEnd.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\EntityModel\SchemaObjectModel\RelationshipEndCollection.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\EntityModel\SchemaObjectModel\ReturnType.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\EntityModel\SchemaObjectModel\ReturnValue.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\EntityModel\SchemaObjectModel\RowTypeElement.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\EntityModel\SchemaObjectModel\RowTypePropertyElement.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\EntityModel\SchemaObjectModel\ScalarType.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\EntityModel\SchemaObjectModel\Schema.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\EntityModel\SchemaObjectModel\SchemaComplexType.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\EntityModel\SchemaObjectModel\SchemaDataModelOption.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\EntityModel\SchemaObjectModel\SchemaElement.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\EntityModel\SchemaObjectModel\SchemaElementLookUpTable.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\EntityModel\SchemaObjectModel\SchemaElementLookUpTableEnumerator.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\EntityModel\SchemaObjectModel\SchemaEnumMember.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\EntityModel\SchemaObjectModel\SchemaEnumType.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\EntityModel\SchemaObjectModel\SchemaLookupTable.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\EntityModel\SchemaObjectModel\SchemaManager.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\EntityModel\SchemaObjectModel\SchemaType.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\EntityModel\SchemaObjectModel\SridFacetDescriptionElement.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\EntityModel\SchemaObjectModel\StoreGeneratedPattern.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\EntityModel\SchemaObjectModel\StructuredProperty.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\EntityModel\SchemaObjectModel\StructuredType.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\EntityModel\SchemaObjectModel\TextElement.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\EntityModel\SchemaObjectModel\TypeElement.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\EntityModel\SchemaObjectModel\TypeModifier.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\EntityModel\SchemaObjectModel\TypeRefElement.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\EntityModel\SchemaObjectModel\TypeUsageBuilder.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\EntityModel\SchemaObjectModel\Utils.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\EntityModel\SchemaObjectModel\ValidationHelper.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\EntityModel\SchemaObjectModel\XmlSchemaResource.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\EntityResCategoryAttribute.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\EntityResDescriptionAttribute.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\EntitySqlException.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\IEntityStateEntry.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\IEntityStateManager.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\IExtendedDataRecord.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\InternalMappingException.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\InvalidCommandTreeException.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\MappingException.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\basemetadatamappingvisitor.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\CompressingHashBuilder.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\DefaultObjectMappingItemCollection.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\EntityViewContainer.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\EntityViewGenerationAttribute.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\FunctionImportComplexTypeMapping.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\FunctionImportEntityTypeMapping.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\FunctionImportEntityTypeMappingCondition.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\FunctionImportEntityTypeMappingConditionIsNull.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\FunctionImportEntityTypeMappingConditionValue.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\FunctionImportMapping.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\FunctionImportReturnTypeStructuralTypeColumnRenameMapping.ReturnTypeRenameMapping.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\FunctionImportMappingComposable.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\FunctionImportMappingNonComposable.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\FunctionImportNormalizedEntityTypeMapping.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\FunctionImportReturnTypeEntityTypeColumnsRenameBuilder.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\FunctionImportReturnTypePropertyMapping.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\FunctionImportReturnTypeScalarPropertyMapping.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\FunctionImportReturnTypeStructuralTypeColumn.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\FunctionImportStructuralTypeMapping.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\FunctionImportStructuralTypeMappingKB.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\LineInfo.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\Mapping.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\MappingItemCollection.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\MemberMappingKind.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\metadatamappinghashervisitor.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\StorageAssociationSetModificationFunctionMapping.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\StorageEntityTypeModificationFunctionMapping.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\StorageModificationFunctionMemberPath.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\StorageModificationFunctionParameterBinding.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\StorageModificationFunctionResultBinding.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\StringHashBuilder.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\ObjectAssociationEndMapping.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\ObjectComplexPropertyMapping.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\ObjectMemberMapping.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\ObjectMslConstructs.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\ObjectNavigationPropertyMapping.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\ObjectPropertyMapping.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\ObjectTypeMapping.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\StorageAssociationSetMapping.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\StorageAssociationTypeMapping.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\StorageComplexPropertyMapping.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\StorageComplexTypeMapping.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\StorageConditionPropertyMapping.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\StorageEndPropertyMapping.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\StorageEntityContainerMapping.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\StorageEntitySetMapping.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\StorageEntityTypeMapping.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\StorageMappingErrorCode.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\StorageMappingFragment.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\StorageMappingItemCollection.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\StorageMappingItemLoader.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\StorageModificationFunctionMapping.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\StorageMslConstructs.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\StoragePropertyMapping.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\StorageScalarPropertyMapping.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\StorageSetMapping.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\StorageTypeMapping.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\Update\Internal\AssociationSetMetadata.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\Update\Internal\ChangeNode.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\Update\Internal\CompositeKey.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\Update\Internal\DynamicUpdateCommand.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\Update\Internal\ExtractedStateEntry.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\Update\Internal\ExtractorMetadata.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\Update\Internal\FunctionMappingTranslator.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\Update\Internal\FunctionUpdateCommand.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\Update\Internal\Graph.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\Update\Internal\KeyManager.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\Update\Internal\ModificationOperator.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\Update\Internal\ModifiedPropertiesBehavior.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\Update\Internal\Propagator.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\Update\Internal\Propagator.Evaluator.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\Update\Internal\Propagator.ExtentPlaceholderCreator.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\Update\Internal\Propagator.JoinPropagator.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\Update\Internal\Propagator.JoinPropagator.JoinPredicateVisitor.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\Update\Internal\Propagator.JoinPropagator.SubstitutingCloneVisitor.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\Update\Internal\PropagatorFlags.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\Update\Internal\PropagatorResult.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\Update\Internal\RecordConverter.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\Update\Internal\SourceInterpreter.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\Update\Internal\TableChangeProcessor.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\Update\Internal\UndirectedGraph.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\Update\Internal\UpdateCommand.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\Update\Internal\updatecommandorderer.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\Update\Internal\UpdateCompiler.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\Update\Internal\UpdateExpressionVisitor.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\Update\Internal\UpdateTranslator.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\Update\Internal\ViewLoader.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\ValueCondition.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\ViewGeneration\BasicViewGenerator.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\ViewGeneration\CellCreator.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\ViewGeneration\CellPartitioner.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\ViewGeneration\CellTreeSimplifier.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\ViewGeneration\ConfigViewGenerator.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\ViewGeneration\CqlGeneration\AliasedSlot.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\ViewGeneration\CqlGeneration\BooleanProjectedSlot.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\ViewGeneration\CqlGeneration\CaseCqlBlock.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\ViewGeneration\CqlGeneration\CqlBlock.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\ViewGeneration\CqlGeneration\CqlIdentifiers.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\ViewGeneration\CqlGeneration\CqlWriter.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\ViewGeneration\CqlGeneration\ExtentCqlBlock.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\ViewGeneration\CqlGeneration\JoinCqlBlock.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\ViewGeneration\CqlGeneration\SlotInfo.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\ViewGeneration\CqlGeneration\UnionCqlBlock.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\ViewGeneration\CqlGenerator.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\ViewGeneration\DiscriminatorMap.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\ViewGeneration\GeneratedView.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\ViewGeneration\PerfType.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\ViewGeneration\QueryRewriting\DefaultTileProcessor.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\ViewGeneration\QueryRewriting\FragmentQuery.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\ViewGeneration\QueryRewriting\FragmentQueryKB.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\ViewGeneration\QueryRewriting\FragmentQueryProcessor.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\ViewGeneration\QueryRewriting\ITileQuery.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\ViewGeneration\QueryRewriting\QueryRewriter.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\ViewGeneration\QueryRewriting\RewritingPass.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\ViewGeneration\QueryRewriting\RewritingProcessor.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\ViewGeneration\QueryRewriting\RewritingSimplifier.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\ViewGeneration\QueryRewriting\RewritingValidator.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\ViewGeneration\QueryRewriting\RoleBoolean.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\ViewGeneration\QueryRewriting\Tile.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\ViewGeneration\QueryRewriting\TileBinaryOperator.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\ViewGeneration\QueryRewriting\TileNamed.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\ViewGeneration\QueryRewriting\TileOpKind.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\ViewGeneration\QueryRewriting\TileProcessor.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\ViewGeneration\QueryRewriting\TileQueryProcessor.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\ViewGeneration\Structures\BoolExpression.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\ViewGeneration\Structures\BoolExpressionVisitors.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\ViewGeneration\Structures\BoolLiteral.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\ViewGeneration\Structures\CaseStatement.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\ViewGeneration\Structures\CaseStatementProjectedSlot.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\ViewGeneration\Structures\Cell.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\ViewGeneration\Structures\CellIdBoolean.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\ViewGeneration\Structures\CellLabel.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\ViewGeneration\Structures\CellQuery.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\ViewGeneration\Structures\CellTreeNode.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\ViewGeneration\Structures\CellTreeNodeVisitors.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\ViewGeneration\Structures\CellTreeOpType.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\ViewGeneration\Structures\Constant.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\ViewGeneration\Structures\ConstantProjectedSlot.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\ViewGeneration\Structures\Domain.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\ViewGeneration\Structures\ErrorLog.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\ViewGeneration\Structures\LeafCellTreeNode.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\ViewGeneration\Structures\LeftCellWrapper.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\ViewGeneration\Structures\MemberDomainMap.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\ViewGeneration\Structures\MemberMaps.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\ViewGeneration\Structures\MemberPath.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\ViewGeneration\Structures\MemberProjectedSlot.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\ViewGeneration\Structures\MemberProjectionIndex.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\ViewGeneration\Structures\MemberRestriction.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\ViewGeneration\Structures\NegatedConstant.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\ViewGeneration\Structures\OpCellTreeNode.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\ViewGeneration\Structures\ProjectedSlot.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\ViewGeneration\Structures\QualifiedCellIdBoolean.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\ViewGeneration\Structures\ScalarConstant.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\ViewGeneration\Structures\ScalarRestriction.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\ViewGeneration\Structures\TrueFalseLiteral.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\ViewGeneration\Structures\TypeConstant.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\ViewGeneration\Structures\TypeRestriction.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\ViewGeneration\Structures\ViewTarget.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\ViewGeneration\Structures\WithStatement.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\ViewGeneration\Utils\ExceptionHelpers.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\ViewGeneration\Utils\ExternalCalls.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\ViewGeneration\Utils\ViewGenErrorCode.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\ViewGeneration\Validation\BasicCellRelation.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\ViewGeneration\Validation\BasicKeyConstraint.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\ViewGeneration\Validation\CellRelation.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\ViewGeneration\Validation\ConditionComparer.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\ViewGeneration\Validation\ConstraintBase.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\ViewGeneration\Validation\errorpatternmatcher.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\ViewGeneration\Validation\ExtentKey.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\ViewGeneration\Validation\ForeignConstraint.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\ViewGeneration\Validation\KeyConstraint.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\ViewGeneration\Validation\SchemaConstraints.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\ViewGeneration\Validation\ViewCellRelation.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\ViewGeneration\Validation\ViewCellSlot.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\ViewGeneration\Validation\ViewKeyConstraint.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\ViewGeneration\Validator.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\ViewGeneration\ViewgenContext.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\ViewGeneration\ViewGenerator.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\ViewGeneration\ViewgenGatekeeper.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\ViewGeneration\ViewGenMode.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\ViewGeneration\ViewGenResults.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\ViewGeneration\ViewGenTraceLevel.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Mapping\ViewValidator.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\MetadataException.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Metadata\AspProxy.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Metadata\CacheForPrimitiveTypes.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Metadata\ClrPerspective.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Metadata\Converter.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Metadata\CustomAssemblyResolver.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Metadata\DataSpace.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Metadata\DefaultAssemblyResolver.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Metadata\EdmError.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Metadata\EdmItemCollection.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Metadata\EdmItemCollection.OcAssemblyCache.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Metadata\EdmItemError.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Metadata\EdmSchemaError.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Metadata\EdmSchemaErrorSeverity.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Metadata\EdmValidator.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Metadata\Edm\AssociationEndMember.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Metadata\Edm\AssociationSet.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Metadata\Edm\AssociationSetEnd.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Metadata\Edm\AssociationType.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Metadata\Edm\ClrEntityType.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Metadata\Edm\ClrEnumType.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Metadata\Edm\PropertyKind.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Metadata\Edm\BuiltInKind.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Metadata\Edm\CollectionType.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Metadata\Edm\ComplexType.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Metadata\Edm\documentation.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Metadata\Edm\EdmConstants.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Metadata\Edm\EdmFunction.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Metadata\Edm\EdmMember.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Metadata\Edm\EdmProperty.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Metadata\Edm\EdmType.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Metadata\Edm\EntityContainer.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Metadata\Edm\EntitySet.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Metadata\Edm\EntitySetBase.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Metadata\Edm\EntitySetBaseCollection.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Metadata\Edm\EntityType.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Metadata\Edm\EntityTypeBase.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Metadata\Edm\EnumMember.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Metadata\Edm\EnumType.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Metadata\Edm\Facet.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Metadata\Edm\FacetDescription.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Metadata\Edm\FacetValueContainer.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Metadata\Edm\FacetValues.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Metadata\Edm\FilteredReadOnlyMetadataCollection.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Metadata\Edm\FunctionParameter.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Metadata\Edm\GlobalItem.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Metadata\Edm\ItemCollection.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Metadata\Edm\LightweightCodeGenerator.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Metadata\Edm\MemberCollection.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Metadata\Edm\MetadataCollection.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Metadata\Edm\MetadataItem.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Metadata\Edm\MetadataItem_Static.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Metadata\Edm\MetadataProperty.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Metadata\Edm\MetadataPropertyAttribute.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Metadata\Edm\MetadataPropertyCollection.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Metadata\Edm\MetadataPropertyvalue.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Metadata\Edm\NavigationProperty.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Metadata\Edm\NavigationPropertyAccessor.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Metadata\Edm\OperationAction.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Metadata\Edm\ParameterMode.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Metadata\Edm\PrimitiveType.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Metadata\Edm\PrimitiveTypeKind.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Metadata\Edm\Provider\ClrProviderManifest.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Metadata\Edm\Provider\EdmProviderManifest.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Metadata\Edm\Provider\EdmProviderManifestFunctionBuilder.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Metadata\Edm\Provider\EdmProviderManifestSpatialFunctions.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Metadata\Edm\ReadOnlyMetadataCollection.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Metadata\Edm\ReferentialConstraint.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Metadata\Edm\RefType.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Metadata\Edm\RelationshipEndMember.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Metadata\Edm\RelationshipMultiplicity.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Metadata\Edm\RelationshipSet.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Metadata\Edm\RelationshipType.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Metadata\Edm\RowType.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Metadata\Edm\safelink.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Metadata\Edm\safelinkcollection.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Metadata\Edm\SimpleType.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Metadata\Edm\StructuralType.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Metadata\Edm\TypeUsage.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Metadata\Edm\util.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Metadata\Helper.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Metadata\MappingMetadataHelper.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Metadata\MetadataArtifactAssemblyResolver.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Metadata\MetadataArtifactLoader.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Metadata\MetadataArtifactLoaderComposite.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Metadata\MetadataArtifactLoaderCompositeFile.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Metadata\MetadataArtifactLoaderCompositeResource.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Metadata\MetadataArtifactLoaderFile.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Metadata\MetadataArtifactLoaderResource.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Metadata\MetadataArtifactLoaderXmlReaderWrapper.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Metadata\MetadataCache.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Metadata\MetadataWorkspace.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Metadata\ModelPerspective.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Metadata\ObjectHelper.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Metadata\ObjectItemCollection.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Metadata\ObjectLayer\AssemblyCache.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Metadata\ObjectLayer\AssemblyCacheEntry.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Metadata\ObjectLayer\ImmutableAssemblyCacheEntry.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Metadata\ObjectLayer\KnownAssembliesSet.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Metadata\ObjectLayer\KnownAssemblyEntry.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Metadata\ObjectLayer\LoadMessageLogger.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Metadata\ObjectLayer\LockedAssemblyCache.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Metadata\ObjectLayer\MetadataAssemblyHelper.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Metadata\ObjectLayer\MutableAssemblyCacheEntry.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Metadata\ObjectLayer\ObjectItemAssemblyLoader.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Metadata\ObjectLayer\ObjectItemAttributeAssemblyLoader.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Metadata\ObjectLayer\ObjectItemCachedAssemblyLoader.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Metadata\ObjectLayer\ObjectItemConventionAssemblyLoader.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Metadata\ObjectLayer\ObjectItemLoadingSessionData.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Metadata\ObjectLayer\ObjectItemNoOpAssemblyLoader.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Metadata\ParameterTypeSemantics.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Metadata\Perspective.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Metadata\StoreItemCollection.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Metadata\StoreItemCollection.Loader.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Metadata\TargetPerspective.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Metadata\TypeHelpers.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Metadata\TypeSemantics.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Metadata\ValidationErrorEventArgs.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Metadata\ValidationSeverity.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Metadata\XmlConstants.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\ObjectNotFoundException.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\CompiledQuery.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\CurrentValueRecord.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\DataClasses\ComplexObject.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\DataClasses\EdmComplexPropertyAttribute.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\DataClasses\EdmComplexTypeAttribute.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\DataClasses\EdmEntityTypeAttribute.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\DataClasses\EdmEnumTypeAttribute.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\DataClasses\EdmPropertyAttribute.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\DataClasses\EdmRelationshipNavigationPropertyAttribute.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\DataClasses\EdmRelationshipRoleAttribute.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\DataClasses\EdmScalarPropertyAttribute.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\DataClasses\EdmSchemaAttribute.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\DataClasses\EdmTypeAttribute.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\DataClasses\EntityCollection.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\DataClasses\EntityObject.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\DataClasses\EntityReference.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\DataClasses\EntityReference`.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\DataClasses\IEntityChangeTracker.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\DataClasses\IEntityWithChangeTracker.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\DataClasses\IEntityWithKey.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\DataClasses\IEntityWithRelationships.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\DataClasses\IRelatedEnd.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\DataClasses\IRelatedEndExtensions.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\DataClasses\IRelationshipFixer.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\DataClasses\RelatedEnd.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\DataClasses\RelationshipFixer.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\DataClasses\RelationshipKind.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\DataClasses\RelationshipManager.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\DataClasses\RelationshipNavigation.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\DataClasses\StructuralObject.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\DataRecordObjectView.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\DbUpdatableDataRecord.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\ELinq\Binding.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\ELinq\BindingContext.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\ELinq\CompiledELinqQueryState.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\ELinq\ELinqQueryState.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\ELinq\EntityExpressionVisitor.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\ELinq\Error.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\ELinq\ExpressionConverter.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\ELinq\InitializerMetadata.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\ELinq\QueryParameterExpression.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\ELinq\ReadOnlyCollectionExtensions.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\ELinq\Funcletizer.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\ELinq\InitializerFacet.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\ELinq\LinqExpressionNormalizer.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\ELinq\MethodCallTranslator.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\ELinq\ObjectQueryProvider.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\ELinq\OrderByLifter.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\ELinq\ReflectionUtil.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\ELinq\SequenceMethod.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\ELinq\SpatialMethodCallTranslator.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\ELinq\SpatialPropertyTranslator.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\ELinq\Translator.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\ELinq\TypeSystem.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\EntityEntry.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\EntitySetQualifiedType.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\FieldDescriptor.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\IntBox.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\Internal\BaseEntityWrapper.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\Internal\BaseProxyImplementor.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\Internal\complextypematerializer.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\Internal\DataContractImplementor.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\Internal\EntityProxyFactory.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\Internal\EntityProxyMemberInfo.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\Internal\EntityProxyTypeInfo.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\Internal\EntitySqlQueryBuilder.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\Internal\EntitySqlQueryState.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\Internal\EntityWithChangeTrackerStrategy.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\Internal\EntityWithKeyStrategy.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\Internal\EntityWrapper.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\Internal\EntityWrapperFactory.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\Internal\EntityWrapperWithoutRelationships.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\Internal\EntityWrapperWithRelationships.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\Internal\ForeignKeyFactory.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\Internal\IChangeTrackingStrategy.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\Internal\IEntityKeyStrategy.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\Internal\IEntityWrapper.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\Internal\IPOCOImplementor.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\Internal\IPropertyAccessorStrategy.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\Internal\LazyLoadBehavior.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\Internal\LazyLoadImplementor.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\Internal\LightweightEntityWrapper.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\Internal\NullEntityWrapper.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\Internal\ObjectFullSpanRewriter.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\Internal\ObjectQueryExecutionPlan.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\Internal\ObjectQueryState.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\Internal\ObjectSpanRewriter.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\Internal\PocoEntityKeyStrategy.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\Internal\PocoPropertyAccessorStrategy.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\Internal\SerializableImplementor.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\Internal\SnapshotChangeTrackingStrategy.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\Internal\TransactionManager.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\IObjectSet.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\IObjectView.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\IObjectViewData.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\MergeOption.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\NextResultGenerator.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\ObjectContext.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\ObjectContextOptions.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\ObjectMaterializedEventArgs.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\ObjectParameter.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\ObjectParameterCollection.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\ObjectQuery.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\ObjectQuery`.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\ObjectResult.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\ObjectResult`.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\ObjectSet.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\ObjectStateEntry.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\ObjectStateEntryOriginalDbUpdatableDataRecord_Public.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\OriginalValueRecord.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\ObjectStateEntryDbDataRecord.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\ObjectStateEntryDbUpdatableDataRecord.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\ObjectStateEntryOriginalDbUpdatableDataRecord_Internal.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\ObjectStateManager.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\StateManagerTypeMetadata.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\ObjectStateValueRecord.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\ObjectView.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\ObjectViewEntityCollectionData.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\ObjectViewFactory.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\ObjectViewListener.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\ObjectViewQueryResultData.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\ProxyDataContractResolver.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\RefreshMode.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\RelationshipEntry.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\RelationshipWrapper.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\SaveOptions.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\Span.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\SpanIndex.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\SqlClient\SqlFunctions.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\SqlClient\SqlSpatialFunctions.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\StateManagerMemberMetadata.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Objects\StateManagerValue.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\OptimisticConcurrencyException.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\PropertyConstraintException.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\ProviderIncompatibleException.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\AggregateOp.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\AncillaryOp.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\ApplyBaseOp.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\ArithmeticOp.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\BasicOpVisitor.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\BasicOpVisitorOfT.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\CaseOp.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\CastOp.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\CollectionColumnMap.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\CollectionInfo.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\CollectOp.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\ColumnMapVisitorWithResults.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\ColumnMD.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\ColumnVar.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\ComparisonOp.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\ComplexTypeColumnMap.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\ComputedVar.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\ConditionalOp.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\ConstantBaseOp.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\ConstantOp.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\ConstantPredicateOp.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\ConstrainedSortOp.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\CrossApplyOp.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\CrossJoinOp.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\DerefOp.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\DiscriminatedCollectionColumnMap.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\DiscriminatedEntityIdentity.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\DiscriminatedNewEntityOp.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\DistinctOp.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\ElementOp.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\EntityColumnMap.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\EntityIdentity.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\ExceptOp.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\ExistsOp.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\ExtendedNodeInfo.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\FilterOp.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\FullOuterJoinOp.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\FunctionOp.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\GetEntityRefOp.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\GetRefKeyOp.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\GroupByBaseOp.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\GroupByIntoOp.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\GroupByOp.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\InnerJoinOp.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\InternalConstantOp.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\IntersectOp.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\IsOfOp.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\JoinBaseOp.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\KeyVec.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\LeftOuterJoinOp.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\LikeOp.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\MultipleDiscriminatorPolymorphicColumnMap.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\NestBaseOp.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\NewEntityBaseOp.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\NewEntityOp.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\NewInstanceOp.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\NewMultisetOp.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\NewRecordOp.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\NodeInfoVisitor.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\NullOp.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\NullSentinelOp.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\Op.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\OpDelegate.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\OpType.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\OuterApplyOp.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\ParameterVar.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\PatternMatchRule.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\PhysicalOp.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\PhysicalProjectOp.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\ProjectOp.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\PropertyOp.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\RecordColumnMap.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\RefColumnMap.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\RefOp.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\RelOp.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\RelProperty.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\RelPropertyOp.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\RowCount.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\RuleProcessingContext.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\ScalarColumnMap.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\ScalarOp.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\ScanTableBaseOp.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\ScanTableOp.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\ScanViewOp.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\SetOp.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\SetOpVar.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\SimpleCollectionColumnMap.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\SimpleColumnMap.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\SimpleEntityIdentity.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\SimplePolymorphicColumnMap.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\SimpleRule.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\SingleRowOp.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\SingleStreamNestOp.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\SoftCastOp.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\SortBaseOp.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\SortKey.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\SortOp.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\StructuredColumnMap.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\SubTreeId.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\TableMD.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\TreatOp.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\TypedColumnMap.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\UnionAllOp.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\UnnestOp.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\Var.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\VarDefListOp.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\BasicValidator.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\ColumnMap.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\ColumnMapCopier.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\columnmapfactory.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\ColumnMapVisitor.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\Command.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\Dump.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\ExplicitDiscriminatorMap.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\Table.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\NodeCounter.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\NodeInfo.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\Node.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\OpCopier.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\RulePatternOp.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\MultiStreamNestOp.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\SingleRowTableOp.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\relpropertyhelper.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\Rule.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\LeafOp.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\RuleProcessor.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\NavigateOp.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\VarDefOp.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\VarList.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\VarRefColumnMap.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\VarRefOp.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\VarMap.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\VarType.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\VarVec.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\InternalTrees\BasicOpVisitorOfNode.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\PlanCompiler\AggregatePushdown.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\PlanCompiler\AggregatePushdownUtil.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\PlanCompiler\AllPropertyRef.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\PlanCompiler\ApplyOpRules.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\PlanCompiler\AugmentedJoinNode.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\PlanCompiler\AugmentedNode.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\PlanCompiler\AugmentedTableNode.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\PlanCompiler\CodeGen.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\PlanCompiler\CollectionVarInfo.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\PlanCompiler\ColumnMapProcessor.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\PlanCompiler\ColumnMapTranslator.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\PlanCompiler\CommandPlan.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\PlanCompiler\ConstrainedSortOpRules.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\PlanCompiler\ConstraintManager.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\PlanCompiler\CTreeGenerator.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\PlanCompiler\DiscriminatorMapInfo.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\PlanCompiler\DistinctOpRules.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\PlanCompiler\EntitySetIdPropertyRef.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\PlanCompiler\ExtentPair.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\PlanCompiler\FilterOpRules.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\PlanCompiler\ForeignKeyConstraint.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\PlanCompiler\GroupAggregateRefComputingVisitor.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\PlanCompiler\GroupAggregateVarComputationTranslator.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\PlanCompiler\GroupAggregateVarInfo.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\PlanCompiler\GroupAggregateVarInfoManager.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\PlanCompiler\GroupAggregateVarRefInfo.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\PlanCompiler\GroupByOpRules.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\PlanCompiler\ITreeGenerator.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\PlanCompiler\JoinEdge.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\PlanCompiler\JoinElimination.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\PlanCompiler\JoinGraph.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\PlanCompiler\JoinKind.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\PlanCompiler\JoinOpRules.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\PlanCompiler\KeyPullup.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\PlanCompiler\NestedPropertyRef.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\PlanCompiler\NestPullup.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\PlanCompiler\NominalTypeEliminator.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\PlanCompiler\Normalizer.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\PlanCompiler\NullSentinelPropertyRef.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\PlanCompiler\OpCopierTrackingCollectionVars.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\PlanCompiler\PlanCompiler.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\PlanCompiler\PlanCompilerPhase.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\PlanCompiler\PlanCompilerUtil.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\PlanCompiler\Predicate.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\PlanCompiler\PreProcessor.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\PlanCompiler\PrimitiveTypeVarInfo.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\PlanCompiler\ProjectionPruner.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\PlanCompiler\ProjectOpRules.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\PlanCompiler\PropertyPushdownHelper.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\PlanCompiler\PropertyRef.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\PlanCompiler\PropertyRefList.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\PlanCompiler\ProviderCommandInfoUtils.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\PlanCompiler\RelPropertyRef.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\PlanCompiler\RootTypeInfo.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\PlanCompiler\ScalarOpRules.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\PlanCompiler\SetOpRules.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\PlanCompiler\SimplePropertyRef.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\PlanCompiler\SingleRowOpRules.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\PlanCompiler\SortOpRules.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\PlanCompiler\SortRemover.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\PlanCompiler\StructuredTypeInfo.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\PlanCompiler\StructuredTypeNullabilityAnalyzer.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\PlanCompiler\StructuredVarInfo.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\PlanCompiler\SubqueryTrackingVisitor.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\PlanCompiler\TransformationRules.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\PlanCompiler\TransformationRulesContext.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\PlanCompiler\TransformationRulesGroup.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\PlanCompiler\TypeIdKind.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\PlanCompiler\TypeIdPropertyRef.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\PlanCompiler\TypeInfo.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\PlanCompiler\TypeUsageEqualityComparer.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\PlanCompiler\TypeUtils.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\PlanCompiler\Validator.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\PlanCompiler\VarInfo.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\PlanCompiler\VarInfoKind.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\PlanCompiler\VarInfoMap.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\PlanCompiler\VarRefManager.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\PlanCompiler\VarRemapper.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\ResultAssembly\BridgeDataReader.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\Query\ResultAssembly\BridgeDataRecord.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Core\UpdateException.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\DbFunctionAttribute.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\DbFunctions.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Edm\Common\INamedDataModelItemExtensions.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Edm\Db\DbConstraintMetadata.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\DbSetExtensions.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Edm\EdmEnumType.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Edm\EdmEnumTypeMember.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Edm\Validation\Internal\DataModelValidationRule`.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\EntityState.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\GlobalSuppressions.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Infrastructure\IDbAsyncEnumerable`.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Infrastructure\IDbAsyncEnumerator`.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Infrastructure\DbConnectionInfo.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Infrastructure\IDbAsyncEnumeratorExtensions.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Infrastructure\LocalDbConnectionFactory.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Internal\ClonedObjectContext.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Internal\ConfigFile\DatabaseInitializerElement.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Internal\ConfigFile\ParameterElement.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Internal\ConfigFile\ParameterCollection.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Internal\ConfigFile\ContextCollection.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Internal\ConfigFile\ContextElement.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Internal\ConfigFile\DefaultConnectionFactoryElement.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Internal\ConfigFile\EntityFrameworkSection.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Internal\DatabaseCreator.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Internal\DatabaseTableChecker.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Internal\EdmMetadataContext.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Internal\EdmMetadataRepository.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Internal\AppConfig.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Internal\MockingProxies\EntityConnectionProxy.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Internal\LegacyDatabaseInitializerConfig.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Internal\ModelCompatibilityChecker.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Internal\ModelHashCalculator.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Internal\MockingProxies\ObjectContextProxy.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Internal\RepositoryBase.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\IQueryableExtensions.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\MigrateDatabaseToLatestVersion`.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Migrations\Builders\ColumnBuilder.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Migrations\Builders\TableBuilder.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Migrations\DbMigration.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Migrations\DbMigrationsConfiguration.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Migrations\DbMigrationsConfiguration`.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Migrations\DbMigrator.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Migrations\IDbSetExtensions.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Migrations\Design\CSharpMigrationCodeGenerator.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Migrations\Design\MigrationCodeGenerator.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Migrations\Design\MigrationScaffolder.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Migrations\Design\ScaffoldedMigration.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Migrations\Design\ToolingException.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Migrations\Design\ToolingFacade.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Migrations\Design\VisualBasicMigrationCodeGenerator.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Migrations\Edm\EdmXNames.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Migrations\Edm\ModelCompressor.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Utilities\AssemblyExtensions.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Utilities\ByteExtensions.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Utilities\DbContextExtensions.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Utilities\ExpressionExtensions.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Migrations\Extensions\IEnumerableExtensions.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Utilities\MemberInfoExtensions.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Utilities\StringExtensions.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Utilities\TaskHelper.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Utilities\XContainerExtensions.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Utilities\XDocumentExtensions.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Migrations\History\HistoryContext.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Migrations\History\HistoryContextBase`.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Migrations\History\HistoryRepository.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Migrations\History\HistoryRow.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Migrations\History\LegacyHistoryContext.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Migrations\Infrastructure\AutomaticDataLossException.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Migrations\Infrastructure\AutomaticMigrationsDisabledException.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Migrations\Infrastructure\EdmModelDiffer.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Migrations\Infrastructure\IMigrationMetadata.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Migrations\Infrastructure\MigrationAssembly.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Migrations\Infrastructure\MigrationsException.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Migrations\Infrastructure\MigrationsLogger.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Migrations\Infrastructure\MigratorBase.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Migrations\Infrastructure\MigratorLoggingDecorator.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Migrations\Infrastructure\MigratorScriptingDecorator.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Migrations\Model\AddColumnOperation.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Migrations\Model\AddForeignKeyOperation.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Migrations\Model\AddPrimaryKeyOperation.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Migrations\Model\AlterColumnOperation.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Migrations\Model\ColumnModel.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Migrations\Model\CreateIndexOperation.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Migrations\Model\CreateTableOperation.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Migrations\Model\DeleteHistoryOperation.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Migrations\Model\DropColumnOperation.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Migrations\Model\DropForeignKeyOperation.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Migrations\Model\DropIndexOperation.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Migrations\Model\DropPrimaryKeyOperation.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Migrations\Model\DropTableOperation.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Migrations\Model\ForeignKeyOperation.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Migrations\Model\HistoryOperation.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Migrations\Model\IndexOperation.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Migrations\Model\InsertHistoryOperation.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Migrations\Model\MigrationOperation.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Migrations\Model\MoveTableOperation.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Migrations\Model\PrimaryKeyOperation.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Migrations\Model\RenameColumnOperation.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Migrations\Model\RenameTableOperation.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Migrations\Model\SqlOperation.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Migrations\Sql\MigrationSqlGenerator.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Migrations\Sql\MigrationStatement.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Migrations\Sql\SqlCeMigrationSqlGenerator.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Migrations\Sql\SqlServerMigrationSqlGenerator.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Migrations\Utilities\ConfigurationFileUpdater.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Migrations\Utilities\DatabaseCreator.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ObservableCollectionExtensions.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Spatial\DbGeography.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Spatial\DbGeographyWellKnownValue.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Spatial\DbGeometry.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Spatial\DbGeometryWellKnownValue.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Spatial\DbSpatialDataReader.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Spatial\DbSpatialServices.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Spatial\DefaultSpatialServices.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Spatial\ExtensionMethods.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Spatial\SpatialHelpers.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Utilities\DynamicEqualityComparer.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Utilities\DynamicEqualityComparerLinqIntegration.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Migrations\Utilities\EmptyContext.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Migrations\Utilities\IndentedTextWriter.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Migrations\Utilities\UtcNowGenerator.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Conventions\Edm\Db\ColumnOrderingConventionStrict.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Conventions\Sets\V2ConventionSet.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Edm\EdmEnumTypeExtensions.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Utilities\DbModelBuilderVersionExtensions.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Utilities\DbProviderServicesExtensions.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Properties\AssemblyVersion.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Properties\InternalsVisibleTo.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Properties\Resources.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Edm\Common\DataModelAnnotation.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Edm\Common\DataModelErrorEventArgs.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Edm\Common\DataModelEventArgs.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Edm\Common\DataModelItem.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Edm\Common\DataModelVersions.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Edm\Common\IAnnotatedDataModelItem.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Edm\Common\INamedDataModelItem.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Edm\Db\DbAliasedMetadataItem.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Edm\Db\DbColumnMetadata.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Edm\Db\DbDatabaseMetadata.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Edm\Db\DbDataModelItem.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Edm\Db\DbForeignKeyConstraintMetadata.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Edm\Db\DbItemKind.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Edm\Db\DbMetadataItem.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Edm\Db\DbNamedMetadataItem.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Edm\Db\DbOperationAction.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Edm\Db\DbParameterMode.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Edm\Db\DbParameterTypeSemantics.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Edm\Db\DbPrimitiveTypeFacets.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Edm\Db\DbSchemaMetadata.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Edm\Db\DbSchemaMetadataItem.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Edm\Db\DbStoreGeneratedPattern.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Edm\Db\DbTableColumnMetadata.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Edm\Db\DbTableMetadata.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Edm\Db\DbTypeMetadata.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Edm\Db\Mapping\DbAssociationEndMapping.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Edm\Db\Mapping\DbAssociationSetMapping.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Edm\Db\Mapping\DbColumnCondition.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Edm\Db\Mapping\DbDatabaseMapping.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Edm\Db\Mapping\DbEdmPropertyMapping.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Edm\Db\Mapping\DbEntityContainerMapping.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Edm\Db\Mapping\DbEntitySetMapping.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Edm\Db\Mapping\DbEntityTypeMapping.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Edm\Db\Mapping\DbEntityTypeMappingFragment.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Edm\Db\Mapping\DbMappingItemKind.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Edm\Db\Mapping\DbMappingMetadataItem.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Edm\Db\Mapping\DbMappingModelItem.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Edm\EdmAssociationConstraint.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Edm\EdmAssociationEnd.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Edm\EdmAssociationEndKind.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Edm\EdmAssociationSet.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Edm\EdmAssociationType.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Edm\EdmCollectionKind.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Edm\EdmComplexType.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Edm\EdmConcurrencyMode.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Edm\EdmDataModelItem.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Edm\EdmDataModelType.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Edm\EdmEntityContainer.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Edm\EdmEntityContainerItem.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Edm\EdmEntitySet.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Edm\EdmEntityType.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Edm\EdmItemKind.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Edm\EdmMetadataItem.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Edm\EdmModel.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Edm\EdmNamedMetadataItem.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Edm\EdmNamespace.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Edm\EdmNamespaceItem.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Edm\EdmNavigationProperty.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Edm\EdmOperationAction.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Edm\EdmParameterMode.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Edm\EdmPrimitiveType.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Edm\EdmPrimitiveTypeFacets.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Edm\EdmPrimitiveTypeKind.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Edm\EdmProperty.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Edm\EdmQualifiedNameMetadataItem.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Edm\EdmScalarType.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Edm\EdmStructuralMember.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Edm\EdmStructuralMembersCollection.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Edm\EdmStructuralType.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Edm\EdmTypeReference.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Edm\Internal\BackingList.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Edm\Internal\DataModelItemVisitor.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Edm\Internal\DbDatabaseVisitor.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Edm\Internal\EdmConstants.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Edm\Internal\EdmExtensions.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Edm\Internal\EdmModelParentMap.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Edm\Internal\EdmModelVisitor.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Edm\Internal\EdmUtil.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Edm\Parsing\Xml\Internal\Csdl\CsdlConstants.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Edm\Parsing\Xml\Internal\Msl\MslConstants.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Edm\Parsing\Xml\Internal\Ssdl\SsdlConstants.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Edm\Parsing\Xml\Internal\XmlErrorCode.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Edm\Serialization\CsdlSerializer.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Edm\Serialization\MslSerializer.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Edm\Serialization\SsdlSerializer.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Edm\Serialization\Xml\Internal\Csdl\EdmModelCsdlSchemaWriter.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Edm\Serialization\Xml\Internal\Csdl\EdmModelCsdlSerializationVisitor.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Edm\Serialization\Xml\Internal\Msl\DbDatabaseMappingMslSchemaWriter.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Edm\Serialization\Xml\Internal\Ssdl\DbModelEntityContainerSsdlSchemaWriter.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Edm\Serialization\Xml\Internal\Ssdl\DbModelSsdlHelper.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Edm\Serialization\Xml\Internal\Ssdl\DbModelSsdlSchemaWriter.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Edm\Serialization\Xml\Internal\Ssdl\DbModelSsdlSerializationVisitor.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Edm\Serialization\Xml\Internal\XmlSchemaWriter.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Edm\Validation\Internal\DataModelValidationContext.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Edm\Validation\Internal\DataModelValidationHelper.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Edm\Validation\Internal\DataModelValidationRule.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Edm\Validation\Internal\DataModelValidationRuleSet.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Edm\Validation\Internal\DataModelValidator.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Edm\Validation\Internal\EdmModel\EdmModelRuleSet.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Edm\Validation\Internal\EdmModel\EdmModelSemanticValidationRules.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Edm\Validation\Internal\EdmModel\EdmModelSyntacticValidationRules.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Edm\Validation\Internal\EdmModel\EdmModelValidationContext.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Edm\Validation\Internal\EdmModel\EdmModelValidationRule.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Edm\Validation\Internal\EdmModel\EdmModelValidationVisitor.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Edm\Validation\Internal\EdmModel\EdmModelValidator.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\CreateDatabaseIfNotExists`.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Database.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\DbContext.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\DbModelBuilder.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\DbModelBuilderVersion.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\DbModelBuilderVersionAttribute.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\DbSet.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\DbSet`.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\DropCreateDatabaseAlways`.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\DropCreateDatabaseIfModelChanges`.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\IDatabaseInitializer`.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\IDbSet`.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Infrastructure\DbChangeTracker.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Infrastructure\DbCollectionEntry.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Infrastructure\DbCollectionEntry`.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Infrastructure\DbCompiledModel.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Infrastructure\DbComplexPropertyEntry.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Infrastructure\DbComplexPropertyEntry`.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Infrastructure\DbConnectionStringOrigin.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Infrastructure\DbContextConfiguration.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Infrastructure\DbContextInfo.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Infrastructure\DbEntityEntry.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Infrastructure\DbEntityEntry`.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Infrastructure\DbMemberEntry.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Infrastructure\DbMemberEntry`.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Infrastructure\DbModel.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Infrastructure\DbPropertyEntry.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Infrastructure\DbPropertyEntry`.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Infrastructure\DbPropertyValues.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Infrastructure\DbProviderInfo.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Infrastructure\DbQuery.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Infrastructure\DbQuery`.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Infrastructure\DbReferenceEntry.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Infrastructure\DbReferenceEntry`.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Infrastructure\DbSqlQuery.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Infrastructure\DbSqlQuery`.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Infrastructure\DbUpdateConcurrencyException.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Infrastructure\DbUpdateException.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Infrastructure\EdmMetadata.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Infrastructure\EdmxWriter.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Infrastructure\IDbConnectionFactory.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Infrastructure\IDbContextFactory.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Infrastructure\IncludeMetadataConvention.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Infrastructure\IObjectContextAdapter.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Infrastructure\ModelContainerConvention.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Infrastructure\ModelNamespaceConvention.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Infrastructure\ReplacementDbQueryWrapper`.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Infrastructure\SqlCeConnectionFactory.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Infrastructure\SqlConnectionFactory.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Infrastructure\SuppressDbSetInitializationAttribute.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Infrastructure\UnintentionalCodeFirstException.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Internal\CodeFirstCachedMetadataWorkspace.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Internal\DatabaseOperations.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Internal\DbContextTypesInitializersPair.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Internal\DbHelpers.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Internal\DbLocalView`.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Internal\DbSetDiscoveryService.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Internal\EagerInternalConnection.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Internal\EagerInternalContext.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Internal\EntityEntries\ClonedPropertyValues.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Internal\EntityEntries\ClonedPropertyValuesItem.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Internal\EntityEntries\DbDataRecordPropertyValues.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Internal\EntityEntries\DbDataRecordPropertyValuesItem.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Internal\EntityEntries\IEntityStateEntry.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Internal\EntityEntries\InternalCollectionEntry.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Internal\EntityEntries\InternalEntityEntry.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Internal\EntityEntries\InternalEntityPropertyEntry.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Internal\EntityEntries\InternalMemberEntry.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Internal\EntityEntries\InternalNavigationEntry.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Internal\EntityEntries\InternalNestedPropertyEntry.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Internal\EntityEntries\InternalPropertyEntry.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Internal\EntityEntries\InternalPropertyValues.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Internal\EntityEntries\InternalReferenceEntry.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Internal\EntityEntries\IPropertyValuesItem.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Internal\EntityEntries\MemberEntryMetadata.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Internal\EntityEntries\MemberEntryType.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Internal\EntityEntries\NavigationEntryMetadata.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Internal\EntityEntries\ObjectContextTypeCache.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Internal\EntityEntries\PropertyEntryMetadata.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Internal\EntityEntries\ReadOnlySet`.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Internal\EntityEntries\StateEntryAdapter.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Internal\EntitySetTypePair.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Internal\ICachedMetadataWorkspace.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Internal\IInternalConnection.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Internal\InitializerLockPair.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Internal\InternalConnection.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Internal\InternalContext.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Internal\InternalSqlNonSetQuery.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Internal\InternalSqlQuery.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Internal\InternalSqlSetQuery.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Internal\LazyInternalConnection.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Internal\LazyInternalContext.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Internal\Linq\DbQueryProvider.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Internal\Linq\DbQueryVisitor.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Internal\Linq\IInternalQuery.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Internal\Linq\IInternalQueryAdapter.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Internal\Linq\IInternalQuery`.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Internal\Linq\IInternalSet.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Internal\Linq\IInternalSetAdapter.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Internal\Linq\IInternalSet`.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Internal\Linq\InternalDbQuery`.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Internal\Linq\InternalDbSet`.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Internal\Linq\InternalQuery`.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Internal\Linq\InternalSet`.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Internal\Linq\NonGenericDbQueryProvider.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Internal\ObservableBackedBindingList`.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Internal\RetryAction`.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Internal\RetryLazy`.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Internal\SortableBindingList`.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Internal\Validation\ComplexPropertyValidator.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Internal\Validation\ComplexTypeValidator.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Internal\Validation\EntityValidationContext.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Internal\Validation\EntityValidator.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Internal\Validation\EntityValidatorBuilder.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Internal\Validation\IValidator.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Internal\Validation\PropertyValidator.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Internal\Validation\TypeValidator.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Internal\Validation\ValidatableObjectValidator.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Internal\Validation\ValidationAttributeValidator.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Internal\Validation\ValidationProvider.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Internal\WrappedEntityKey.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\ComplexTypeConfiguration.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Configuration\ConfigurationBase.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Configuration\ConfigurationRegistrar.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Configuration\ConventionsConfiguration.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Configuration\Conventions\DatabaseConventionDispatcher.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Configuration\Conventions\EdmConventionDispatcher.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Configuration\Conventions\PropertyConfigurationConventionDispatcher.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Configuration\Mapping\EdmPropertyPath.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Configuration\Mapping\EntityMappingConfiguration.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Configuration\Mapping\EntityMappingConfiguration`.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Configuration\Mapping\EntityMappingTransformer.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Configuration\Mapping\LengthColumnConfiguration.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Configuration\Mapping\NotNullConditionConfiguration.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Configuration\Mapping\PrimitiveColumnConfiguration.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Configuration\Mapping\Services\ColumnMapping.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Configuration\Mapping\Services\EntityMappingService.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Configuration\Mapping\Services\PropertyMappingSpecification.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Configuration\Mapping\Services\SortedEntityTypeIndex.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Configuration\Mapping\Services\TableMapping.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Configuration\Mapping\StringColumnConfiguration.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Configuration\Mapping\ValueConditionConfiguration.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Configuration\ModelConfiguration.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Configuration\Properties\Navigation\ConstraintConfiguration.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Configuration\Properties\Navigation\ForeignKeyConstraintConfiguration.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Configuration\Properties\Navigation\HasX\ManyNavigationPropertyConfiguration.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Configuration\Properties\Navigation\HasX\OptionalNavigationPropertyConfiguration.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Configuration\Properties\Navigation\HasX\RequiredNavigationPropertyConfiguration.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Configuration\Properties\Navigation\IndependentConstraintConfiguration.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Configuration\Properties\Navigation\NavigationPropertyConfiguration.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Configuration\Properties\Navigation\WithX\AssociationMappingConfiguration.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Configuration\Properties\Navigation\WithX\CascadableNavigationPropertyConfiguration.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Configuration\Properties\Navigation\WithX\DependentNavigationPropertyConfiguration.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Configuration\Properties\Navigation\WithX\ForeignKeyAssociationMappingConfiguration.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Configuration\Properties\Navigation\WithX\ForeignKeyNavigationPropertyConfiguration.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Configuration\Properties\Navigation\WithX\ManyToManyAssociationMappingConfiguration.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Configuration\Properties\Navigation\WithX\ManyToManyNavigationPropertyConfiguration.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Configuration\Properties\Primitive\Api\BinaryPropertyConfiguration.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Configuration\Properties\Primitive\Api\DateTimePropertyConfiguration.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Configuration\Properties\Primitive\Api\DecimalPropertyConfiguration.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Configuration\Properties\Primitive\Api\LengthPropertyConfiguration.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Configuration\Properties\Primitive\Api\PrimitivePropertyConfiguration.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Configuration\Properties\Primitive\Api\StringPropertyConfiguration.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Configuration\Properties\Primitive\BinaryPropertyConfiguration.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Configuration\Properties\Primitive\DateTimePropertyConfiguration.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Configuration\Properties\Primitive\DecimalPropertyConfiguration.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Configuration\Properties\Primitive\LengthPropertyConfiguration.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Configuration\Properties\Primitive\OverridableConfigurationParts.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Configuration\Properties\Primitive\PrimitivePropertyConfiguration.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Configuration\Properties\Primitive\StringPropertyConfiguration.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Configuration\Properties\PropertyConfiguration.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Configuration\Types\ComplexTypeConfiguration.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Configuration\Types\EntityTypeConfiguration.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Configuration\Types\StructuralTypeConfiguration.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Configuration\Types\StructuralTypeConfiguration`.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Conventions\Configuration\AttributeConfigurationConvention.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Conventions\Configuration\IConfigurationConvention.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Conventions\Configuration\IConfigurationConvention`.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Conventions\Configuration\Property\ColumnAttributeConvention.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Conventions\Configuration\Property\ConcurrencyCheckAttributeConvention.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Conventions\Configuration\Property\DatabaseGeneratedAttributeConvention.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Conventions\Configuration\Property\ForeignKeyPrimitivePropertyAttributeConvention.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Conventions\Configuration\Property\InversePropertyAttributeConvention.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Conventions\Configuration\Property\KeyAttributeConvention.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Conventions\Configuration\Property\MaxLengthAttributeConvention.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Conventions\Configuration\Property\NotMappedPropertyAttributeConvention.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Conventions\Configuration\Property\RequiredNavigationPropertyAttributeConvention.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Conventions\Configuration\Property\RequiredPrimitivePropertyAttributeConvention.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Conventions\Configuration\Property\StringLengthAttributeConvention.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Conventions\Configuration\Property\TimestampAttributeConvention.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Conventions\Configuration\Type\ComplexTypeAttributeConvention.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Conventions\Configuration\Type\NotMappedTypeAttributeConvention.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Conventions\Configuration\Type\TableAttributeConvention.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Conventions\Edm\AssociationInverseDiscoveryConvention.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Conventions\Edm\ComplexTypeDiscoveryConvention.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Conventions\Edm\Db\ColumnOrderingConvention.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Conventions\Edm\Db\ColumnTypeCasingConvention.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Conventions\Edm\Db\IDbConvention.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Conventions\Edm\Db\IDbConvention`.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Conventions\Edm\Db\Mapping\IDbMappingConvention.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Conventions\Edm\Db\Mapping\ManyToManyCascadeDeleteConvention.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Conventions\Edm\Db\Mapping\MappingInheritedPropertiesSupportConvention.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Conventions\Edm\Db\PluralizingTableNameConvention.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Conventions\Edm\DecimalPropertyConvention.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Conventions\Edm\DeclaredPropertyOrderingConvention.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Conventions\Edm\ForeignKeyAssociationMultiplicityConvention.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Conventions\Edm\ForeignKeyDiscoveryConvention.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Conventions\Edm\ForeignKeyNavigationPropertyAttributeConvention.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Conventions\Edm\IdKeyDiscoveryConvention.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Conventions\Edm\IEdmConvention.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Conventions\Edm\IEdmConvention`.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Conventions\Edm\KeyDiscoveryConvention.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Conventions\Edm\NavigationPropertyNameForeignKeyDiscoveryConvention.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Conventions\Edm\OneToManyCascadeDeleteConvention.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Conventions\Edm\OneToOneConstraintIntroductionConvention.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Conventions\Edm\PluralizingEntitySetNameConvention.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Conventions\Edm\PrimaryKeyNameForeignKeyDiscoveryConvention.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Conventions\Edm\PropertyMaxLengthConvention.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Conventions\Edm\SqlCePropertyMaxLengthConvention.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Conventions\Edm\StoreGeneratedIdentityKeyConvention.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Conventions\Edm\TypeNameForeignKeyDiscoveryConvention.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Conventions\IConvention.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Conventions\Sets\V1ConventionSet.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Design\BidirectionalDictionary.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Design\EnglishPluralizationService.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Design\ICustomPluralizationMapping.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Design\PluralizationService.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Design\PluralizationServiceUtil.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Edm\Common\DataModelAnnotationExtensions.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Edm\Common\DataModelErrorEventArgsExtensions.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Edm\Common\INamedDataModelItemExtensions.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Edm\Db\DbAliasedMetadataItemExtensions.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Edm\Db\DbDatabaseMetadataExtensions.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Edm\Db\DbForeignKeyConstraintMetadataExtensions.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Edm\Db\DbPrimitiveTypeFacetsExtensions.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Edm\Db\DbTableColumnMetadataExtensions.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Edm\Db\DbTableMetadataExtensions.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Edm\Db\Mapping\DbAssociationSetMappingExtensions.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Edm\Db\Mapping\DbDatabaseMappingExtensions.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Edm\Db\Mapping\DbEdmPropertyMappingExtensions.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Edm\Db\Mapping\DbEntityTypeMappingExtensions.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Edm\Db\Mapping\DbEntityTypeMappingFragmentExtensions.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Edm\EdmAssociationEndExtensions.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Edm\EdmAssociationEndKindExtensions.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Edm\EdmAssociationTypeExtensions.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Edm\EdmComplexTypeExtensions.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Edm\EdmEntitySetExtensions.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Edm\EdmEntityTypeExtensions.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Edm\EdmModelExtensions.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Edm\EdmNavigationPropertyExtensions.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Edm\EdmPropertyExtensions.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Edm\EdmStructuralMemberExtensions.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Edm\Serialization\EdmxSerializer.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Edm\Services\AssociationTypeMappingGenerator.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Edm\Services\DatabaseMappingGenerator.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Edm\Services\EntityTypeMappingGenerator.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Edm\Services\PropertyMappingGenerator.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Edm\Services\StructuralTypeMappingGenerator.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\EntityTypeConfiguration.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Mappers\AttributeMapper.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Mappers\MappingContext.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Mappers\NavigationPropertyMapper.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Mappers\PropertyFilter.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Mappers\PropertyMapper.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Mappers\TypeMapper.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\ModelValidationException.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Utilities\AttributeProvider.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Utilities\DatabaseName.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Utilities\DbConnectionExtensions.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Utilities\DbProviderInfoExtensions.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Utilities\DbProviderManifestExtensions.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Utilities\HashSetExtensions.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Utilities\IEnumerableExtensions.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Utilities\PropertyInfoExtensions.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\ModelConfiguration\Utilities\PropertyPath.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Utilities\RuntimeFailureMethods.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Utilities\TypeExtensions.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Utilities\ValidationContextExtensions.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Validation\DbEntityValidationException.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Validation\DbEntityValidationResult.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Validation\DbUnexpectedValidationException.cs" />
+   <Compile Include="..\..\..\external\entityframework\src\EntityFramework\Validation\DbValidationError.cs" />
+\r
+  </ItemGroup>\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="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent></PreBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <Reference Include="mscorlib.dll">
+      <SpecificVersion>False</SpecificVersion>
+      <HintPath>mscorlib.dll</HintPath>
+    </Reference>
+    <Reference Include="System.Data.dll">
+      <SpecificVersion>False</SpecificVersion>
+      <HintPath>System.Data.dll</HintPath>
+    </Reference>
+    <Reference Include="System.Transactions.dll">
+      <SpecificVersion>False</SpecificVersion>
+      <HintPath>System.Transactions.dll</HintPath>
+    </Reference>
+    <Reference Include="System.Xml.Linq.dll">
+      <SpecificVersion>False</SpecificVersion>
+      <HintPath>System.Xml.Linq.dll</HintPath>
+    </Reference>
+    <Reference Include="System.Configuration.dll">
+      <SpecificVersion>False</SpecificVersion>
+      <HintPath>System.Configuration.dll</HintPath>
+    </Reference>
+    <Reference Include="System.ComponentModel.DataAnnotations.dll">
+      <SpecificVersion>False</SpecificVersion>
+      <HintPath>System.ComponentModel.DataAnnotations.dll</HintPath>
+    </Reference>
+    <Reference Include="System.Runtime.Serialization.dll">
+      <SpecificVersion>False</SpecificVersion>
+      <HintPath>System.Runtime.Serialization.dll</HintPath>
+    </Reference>
+    <Reference Include="System.dll">
+      <SpecificVersion>False</SpecificVersion>
+      <HintPath>System.dll</HintPath>
+    </Reference>
+    <Reference Include="System.Xml.dll">
+      <SpecificVersion>False</SpecificVersion>
+      <HintPath>System.Xml.dll</HintPath>
+    </Reference>
+    <Reference Include="System.Core.dll">
+      <SpecificVersion>False</SpecificVersion>
+      <HintPath>System.Core.dll</HintPath>
+    </Reference>
+    <Reference Include="Microsoft.CSharp.dll">
+      <SpecificVersion>False</SpecificVersion>
+      <HintPath>Microsoft.CSharp.dll</HintPath>
+    </Reference>
+\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+    <ItemGroup>
+    <EmbeddedResource Include="System.Data.Entity.Properties.Resources.resources">
+       <LogicalName>System.Data.Entity.Properties.Resources.resources</LogicalName>
+    </EmbeddedResource>
+    <EmbeddedResource Include="System.Data.Entity.Properties.Resources.Migrate.resources">
+       <LogicalName>System.Data.Entity.Properties.Resources.Migrate.resources</LogicalName>
+    </EmbeddedResource>
+    <EmbeddedResource Include="System.Data.Entity.Properties.Resources.PowerShell.resources">
+       <LogicalName>System.Data.Entity.Properties.Resources.PowerShell.resources</LogicalName>
+    </EmbeddedResource>
+    <EmbeddedResource Include="../../../external/entityframework/src/EntityFramework/Resources/System/Data/System.Data.Resources.DbProviderServices.ConceptualSchemaDefinition.csdl">
+       <LogicalName>System.Data.Resources.DbProviderServices.ConceptualSchemaDefinition.csdl</LogicalName>
+    </EmbeddedResource>
+    <EmbeddedResource Include="../../../external/entityframework/src/EntityFramework/Resources/System/Data/System.Data.Resources.DbProviderServices.ConceptualSchemaDefinitionVersion3.csdl">
+       <LogicalName>System.Data.Resources.DbProviderServices.ConceptualSchemaDefinitionVersion3.csdl</LogicalName>
+    </EmbeddedResource>
+    <EmbeddedResource Include="../../../external/entityframework/src/EntityFramework/Resources/System/Data/System.Data.Resources.ProviderServices.ProviderManifest.xsd">
+       <LogicalName>System.Data.Resources.ProviderServices.ProviderManifest.xsd</LogicalName>
+    </EmbeddedResource>
+    <EmbeddedResource Include="../../../external/entityframework/src/EntityFramework/Resources/System/Data/EntityModel/System.Data.Resources.AnnotationSchema.xsd">
+       <LogicalName>System.Data.Resources.AnnotationSchema.xsd</LogicalName>
+    </EmbeddedResource>
+    <EmbeddedResource Include="../../../external/entityframework/src/EntityFramework/Resources/System/Data/EntityModel/System.Data.Resources.CodeGenerationSchema.xsd">
+       <LogicalName>System.Data.Resources.CodeGenerationSchema.xsd</LogicalName>
+    </EmbeddedResource>
+    <EmbeddedResource Include="../../../external/entityframework/src/EntityFramework/Resources/System/Data/EntityModel/System.Data.Resources.CSDLSchema_1.xsd">
+       <LogicalName>System.Data.Resources.CSDLSchema_1.xsd</LogicalName>
+    </EmbeddedResource>
+    <EmbeddedResource Include="../../../external/entityframework/src/EntityFramework/Resources/System/Data/EntityModel/System.Data.Resources.CSDLSchema_1_1.xsd">
+       <LogicalName>System.Data.Resources.CSDLSchema_1_1.xsd</LogicalName>
+    </EmbeddedResource>
+    <EmbeddedResource Include="../../../external/entityframework/src/EntityFramework/Resources/System/Data/EntityModel/System.Data.Resources.CSDLSchema_2.xsd">
+       <LogicalName>System.Data.Resources.CSDLSchema_2.xsd</LogicalName>
+    </EmbeddedResource>
+    <EmbeddedResource Include="../../../external/entityframework/src/EntityFramework/Resources/System/Data/EntityModel/System.Data.Resources.CSDLSchema_3.xsd">
+       <LogicalName>System.Data.Resources.CSDLSchema_3.xsd</LogicalName>
+    </EmbeddedResource>
+    <EmbeddedResource Include="../../../external/entityframework/src/EntityFramework/Resources/System/Data/EntityModel/system.data.resources.entitystoreschemagenerator.xsd">
+       <LogicalName>system.data.resources.entitystoreschemagenerator.xsd</LogicalName>
+    </EmbeddedResource>
+    <EmbeddedResource Include="../../../external/entityframework/src/EntityFramework/Resources/System/Data/EntityModel/System.Data.Resources.SSDLSchema.xsd">
+       <LogicalName>System.Data.Resources.SSDLSchema.xsd</LogicalName>
+    </EmbeddedResource>
+    <EmbeddedResource Include="../../../external/entityframework/src/EntityFramework/Resources/System/Data/EntityModel/System.Data.Resources.SSDLSchema_2.xsd">
+       <LogicalName>System.Data.Resources.SSDLSchema_2.xsd</LogicalName>
+    </EmbeddedResource>
+    <EmbeddedResource Include="../../../external/entityframework/src/EntityFramework/Resources/System/Data/EntityModel/System.Data.Resources.SSDLSchema_3.xsd">
+       <LogicalName>System.Data.Resources.SSDLSchema_3.xsd</LogicalName>
+    </EmbeddedResource>
+    <EmbeddedResource Include="../../../external/entityframework/src/EntityFramework/Resources/System/Data/MappingSpecification/System.Data.Resources.CSMSL_1.xsd">
+       <LogicalName>System.Data.Resources.CSMSL_1.xsd</LogicalName>
+    </EmbeddedResource>
+    <EmbeddedResource Include="../../../external/entityframework/src/EntityFramework/Resources/System/Data/MappingSpecification/System.Data.Resources.CSMSL_2.xsd">
+       <LogicalName>System.Data.Resources.CSMSL_2.xsd</LogicalName>
+    </EmbeddedResource>
+    <EmbeddedResource Include="../../../external/entityframework/src/EntityFramework/Resources/System/Data/MappingSpecification/System.Data.Resources.CSMSL_3.xsd">
+       <LogicalName>System.Data.Resources.CSMSL_3.xsd</LogicalName>
+    </EmbeddedResource>
+  </ItemGroup>
+\r
+</Project>\r
+
index 776ff9e39649541fa9466a1473b0047c3debfea4..e93e7e736dd642c146c0d28cca6c6e39487a33e4 100644 (file)
@@ -27,7 +27,7 @@ using System.Text;
 
 namespace IKVM.Reflection.Emit
 {
-       public sealed class EnumBuilder : Type
+       public sealed class EnumBuilder : TypeInfo
        {
                private readonly TypeBuilder typeBuilder;
                private readonly FieldBuilder fieldBuilder;
index 916347c3014d1272fe0d3fede7f9a4052f34e4a6..b9f2a8f4b78e2506153a0c0d3a7a847413b58e4b 100644 (file)
@@ -31,7 +31,7 @@ using IKVM.Reflection.Writer;
 
 namespace IKVM.Reflection.Emit
 {
-       public sealed class GenericTypeParameterBuilder : Type
+       public sealed class GenericTypeParameterBuilder : TypeInfo
        {
                private readonly string name;
                private readonly TypeBuilder type;
@@ -246,7 +246,7 @@ namespace IKVM.Reflection.Emit
                }
        }
 
-       public sealed class TypeBuilder : Type, ITypeOwner
+       public sealed class TypeBuilder : TypeInfo, ITypeOwner
        {
                public const int UnspecifiedTypeSize = 0;
                private readonly ITypeOwner owner;
@@ -705,10 +705,16 @@ namespace IKVM.Reflection.Emit
                                rec.Parent = token;
                                this.ModuleBuilder.ClassLayout.AddRecord(rec);
                        }
+                       bool hasConstructor = false;
                        foreach (MethodBuilder mb in methods)
                        {
+                               hasConstructor |= mb.IsSpecialName && mb.Name == ConstructorInfo.ConstructorName;
                                mb.Bake();
                        }
+                       if (!hasConstructor && !IsModulePseudoType && !IsInterface && !IsValueType && !(IsAbstract && IsSealed))
+                       {
+                               ((MethodBuilder)DefineDefaultConstructor(MethodAttributes.Public).GetMethodInfo()).Bake();
+                       }
                        if (declarativeSecurity != null)
                        {
                                this.ModuleBuilder.AddDeclarativeSecurity(token, declarativeSecurity);
@@ -1095,7 +1101,7 @@ namespace IKVM.Reflection.Emit
                }
        }
 
-       sealed class BakedType : Type
+       sealed class BakedType : TypeInfo
        {
                internal BakedType(TypeBuilder typeBuilder)
                        : base(typeBuilder)
index 03ee2a45f20d207d1df03d3ac727d0bec193deee..40ca321c7e69b0556aee746775f0a948a724cfcc 100644 (file)
@@ -123,6 +123,11 @@ namespace IKVM.Reflection
                        return false;
                }
 
+               public ConstructorInfo __AsConstructorInfo()
+               {
+                       return new ConstructorInfoImpl(this);
+               }
+
                Type IGenericContext.GetGenericTypeArgument(int index)
                {
                        return this.DeclaringType.GetGenericTypeArgument(index);
index 8a2a25c31a5961d1985af4e6685693b6715c9b76..d0c74052154cffe880b351ee08c46e0954c6db52 100644 (file)
@@ -28,7 +28,7 @@ using IKVM.Reflection.Metadata;
 
 namespace IKVM.Reflection.Reader
 {
-       abstract class TypeParameterType : Type
+       abstract class TypeParameterType : TypeInfo
        {
                public sealed override string AssemblyQualifiedName
                {
index 87286535f53f4f67e21ce79ad2d8d781c9f8ea90..180e9689eefb0de8dff4d6f46d979f456714a3d5 100644 (file)
@@ -144,7 +144,9 @@ namespace IKVM.Reflection.Reader
                                                ReadTables(br);
                                                break;
                                        default:
-                                               throw new BadImageFormatException("Unsupported stream: " + sh.Name);
+                                               // we ignore unknown streams, because the CLR does so too
+                                               // (and some obfuscators add bogus streams)
+                                               break;
                                }
                        }
                }
index 0ab6f23e2fa2d9aff001824e0ad3e0ce0f90ce01..e4a036d5674cd71a26560fa0babd6f52ceb2ce4b 100644 (file)
@@ -29,7 +29,7 @@ using IKVM.Reflection.Metadata;
 
 namespace IKVM.Reflection.Reader
 {
-       sealed class TypeDefImpl : Type
+       sealed class TypeDefImpl : TypeInfo
        {
                private readonly ModuleReader module;
                private readonly int index;
@@ -291,7 +291,16 @@ namespace IKVM.Reflection.Reader
 
                public override bool IsGenericTypeDefinition
                {
-                       get { return module.GenericParam.FindFirstByOwner(this.MetadataToken) != -1; }
+                       get
+                       {
+                               if ((typeFlags & (TypeFlags.IsGenericTypeDefinition | TypeFlags.NotGenericTypeDefinition)) == 0)
+                               {
+                                       typeFlags |= module.GenericParam.FindFirstByOwner(this.MetadataToken) == -1
+                                               ? TypeFlags.NotGenericTypeDefinition
+                                               : TypeFlags.IsGenericTypeDefinition;
+                               }
+                               return (typeFlags & TypeFlags.IsGenericTypeDefinition) != 0;
+                       }
                }
 
                public override Type GetGenericTypeDefinition()
index 9b93c55d0cd4d3b0bf9349963a6cb95395ef1d8b..bb0273c6ad0b5c9b2fbcbc6f75ab5d90a5b0b99d 100644 (file)
@@ -50,8 +50,10 @@ namespace IKVM.Reflection
                [Flags]
                protected enum TypeFlags
                {
-                       // for use by TypeBuilder
+                       // for use by TypeBuilder or TypeDefImpl
                        IsGenericTypeDefinition = 1,
+
+                       // for use by TypeBuilder
                        HasNestedTypes = 2,
                        Baked = 4,
 
@@ -59,9 +61,12 @@ namespace IKVM.Reflection
                        ValueType = 8,
                        NotValueType = 16,
 
-                       // for use by TypeDef, TypeBuilder or MissingType
+                       // for use by TypeDefImpl, TypeBuilder or MissingType
                        PotentialEnumOrValueType = 32,
                        EnumOrValueType = 64,
+
+                       // for use by TypeDefImpl
+                       NotGenericTypeDefinition = 128,
                }
 
                // prevent subclassing by outsiders
@@ -1946,9 +1951,20 @@ namespace IKVM.Reflection
                        // types don't have pseudo custom attributes
                        return null;
                }
+
+               // in .NET this is an extension method, but we target .NET 2.0, so we have an instance method
+               public TypeInfo GetTypeInfo()
+               {
+                       TypeInfo type = this as TypeInfo;
+                       if (type == null)
+                       {
+                               throw new MissingMemberException(this);
+                       }
+                       return type;
+               }
        }
 
-       abstract class ElementHolderType : Type
+       abstract class ElementHolderType : TypeInfo
        {
                protected readonly Type elementType;
                private int token;
@@ -2488,7 +2504,7 @@ namespace IKVM.Reflection
                }
        }
 
-       sealed class GenericTypeInstance : Type
+       sealed class GenericTypeInstance : TypeInfo
        {
                private readonly Type type;
                private readonly Type[] args;
@@ -2851,7 +2867,7 @@ namespace IKVM.Reflection
                }
        }
 
-       sealed class FunctionPointerType : Type
+       sealed class FunctionPointerType : TypeInfo
        {
                private readonly Universe universe;
                private readonly __StandAloneMethodSig sig;
@@ -2975,5 +2991,10 @@ namespace IKVM.Reflection
                {
                        get { throw new InvalidOperationException(); }
                }
+
+               public override bool __IsMissing
+               {
+                       get { throw new InvalidOperationException(); }
+               }
        }
 }
diff --git a/mcs/class/IKVM.Reflection/TypeInfo.cs b/mcs/class/IKVM.Reflection/TypeInfo.cs
new file mode 100644 (file)
index 0000000..cd1c1e1
--- /dev/null
@@ -0,0 +1,158 @@
+/*
+  Copyright (C) 2012 Jeroen Frijters
+
+  This software is provided 'as-is', without any express or implied
+  warranty.  In no event will the authors be held liable for any damages
+  arising from the use of this software.
+
+  Permission is granted to anyone to use this software for any purpose,
+  including commercial applications, and to alter it and redistribute it
+  freely, subject to the following restrictions:
+
+  1. The origin of this software must not be misrepresented; you must not
+     claim that you wrote the original software. If you use this software
+     in a product, an acknowledgment in the product documentation would be
+     appreciated but is not required.
+  2. Altered source versions must be plainly marked as such, and must not be
+     misrepresented as being the original software.
+  3. This notice may not be removed or altered from any source distribution.
+
+  Jeroen Frijters
+  jeroen@frijters.net
+  
+*/
+using System;
+using System.Collections.Generic;
+
+namespace IKVM.Reflection
+{
+       public interface IReflectableType
+       {
+               TypeInfo GetTypeInfo();
+       }
+
+       public static class IntrospectionExtensions
+       {
+               // we target .NET 2.0 so we can't define an extension method
+               public static TypeInfo GetTypeInfo(/*this*/ Type type)
+               {
+                       return type.GetTypeInfo();
+               }
+       }
+
+       public abstract class TypeInfo : Type, IReflectableType
+       {
+               private const BindingFlags Flags = BindingFlags.DeclaredOnly | BindingFlags.Public | BindingFlags.NonPublic | BindingFlags.Instance | BindingFlags.Static;
+
+               internal TypeInfo()
+               {
+               }
+
+               internal TypeInfo(Type underlyingType)
+                       : base(underlyingType)
+               {
+               }
+
+               public IEnumerable<ConstructorInfo> DeclaredConstructors
+               {
+                       get { return GetConstructors(Flags); }
+               }
+
+               public IEnumerable<EventInfo> DeclaredEvents
+               {
+                       get { return GetEvents(Flags); }
+               }
+
+               public IEnumerable<FieldInfo> DeclaredFields
+               {
+                       get { return GetFields(Flags); }
+               }
+
+               public IEnumerable<MemberInfo> DeclaredMembers
+               {
+                       get { return GetMembers(Flags); }
+               }
+
+               public IEnumerable<MethodInfo> DeclaredMethods
+               {
+                       get { return GetMethods(Flags); }
+               }
+
+               public IEnumerable<TypeInfo> DeclaredNestedTypes
+               {
+                       get
+                       {
+                               Type[] types = GetNestedTypes(Flags);
+                               TypeInfo[] typeInfos = new TypeInfo[types.Length];
+                               for (int i = 0; i < types.Length; i++)
+                               {
+                                       typeInfos[i] = types[i].GetTypeInfo();
+                               }
+                               return typeInfos;
+                       }
+               }
+
+               public IEnumerable<PropertyInfo> DeclaredProperties
+               {
+                       get { return GetProperties(Flags); }
+               }
+
+               public Type[] GenericTypeParameters
+               {
+                       get { return IsGenericTypeDefinition ? GetGenericArguments() : Type.EmptyTypes; }
+               }
+
+               public IEnumerable<Type> ImplementedInterfaces
+               {
+                       get { return __GetDeclaredInterfaces(); }
+               }
+
+               public Type AsType()
+               {
+                       return this;
+               }
+
+               public EventInfo GetDeclaredEvent(string name)
+               {
+                       return GetEvent(name, Flags);
+               }
+
+               public FieldInfo GetDeclaredField(string name)
+               {
+                       return GetField(name, Flags);
+               }
+
+               public MethodInfo GetDeclaredMethod(string name)
+               {
+                       return GetMethod(name, Flags);
+               }
+
+               public IEnumerable<MethodInfo> GetDeclaredMethods(string name)
+               {
+                       List<MethodInfo> methods = new List<MethodInfo>();
+                       foreach (MethodInfo method in GetMethods(Flags))
+                       {
+                               if (method.Name == name)
+                               {
+                                       methods.Add(method);
+                               }
+                       }
+                       return methods;
+               }
+
+               public TypeInfo GetDeclaredNestedType(string name)
+               {
+                       return GetNestedType(name, Flags).GetTypeInfo();
+               }
+
+               public PropertyInfo GetDeclaredProperty(string name)
+               {
+                       return GetProperty(name, Flags);
+               }
+
+               public bool IsAssignableFrom(TypeInfo typeInfo)
+               {
+                       return base.IsAssignableFrom(typeInfo);
+               }
+       }
+}
index 5462b3be47c51245af6793e6e2eb93e0776e7288..a8b4785ef59198373589a043bab2a1fcfe332ce4 100644 (file)
@@ -479,6 +479,7 @@ namespace IKVM.Reflection.Writer
                                idd.TimeDateStamp = peWriter.Headers.FileHeader.TimeDateStamp;
                                byte[] buf = SymbolSupport.GetDebugInfo(moduleBuilder.symbolWriter, ref idd);
                                idd.PointerToRawData = (DebugDirectoryRVA - BaseRVA) + DebugDirectoryLength + PointerToRawData;
+                               idd.AddressOfRawData = DebugDirectoryRVA + DebugDirectoryLength;
                                mw.Write(idd.Characteristics);
                                mw.Write(idd.TimeDateStamp);
                                mw.Write(idd.MajorVersion);
index 7f62aa4f2b9e025e59d738bc57f8bdd9039b70a0..47a4cc5e0b0d5bb5daf0b8b6d9c51abc52866b45 100644 (file)
@@ -204,6 +204,7 @@ net_4_5_dirs := \
        System.Web.Mvc3 \
        System.Net.Http.Formatting \
        System.Web.Http \
+       System.Web.Http.SelfHost \
        EntityFramework \
        EntityFramework.SqlServer       \
        Mono.CodeContracts
index 5be1e9310024821b71ee38354ba6257e479addb3..867f9f96503566bd6aef342d6783f468dcb1308e 100644 (file)
@@ -186,6 +186,7 @@ namespace System.Windows.Forms {
 
                //private int flags;
                //private Guid clsid;
+               private AboutBoxDelegate aboutDelegate = null;
 
                #region Protected Constructors
 
@@ -327,8 +328,8 @@ namespace System.Windows.Forms {
                [DesignerSerializationVisibility (DesignerSerializationVisibility.Hidden)]
                [EditorBrowsable (EditorBrowsableState.Advanced)]
                public bool HasAboutBox {
-                       get { 
-                               throw new NotImplementedException("COM/ActiveX support is not implemented");
+                       get {
+                               return aboutDelegate != null;
                        }
                }
 
@@ -482,9 +483,9 @@ namespace System.Windows.Forms {
 
                #region Public Instance Methods
                [EditorBrowsable (EditorBrowsableState.Advanced)]
+               [MonoTODO]
                public void BeginInit ()
                {
-                       throw new NotImplementedException("COM/ActiveX support is not implemented");
                }
                
                public void DoVerb (int verb)
@@ -493,9 +494,9 @@ namespace System.Windows.Forms {
                }
 
                [EditorBrowsable (EditorBrowsableState.Advanced)]
+               [MonoTODO]
                public void EndInit ()
                {
-                       throw new NotImplementedException("COM/ActiveX support is not implemented");
                }
 
                [EditorBrowsable (EditorBrowsableState.Advanced)]
@@ -528,7 +529,8 @@ namespace System.Windows.Forms {
 
                public void ShowAboutBox ()
                {
-                       throw new NotImplementedException("COM/ActiveX support is not implemented");
+                       if (aboutDelegate != null)
+                               this.aboutDelegate();
                }
                
                public void ShowPropertyPages ()
@@ -599,17 +601,17 @@ namespace System.Windows.Forms {
                
                protected override void OnBackColorChanged (EventArgs e)
                {
-                       throw new NotImplementedException("COM/ActiveX support is not implemented");
+                       base.OnBackColorChanged(e);
                }
                
                protected override void OnFontChanged (EventArgs e)
                {
-                       throw new NotImplementedException("COM/ActiveX support is not implemented");
+                       base.OnFontChanged(e);
                }
                
                protected override void OnForeColorChanged (EventArgs e)
                {
-                       throw new NotImplementedException("COM/ActiveX support is not implemented");
+                       base.OnForeColorChanged(e);
                }
                
                protected override void OnHandleCreated (EventArgs e)
@@ -630,7 +632,7 @@ namespace System.Windows.Forms {
                
                protected override bool ProcessDialogKey (Keys keyData)
                {
-                       throw new NotImplementedException("COM/ActiveX support is not implemented");
+                       return base.ProcessDialogKey(keyData);
                }
 
                protected override bool ProcessMnemonic (char charCode)
@@ -700,12 +702,12 @@ namespace System.Windows.Forms {
 
                protected void SetAboutBoxDelegate (AxHost.AboutBoxDelegate d)
                {
-                       throw new NotImplementedException("COM/ActiveX support is not implemented");
+                       this.aboutDelegate = d;
                }
                
                protected override void SetBoundsCore (int x, int y, int width, int height, BoundsSpecified specified)
                {
-                       throw new NotImplementedException("COM/ActiveX support is not implemented");
+                       base.SetBoundsCore(x, y, width, height, specified);
                }
                
                protected override void SetVisibleCore (bool value)
@@ -723,270 +725,267 @@ namespace System.Windows.Forms {
                [Browsable (false)]
                [EditorBrowsable (EditorBrowsableState.Never)]
                public new event EventHandler BackColorChanged {
-                       add { base.BackColorChanged += value; }
-                       remove { base.BackColorChanged -= value; }
+                       add { throw new NotSupportedException("BackColorChanged"); }
+                       remove { }
                }
 
                [Browsable (false)]
                [EditorBrowsable (EditorBrowsableState.Never)]
                public new event EventHandler BackgroundImageChanged {
-                       add { base.BackgroundImageChanged += value; }
-                       remove { base.BackgroundImageChanged -= value; }
+                       add { throw new NotSupportedException("BackgroundImageChanged"); }
+                       remove { }
                }
 
                [Browsable (false)]
                [EditorBrowsable (EditorBrowsableState.Never)]
                public new event EventHandler BindingContextChanged {
-                       add { base.BindingContextChanged += value; }
-                       remove { base.BindingContextChanged -= value; }
+                       add { throw new NotSupportedException("BackgroundImageChanged"); }
+                       remove { }
                }
 
                [Browsable (false)]
                [EditorBrowsable (EditorBrowsableState.Never)]
                public new event UICuesEventHandler ChangeUICues {
-                       add { base.ChangeUICues += value; }
-                       remove { base.ChangeUICues -= value; }
+                       add { throw new NotSupportedException("ChangeUICues"); }
+                       remove { }
                }
 
                [Browsable (false)]
                [EditorBrowsable (EditorBrowsableState.Never)]
                public new event EventHandler Click {
-                       add { base.Click += value; }
-                       remove { base.Click -= value; }
+                       add { throw new NotSupportedException("Click"); }
+                       remove { }
                }
 
                [Browsable (false)]
                [EditorBrowsable (EditorBrowsableState.Never)]
                public new event EventHandler ContextMenuChanged {
-                       add { base.ContextMenuChanged += value; }
-                       remove { base.ContextMenuChanged -= value; }
+                       add { throw new NotSupportedException("ContextMenuChanged"); }
+                       remove { }
                }
        
                [Browsable (false)]
                [EditorBrowsable (EditorBrowsableState.Never)]
                public new event EventHandler CursorChanged {
-                       add { base.CursorChanged += value; }
-                       remove { base.CursorChanged -= value; }
+                       add { throw new NotSupportedException("CursorChanged"); }
+                       remove { }
                }
 
                [Browsable (false)]
                [EditorBrowsable (EditorBrowsableState.Never)]
                public new event EventHandler DoubleClick {
-                       add { base.DoubleClick += value; }
-                       remove { base.DoubleClick -= value; }
+                       add { throw new NotSupportedException("DoubleClick"); }
+                       remove { }
                }
 
                [Browsable (false)]
                [EditorBrowsable (EditorBrowsableState.Never)]
                public new event DragEventHandler DragDrop {
-                       add { base.DragDrop += value; }
-                       remove { base.DragDrop -= value; }
+                       add { throw new NotSupportedException("DragDrop"); }
+                       remove { }
                }
 
                [Browsable (false)]
                [EditorBrowsable (EditorBrowsableState.Never)]
                public new event DragEventHandler DragEnter {
-                       add { base.DragEnter += value; }
-                       remove { base.DragEnter -= value; }
+                       add { throw new NotSupportedException("DragEnter"); }
+                       remove { }
                }
 
                [Browsable (false)]
                [EditorBrowsable (EditorBrowsableState.Never)]
                public new event EventHandler DragLeave {
-                       add { base.DragLeave += value; }
-                       remove { base.DragLeave -= value; }
+                       add { throw new NotSupportedException("DragLeave"); }
+                       remove { }
                }
 
                [Browsable (false)]
                [EditorBrowsable (EditorBrowsableState.Never)]
                public new event DragEventHandler DragOver {
-                       add { base.DragOver += value; }
-                       remove { base.DragOver -= value; }
+                       add { throw new NotSupportedException("DragOver"); }
+                       remove { }
                }
 
                [Browsable (false)]
                [EditorBrowsable (EditorBrowsableState.Never)]
                public new event EventHandler EnabledChanged {
-                       add { base.EnabledChanged += value; }
-                       remove { base.EnabledChanged -= value; }
+                       add { throw new NotSupportedException("EnabledChanged"); }
+                       remove { }
                }
 
                [Browsable (false)]
                [EditorBrowsable (EditorBrowsableState.Never)]
                public new event EventHandler FontChanged {
-                       add { base.FontChanged += value; }
-                       remove { base.FontChanged -= value; }
+                       add { throw new NotSupportedException("FontChanged"); }
+                       remove { }
                }
 
                [Browsable (false)]
                [EditorBrowsable (EditorBrowsableState.Never)]
                public new event EventHandler ForeColorChanged {
-                       add { base.ForeColorChanged += value; }
-                       remove { base.ForeColorChanged -= value; }
+                       add { throw new NotSupportedException("ForeColorChanged"); }
+                       remove { }
                }
 
                [Browsable (false)]
                [EditorBrowsable (EditorBrowsableState.Never)]
                public new event GiveFeedbackEventHandler GiveFeedback {
-                       add { base.GiveFeedback += value; }
-                       remove { base.GiveFeedback -= value; }
+                       add { throw new NotSupportedException("GiveFeedback"); }
+                       remove { }
                }
 
                [Browsable (false)]
                [EditorBrowsable (EditorBrowsableState.Never)]
                public new event HelpEventHandler HelpRequested {
-                       add { base.HelpRequested += value; }
-                       remove { base.HelpRequested -= value; }
+                       add { throw new NotSupportedException("HelpRequested"); }
+                       remove { }
                }
 
                [Browsable (false)]
                [EditorBrowsable (EditorBrowsableState.Never)]
                public new event EventHandler ImeModeChanged {
-                       add { base.ImeModeChanged += value; }
-                       remove { base.ImeModeChanged -= value; }
+                       add { throw new NotSupportedException("ImeModeChanged"); }
+                       remove { }
                }
 
                [Browsable (false)]
                [EditorBrowsable (EditorBrowsableState.Never)]
                public new event KeyEventHandler KeyDown {
-                       add { base.KeyDown += value; }
-                       remove { base.KeyDown -= value; }
+                       add { throw new NotSupportedException("KeyDown"); }
+                       remove { }
                }
 
                [Browsable (false)]
                [EditorBrowsable (EditorBrowsableState.Never)]
                public new event KeyPressEventHandler KeyPress {
-                       add { base.KeyPress += value; }
-                       remove { base.KeyPress -= value; }
+                       add { throw new NotSupportedException("KeyPress"); }
+                       remove { }
                }
 
                [Browsable (false)]
                [EditorBrowsable (EditorBrowsableState.Never)]
                public new event KeyEventHandler KeyUp {
-                       add { base.KeyUp += value; }
-                       remove { base.KeyUp -= value; }
+                       add { throw new NotSupportedException("KeyUp"); }
+                       remove { }
                }
 
                [Browsable (false)]
                [EditorBrowsable (EditorBrowsableState.Never)]
                public new event LayoutEventHandler Layout {
-                       add { base.Layout += value; }
-                       remove { base.Layout -= value; }
+                       add { throw new NotSupportedException("Layout"); }
+                       remove { }
                }
 
                [Browsable (false)]
                [EditorBrowsable (EditorBrowsableState.Never)]
                public new event MouseEventHandler MouseDown {
-                       add { base.MouseDown += value; }
-                       remove { base.MouseDown -= value; }
+                       add { throw new NotSupportedException("MouseDown"); }
+                       remove { }
                }
 
                [Browsable (false)]
                [EditorBrowsable (EditorBrowsableState.Never)]
                public new event EventHandler MouseEnter {
-                       add { base.MouseEnter += value; }
-                       remove { base.MouseEnter -= value; }
+                       add { throw new NotSupportedException("MouseEnter"); }
+                       remove { }
                }
 
                [Browsable (false)]
                [EditorBrowsable (EditorBrowsableState.Never)]
                public new event EventHandler MouseHover {
-                       add { base.MouseHover += value; }
-                       remove { base.MouseHover -= value; }
+                       add { throw new NotSupportedException("MouseHover"); }
+                       remove { }
                }
 
                [Browsable (false)]
                [EditorBrowsable (EditorBrowsableState.Never)]
                public new event EventHandler MouseLeave {
-                       add { base.MouseLeave += value; }
-                       remove { base.MouseLeave -= value; }
+                       add { throw new NotSupportedException("MouseLeave"); }
+                       remove { }
                }
 
                [Browsable (false)]
                [EditorBrowsable (EditorBrowsableState.Never)]
                public new event MouseEventHandler MouseMove {
-                       add { base.MouseMove += value; }
-                       remove { base.MouseMove -= value; }
+                       add { throw new NotSupportedException("MouseMove"); }
+                       remove { }
                }
 
                [Browsable (false)]
                [EditorBrowsable (EditorBrowsableState.Never)]
                public new event MouseEventHandler MouseUp {
-                       add { base.MouseUp += value; }
-                       remove { base.MouseUp -= value; }
+                       add { throw new NotSupportedException("MouseUp"); }
+                       remove { }
                }
 
                [Browsable (false)]
                [EditorBrowsable (EditorBrowsableState.Never)]
                public new event MouseEventHandler MouseWheel {
-                       add { base.MouseWheel += value; }
-                       remove { base.MouseWheel -= value; }
+                       add { throw new NotSupportedException("MouseWheel"); }
+                       remove { }
                }
 
                [Browsable (false)]
                [EditorBrowsable (EditorBrowsableState.Never)]
                public new event PaintEventHandler Paint {
-                       add { base.Paint += value; }
-                       remove { base.Paint -= value; }
+                       add { throw new NotSupportedException("Paint"); }
+                       remove { }
                }
 
                [Browsable (false)]
                [EditorBrowsable (EditorBrowsableState.Never)]
                public new event QueryAccessibilityHelpEventHandler QueryAccessibilityHelp {
-                       add { base.QueryAccessibilityHelp += value; }
-                       remove { base.QueryAccessibilityHelp -= value; }
+                       add { throw new NotSupportedException("QueryAccessibilityHelp"); }
+                       remove { }
                }
 
                [Browsable (false)]
                [EditorBrowsable (EditorBrowsableState.Never)]
                public new event QueryContinueDragEventHandler QueryContinueDrag {
-                       add { base.QueryContinueDrag += value; }
-                       remove { base.QueryContinueDrag -= value; }
+                       add { throw new NotSupportedException("QueryContinueDrag"); }
+                       remove { }
                }
 
                [Browsable (false)]
                [EditorBrowsable (EditorBrowsableState.Never)]
                public new event EventHandler RightToLeftChanged {
-                       add { base.RightToLeftChanged += value; }
-                       remove { base.RightToLeftChanged -= value; }
+                       add { throw new NotSupportedException("RightToLeftChanged"); }
+                       remove { }
                }
 
                [Browsable (false)]
                [EditorBrowsable (EditorBrowsableState.Never)]
                public new event EventHandler StyleChanged {
-                       add { base.StyleChanged += value; }
-                       remove { base.StyleChanged -= value; }
+                       add { throw new NotSupportedException("StyleChanged"); }
+                       remove { }
                }
 
                [Browsable (false)]
                [EditorBrowsable (EditorBrowsableState.Never)]
                public new event EventHandler BackgroundImageLayoutChanged {
-                       add { base.BackgroundImageLayoutChanged += value; }
-                       remove { base.BackgroundImageLayoutChanged -= value; }
+                       add { throw new NotSupportedException("BackgroundImageChanged"); }
+                       remove { }
                }
 
-               static object MouseClickEvent = new object ();
-               static object MouseDoubleClickEvent = new object ();
-
                [Browsable (false)]
                [EditorBrowsable (EditorBrowsableState.Never)]
                public new event EventHandler MouseClick {
-                       add { Events.AddHandler (MouseClickEvent, value); }
-                       remove { Events.RemoveHandler (MouseClickEvent, value); }
+                       add { throw new NotSupportedException("BackgroundImMouseClickageChanged"); }
+                       remove { }
                }
 
                [Browsable (false)]
                [EditorBrowsable (EditorBrowsableState.Never)]
                public new event EventHandler MouseDoubleClick {
-                       add { Events.AddHandler (MouseDoubleClickEvent, value); }
-                       remove { Events.RemoveHandler (MouseDoubleClickEvent, value); }
+                       add { throw new NotSupportedException("MouseDoubleClick"); }
+                       remove { }
                }
 
                [Browsable (false)]
                [EditorBrowsable (EditorBrowsableState.Never)]
                public new event EventHandler TextChanged {
-                       add { base.TextChanged += value; }
-                       remove { base.TextChanged -= value; }
+                       add { throw new NotSupportedException("TextChanged"); }
+                       remove { }
                }
                #endregion      // Events
 
index 5ab649dd3f32fff273be0f89a8b21c4dfa7468d5..9c51bc96e5d33618b55b0e3cce708afd5f06a0a5 100644 (file)
@@ -26,8 +26,6 @@
 // WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 //
 
-#if NET_2_0
-
 using System;
 using System.Reflection;
 using System.Resources;
@@ -59,4 +57,3 @@ using System.Runtime.InteropServices;
 
 [assembly: AssemblyFileVersion (Consts.FxFileVersion)]
 
-#endif
index d18e58642f788794ca921e7e3938e4f6ccbd9984..794a10d1304aede8cfd60b6298a62583fbcd76df 100644 (file)
@@ -28,8 +28,6 @@
 // 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 NET_2_0
-
 using System;
 using System.IO;
 using System.Collections.Generic;
@@ -256,5 +254,3 @@ namespace Microsoft.Build.BuildEngine {
 
        }
 }
-
-#endif
index 53725110f80f87e692164f4cd3d46144747e6dda..338977060a2703f659f835f977edb9d5d1404e49 100644 (file)
@@ -25,8 +25,6 @@
 // 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 NET_2_0
-
 using System;
 using System.Collections.Generic;
 using System.Xml;
@@ -99,5 +97,3 @@ namespace Microsoft.Build.BuildEngine {
                internal string DefinedInFileName { get; private set; }
        }
 }
-
-#endif
index 1aa15b6909ab7e9209b1ce41687a906aa9af6bc3..798d3b580f3a162d3e07068446c74ebbe6d356ee 100644 (file)
@@ -25,8 +25,6 @@
 // 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 NET_2_0
-
 using System;
 using System.Collections;
 using Microsoft.Build.Framework;
@@ -160,5 +158,3 @@ namespace Microsoft.Build.BuildEngine {
                
        }
 }
-
-#endif
index a706ad3a85fc6b7481ad39ee50c44e0184122ee0..feac4e6833338792855b42edaebe4e10f98c8850 100644 (file)
@@ -25,8 +25,6 @@
 // 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 NET_2_0
-
 using System;
 using System.Collections;
 using System.Collections.Generic;
@@ -535,5 +533,3 @@ namespace Microsoft.Build.BuildEngine {
                }
        }
 }
-
-#endif
index f590cd57745eb90f639ccea22e7f3f059f962afe..444731a8cee60b70538b3055085f8b73478c782c 100644 (file)
@@ -25,8 +25,6 @@
 // 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 NET_2_0
-
 using System;
 using System.Reflection;
 using System.Collections;
@@ -321,5 +319,3 @@ namespace Microsoft.Build.BuildEngine {
                }
        }
 }
-
-#endif
index 0ec36a8ea0828e30c7b9047d5580c658344d7970..3657a044169c4867bfd2c60c585a5e329e4ddb37 100644 (file)
@@ -25,8 +25,6 @@
 // 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 NET_2_0
-
 using System;
 using System.Collections;
 
@@ -95,5 +93,3 @@ namespace Microsoft.Build.BuildEngine {
                }
        }
 }
-
-#endif
index 62caeda9edbf65629c676554e72c7d44be9087b0..006fe2b3fa2ec2c44ff4703d567edf0ca283f14f 100644 (file)
@@ -27,8 +27,6 @@
 // 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 NET_2_0
-
 using System;
 using System.Text;
 using System.Xml;
@@ -252,5 +250,3 @@ namespace Microsoft.Build.BuildEngine {
                Environment
        }
 }
-
-#endif
index 1ce12c53dcb05b66b3de0f96ca7b75f21267db81..fc6b02447c5e48c4057560c64591d89c49cb3e51 100644 (file)
@@ -25,8 +25,6 @@
 // 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 NET_2_0
-
 using System;
 using System.Collections;
 using System.Collections.Generic;
@@ -303,5 +301,3 @@ namespace Microsoft.Build.BuildEngine {
                }
        }
 }
-
-#endif
index a240107addd3f2ac379849be1084f3272a685268..a5a0721fe62135fa72457946c00afce149005e1d 100644 (file)
@@ -25,8 +25,6 @@
 // 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 NET_2_0
-
 using System;
 using System.Collections;
 
@@ -95,5 +93,3 @@ namespace Microsoft.Build.BuildEngine {
                }
        }
 }
-
-#endif
index e6b2fa912f20fad42b797e2bb6ff2d068f5dcb46..c41a59ad80a5ee87e33e8fc94232a9a707ed3a29 100644 (file)
@@ -25,8 +25,6 @@
 // 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 NET_2_0
-
 using System;
 
 namespace Microsoft.Build.BuildEngine {
@@ -36,5 +34,3 @@ namespace Microsoft.Build.BuildEngine {
                DoNotResetPreviouslyBuiltTargets
        }
 }
-
-#endif
\ No newline at end of file
index b57dfd7588fdb03fe14e3447f73b587ea8c8636f..97191e365d23069f6b671098565884b647afbf07 100644 (file)
@@ -25,8 +25,6 @@
 // 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 NET_2_0
-
 using System;
 using System.Collections;
 using System.Collections.Generic;
@@ -276,5 +274,3 @@ namespace Microsoft.Build.BuildEngine {
                
        }
 }
-
-#endif
index f243f679f22b9503c0da57ddcc9471434aa4b155..587921a8249b4f771668de9d459e27a3404d37d3 100644 (file)
@@ -25,8 +25,6 @@
 // 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 NET_2_0
-
 using System;
 using System.Collections;
 using System.Xml;
@@ -82,5 +80,3 @@ namespace Microsoft.Build.BuildEngine {
                }
        }
 }
-
-#endif
index fe77ec59ac185006b6e30903593f295f5ab2ca44..09ebb4eafb009d5aace72d6f9588c2b2aff12a14 100644 (file)
@@ -25,8 +25,6 @@
 // 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 NET_2_0
-
 using System;
 using System.Collections;
 using System.Collections.Generic;
@@ -147,5 +145,3 @@ namespace Microsoft.Build.BuildEngine {
                }
        }
 }
-
-#endif
index a7dabc94b10336060d9f204402927d4498fe2f2d..abe0ec9d8e84ca9ced8ab53464799241edba65b6 100644 (file)
 // 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 NET_2_0
-
 using System;
 
 namespace Microsoft.Build.BuildEngine {
        public delegate void ColorResetter ();
 }
-
-#endif
\ No newline at end of file
index c779de92b98517d8b4e1f7b309bf9b6938cc7bff..85091186ea0010e039f5b01a44f2580253a5b49a 100644 (file)
 // 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 NET_2_0
-
 using System;
 
 namespace Microsoft.Build.BuildEngine {
        public delegate void ColorSetter (ConsoleColor color);
 }
-
-#endif
\ No newline at end of file
index 55c40d80e924af385c2344e9e2c61bfa8c787de7..10eb5c2bccac549b8a6ea8465924a2704cc39d4a 100644 (file)
@@ -25,8 +25,6 @@
 // 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 NET_2_0
-
 using System;
 using System.Xml;
 
@@ -88,5 +86,3 @@ namespace Microsoft.Build.BuildEngine {
                }
        }
 }
-
-#endif
index 8411cd8265945e1e63441d77a22a505a9e016c74..004ed571c90f020052ef4205f776033fb3275924 100644 (file)
@@ -25,8 +25,6 @@
 // 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 NET_2_0
-
 using System;
 using System.Xml;
 
@@ -42,5 +40,3 @@ namespace Microsoft.Build.BuildEngine {
                public abstract bool CanEvaluateToString (Project context);
        }
 }
-
-#endif
index 9f8f6c63f58c42996026396d8230ec2c71aa916f..709fedf1ce88f40e5419b637ed4a48a64a5458eb 100644 (file)
@@ -25,8 +25,6 @@
 // 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 NET_2_0
-
 using System;
 using System.Collections;
 using System.Collections.Specialized;
@@ -129,5 +127,3 @@ namespace Microsoft.Build.BuildEngine {
                }
        }
 }
-
-#endif
index 3cc58f78f465876489cdfa3b34e9c017bfa6b4af..7140e50566d96e5b110a9e6243912ecfe4c22936 100644 (file)
@@ -25,8 +25,6 @@
 // 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 NET_2_0
-
 using System;
 using System.Collections.Generic;
 using System.IO;
@@ -135,5 +133,3 @@ namespace Microsoft.Build.BuildEngine {
 
        }
 }
-
-#endif
index 28d9292564e5bac94c99ecef3a1ccacda02fa870..431f69b50d4376e70ea0ce3a37820f9e0c755d68 100644 (file)
@@ -25,8 +25,6 @@
 // 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 NET_2_0
-
 using System;
 using System.Xml;
 
@@ -72,5 +70,3 @@ namespace Microsoft.Build.BuildEngine {
                }
        }
 }
-
-#endif
index 1f6bf4b30d0a80dec3776fbc0ca07f98747e866a..3d8006e6288b7bd1902ab3b7c240f765a0c2fe52 100644 (file)
@@ -25,8 +25,6 @@
 // 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 NET_2_0
-
 using System;
 using System.Xml;
 
@@ -86,5 +84,3 @@ namespace Microsoft.Build.BuildEngine {
                }
        }
 }
-
-#endif
index f1a2ae63fbbdf2b1e16eb6c2d2f117157b322372..d7f4ac5c80b022d15c32a4ffb8b3bb4132243348 100644 (file)
@@ -27,8 +27,6 @@
 // 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 NET_2_0
-
 using System;
 using System.Collections;
 using System.Collections.Generic;
@@ -277,5 +275,3 @@ namespace Microsoft.Build.BuildEngine {
                }
        }
 }
-
-#endif
index 15dff4feebbfff9f973195a030802335c104ee39..da0ed40a19f8e3e2752ed3c42ffe3178e30365a9 100644 (file)
@@ -25,8 +25,6 @@
 // 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 NET_2_0
-
 using System;
 using System.Collections;
 using System.Xml;
@@ -165,5 +163,3 @@ namespace Microsoft.Build.BuildEngine {
                GreaterOrEqual
        }
 }
-
-#endif
index 184872a2bcd1165590e5eda994756407e5872534..29a4aba628af1765cad1851993be5fe6e4ec9d73 100644 (file)
@@ -27,8 +27,6 @@
 // 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 NET_2_0
-
 using System;
 using System.Collections;
 using System.Collections.Generic;
@@ -302,5 +300,3 @@ namespace Microsoft.Build.BuildEngine {
                };
        }
 }
-
-#endif
index 2381cff584c7d3271e2f871a4c56d42318682715..1b6b4003c0466345b14be069543df29e15be372f 100644 (file)
@@ -25,8 +25,6 @@
 // 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 NET_2_0
-
 using System;
 using System.Runtime.InteropServices;
 using System.Collections;
@@ -904,5 +902,3 @@ namespace Microsoft.Build.BuildEngine {
                public int NumberOfCalls;
        }
 }
-
-#endif
index 69c721c9df9cca3c0c778187da4850ec089c68d4..624bd71ac7f8dcd0dc5b2fc0eccb030d4b540c35 100644 (file)
@@ -25,8 +25,6 @@
 // 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 NET_2_0
-
 using System;
 using System.Collections.Generic;
 using System.IO;
@@ -252,5 +250,3 @@ namespace Microsoft.Build.BuildEngine {
                }
        }
 }
-
-#endif
index 7d5db3f64b3ce8d3801e7bca20ba9bb6b7ffbc98..51b9f4588a79c7344fe8200cb72f893339633c5f 100644 (file)
@@ -25,8 +25,6 @@
 // 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 NET_2_0
-
 using System;
 using System.Collections;
 using System.Collections.Generic;
@@ -589,5 +587,3 @@ namespace Microsoft.Build.BuildEngine {
                }
        }
 }
-
-#endif
index 7abd6514f244c45eba44ee041404a7ee308bc10a..fa372b84097ed1f2c5f43f14b8316e17bf65a952 100644 (file)
@@ -25,8 +25,6 @@
 // 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 NET_2_0
-
 using Microsoft.Build.Framework;
 
 namespace Microsoft.Build.BuildEngine {
@@ -300,5 +298,3 @@ namespace Microsoft.Build.BuildEngine {
                }
        }
 }
-
-#endif
index 0d7ad2fa5984896fe57d3b622bc8b6ceefddab82..125ce5012a1601226f57d5fc7a195ead3f091f27 100644 (file)
@@ -25,8 +25,6 @@
 // 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 NET_2_0
-
 using System;
 using System.IO;
 using System.Collections;
@@ -365,5 +363,3 @@ namespace Microsoft.Build.BuildEngine {
                DoNotExpandItemRefs
        }
 }
-
-#endif
index 8c5c00aa6836a5f87da171b30eba278600e51f09..ca0034a10923b5ab756aa8c38ba1c96c82115856 100644 (file)
@@ -27,8 +27,6 @@
 // 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 NET_2_0
-
 using System;
 using System.Collections;
 using System.Collections.Generic;
@@ -291,5 +289,3 @@ namespace Microsoft.Build.BuildEngine {
 
        }
 }
-
-#endif
index e08c148d9c615d4976c21bb6f991d6c34474c744..4a613a81e01a69abed328c75c63cf8a84ff9ebd4 100644 (file)
@@ -25,8 +25,6 @@
 // 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 NET_2_0
-
 using System;
 using System.Runtime.Serialization;
 
@@ -57,5 +55,3 @@ namespace Microsoft.Build.BuildEngine {
                }
        }
 }
-
-#endif
index 12a0690dd619838e56d78bd7c838ca1f395f97c9..31af4165109f86dc646c45bd251377e471196032 100644 (file)
@@ -25,8 +25,6 @@
 // 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 NET_2_0
-
 using System;
 using System.Runtime.Serialization;
 
@@ -57,5 +55,3 @@ namespace Microsoft.Build.BuildEngine {
                }
        }
 }
-
-#endif
\ No newline at end of file
index d816b66a370701ac500b716591f29ae72327490e..9e0f90703ae17c83bf2810d4d34a30b8a151f8e6 100644 (file)
@@ -27,8 +27,6 @@
 // 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 NET_2_0
-
 using System;
 using System.IO;
 using System.Text;
@@ -149,5 +147,3 @@ namespace Microsoft.Build.BuildEngine {
                }
        }
 }
-
-#endif
index 0ebb654aa25912f25c14345767dbfc7beb041865..059de7fe2752b1bd39eecdcb913d46ddd5199f20 100644 (file)
@@ -26,8 +26,6 @@
 // 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 NET_2_0
-
 using System;
 using System.Collections;
 using System.Collections.Generic;
@@ -269,5 +267,3 @@ namespace Microsoft.Build.BuildEngine {
                Choose
        }
 }
-
-#endif
diff --git a/mcs/class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/HostLogger.cs b/mcs/class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/HostLogger.cs
deleted file mode 100644 (file)
index 46b9e87..0000000
+++ /dev/null
@@ -1,83 +0,0 @@
-//
-// HostLogger.cs:
-//
-// Author:
-//   Marek Sieradzki (marek.sieradzki@gmail.com)
-// 
-// (C) 2005 Marek Sieradzki
-//
-// 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 NET_2_0
-
-using System;
-using Microsoft.Build.Framework;
-
-namespace Microsoft.Build.BuildEngine {
-
-       [MonoTODO]
-       public class HostLogger : ILogger, IHostLogger {
-               
-               IHostFeedback   hostFeedbackObject;
-               string          parameters;
-               LoggerVerbosity verbosity;
-       
-               public HostLogger ()
-               {
-               }
-
-               public void Initialize (IEventSource eventSource)
-               {
-               }
-
-               public void Shutdown ()
-               {
-               }
-
-               public IHostFeedback HostFeedbackObject {
-                       get {
-                               return hostFeedbackObject;
-                       }
-                       set {
-                               hostFeedbackObject = value;
-                       }
-               }
-
-               public string Parameters {
-                       get {
-                               return parameters;
-                       }
-                       set {
-                               parameters = value;
-                       }
-               }
-
-               public LoggerVerbosity Verbosity {
-                       get {
-                               return verbosity;
-                       }
-                       set {
-                               verbosity = value;
-                       }
-               }
-       }
-}
-
-#endif
index 30104edd7ed816e236db75d856019a4f20985cc4..3c243f1b5eb4863ef509f61ff7ab9219298aa8d4 100644 (file)
@@ -25,8 +25,6 @@
 // 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 NET_2_0
-
 using Microsoft.Build.Framework;
 
 namespace Microsoft.Build.BuildEngine {
@@ -38,5 +36,3 @@ namespace Microsoft.Build.BuildEngine {
                int End { get; }
        }
 }
-
-#endif
index 79893411b886712def98d59f1a531aeb4cf5ae6e..d770b0175af8cb82bb38ab421c5caf739cdab2e1 100644 (file)
@@ -27,8 +27,6 @@
 // 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 NET_2_0
-
 using System;
 using System.Collections.Generic;
 using System.IO;
@@ -293,5 +291,3 @@ namespace Microsoft.Build.BuildEngine {
                }
        }
 }
-
-#endif
index 6a956d2858423187d44d474364255fc78eb2924d..4d5f178fb2d64f9ddcb8203c81f4e6ceea698cb9 100644 (file)
@@ -26,8 +26,6 @@
 // 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 NET_2_0
-
 using System;
 using System.Collections;
 using System.Collections.Generic;
@@ -106,5 +104,3 @@ namespace Microsoft.Build.BuildEngine {
                }
        }
 }
-
-#endif
index 9fedc2dfec9f690746cc08e427f6e5d8a6ab1465..e508d8a0519fe2c4c76e6afd561001c112064968 100644 (file)
@@ -25,8 +25,6 @@
 // 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 NET_2_0
-
 using System;
 using System.IO;
 using System.Xml;
@@ -79,5 +77,3 @@ namespace Microsoft.Build.BuildEngine {
                }
        }
 }
-
-#endif
index e1b3933a0c12d8bbc0b404cb11b4ebe9bd1ee249..d7f2053b5c6ba3f79a541c4b6d841a6277a45318 100644 (file)
@@ -25,8 +25,6 @@
 // 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 NET_2_0
-
 using System;
 using System.Runtime.Serialization;
 using System.Security.Permissions;
@@ -96,5 +94,3 @@ namespace Microsoft.Build.BuildEngine {
                }
        }
 }
-
-#endif
index 3d3f84afeb8cab63151fa796b4317d8e0fc17420..57fc1b27d445d308d4622e6c92db976e313629d3 100644 (file)
@@ -25,8 +25,6 @@
 // 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 NET_2_0
-
 using System;
 using System.Runtime.Serialization;
 using System.Security.Permissions;
@@ -190,5 +188,3 @@ namespace Microsoft.Build.BuildEngine {
                }
        }
 }
-
-#endif
index b70b63dad6f2b58a5b5a87a69cf118efa7b39d75..4487fd61700b909a551ed992e808348a46872e72 100644 (file)
@@ -27,8 +27,6 @@
 // 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 NET_2_0
-
 using System;
 using System.Collections;
 using Microsoft.Build.Framework;
@@ -114,5 +112,3 @@ namespace Microsoft.Build.BuildEngine {
                }
        }
 }
-
-#endif
index 7577a6ede35d72f731b0dfc7805792a3e5b9b194..f547572cd0c42b6c1dfb91f85fd1c6fda3e53a1d 100644 (file)
@@ -25,8 +25,6 @@
 // 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 NET_2_0
-
 using System;
 using System.IO;
 using System.Text;
@@ -185,5 +183,3 @@ namespace Microsoft.Build.BuildEngine
                }
        }
 }
-
-#endif
index 7c9513b92c71a15c33b6c4d2c452ad5ea9e07ed0..a75e9d28b4bc8717f947e6fbcebe072a9c1bd3d4 100644 (file)
@@ -25,8 +25,6 @@
 // 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 NET_2_0
-
 using System;
 using System.Collections.Generic;
 using System.Text;
@@ -136,5 +134,3 @@ namespace Microsoft.Build.BuildEngine {
                }
        }
 }
-
-#endif
index 3ef00f121d3801fdc34ad5d89819d75c23c40d8e..ac6b72dfcae424b8d3725e18330fb92e09a884ab 100644 (file)
@@ -27,8 +27,6 @@
 // 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 NET_2_0
-
 using System;
 using System.Collections;
 using System.Collections.Generic;
@@ -1609,5 +1607,3 @@ namespace Microsoft.Build.BuildEngine {
 
        }
 }
-
-#endif
index 9b8930759016dccb3fc9a8ba9c5ad28468ab8bf6..9cc720abafeae19d78bf21e79139f3ad6c06de61 100644 (file)
@@ -25,8 +25,6 @@
 // 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 NET_2_0
-
 namespace Microsoft.Build.BuildEngine {
 
        public enum ProjectLoadSettings {
@@ -34,5 +32,3 @@ namespace Microsoft.Build.BuildEngine {
                IgnoreMissingImports
        }
 }
-
-#endif
index a90030c5822477d87bad6fbdb1c17254b0bdacf4..549c7ffe0ac628bcc5f8ea9c61826e12b9c2f85d 100644 (file)
 // 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 NET_2_0
-
 namespace Microsoft.Build.BuildEngine {
        public enum PropertyPosition {
                UseExistingOrCreateAfterLastPropertyGroup,
                UseExistingOrCreateAfterLastImport
        }
 }
-
-#endif
\ No newline at end of file
index 013519807b8be017da7f9900dd084c7d91ee6382..26ab8babb57aa8c616d2ed372033e3d748616c16 100644 (file)
@@ -27,8 +27,6 @@
 // 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 NET_2_0
-
 using System;
 using System.Collections;
 using System.Collections.Generic;
@@ -111,5 +109,3 @@ namespace Microsoft.Build.BuildEngine {
                }
        }
 }
-
-#endif
diff --git a/mcs/class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/SolutionParser.cs b/mcs/class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/SolutionParser.cs
deleted file mode 100644 (file)
index d065142..0000000
+++ /dev/null
@@ -1,63 +0,0 @@
-//
-// SolutionParser.cs: Class that parses the .sln files.
-//
-// Author:
-//   Marek Sieradzki (marek.sieradzki@gmail.com)
-//
-// (C) 2005 Marek Sieradzki
-//
-// 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 NET_2_0
-
-namespace Microsoft.Build.BuildEngine {
-       public class SolutionParser {
-               private string solutionFile;
-       
-               public SolutionParser ()
-               {
-               }
-
-               public string GetProjectRelativePathByGuid (string projectGuid)
-               {
-                       return null;
-               }
-
-               public string GetProjectUniqueNameByGuid (string projectGuid)
-               {
-                       return null;
-               }
-
-               public void ParseSolutionFile ()
-               {
-               }
-
-               public string SolutionFile {
-                       get {
-                               return solutionFile;
-                       }
-                       set {
-                               solutionFile = value;
-                       }
-               }
-       }
-}
-
-#endif
\ No newline at end of file
index 92e369b888b5ba56542aaa6c14f89511f044f252..378348c1f4afbc96463a2a582fa1125a4820578a 100644 (file)
@@ -25,8 +25,6 @@
 // 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 NET_2_0
-
 using System;
 using System.Collections;
 using System.Collections.Generic;
@@ -77,12 +75,19 @@ namespace Microsoft.Build.BuildEngine {
                                        } else if (onErrorFound)
                                                throw new InvalidProjectFileException (
                                                        "The element <OnError> must be last under element <Target>. Found element <Error> instead.");
+#if NET_3_5
+                                       else if (xe.Name == "ItemGroup") {
+                                               //don't blow up for ItemGroups inside Targets in >= 3.5
+                                               // TODO: evaluate them (see https://bugzilla.xamarin.com/show_bug.cgi?id=1862 and test in TargetTest.cs )
+                                               continue;
+                                       }
+#endif
                                        else
                                                buildTasks.Add (new BuildTask (xe, this));
                                }
                        }
                }
-               
+
                [MonoTODO]
                public BuildTask AddNewTask (string taskName)
                {
@@ -99,8 +104,7 @@ namespace Microsoft.Build.BuildEngine {
 
                public IEnumerator GetEnumerator ()
                {
-                       foreach (BuildTask bt in buildTasks)
-                               yield return bt;
+                       return buildTasks.ToArray ().GetEnumerator ();
                }
 
                // FIXME: shouldn't we remove it from XML?
@@ -413,5 +417,3 @@ namespace Microsoft.Build.BuildEngine {
                Skipped
        }
 }
-
-#endif
index b5bc4599fdaf567084c61605456686714338a5c4..28ea4c8c69ce366a569d07b964ac8cc465475331 100644 (file)
@@ -28,8 +28,6 @@
 // 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 NET_2_0
-
 using System;
 using System.IO;
 using System.Collections.Generic;
@@ -268,5 +266,3 @@ namespace Microsoft.Build.BuildEngine {
 
        }
 }
-
-#endif
index c1c65e883e44a6a04418bf45abc66ff124409aee..cec7eb38ed7deb27e518865b95cab51a0ee2be3a 100644 (file)
@@ -25,8 +25,6 @@
 // 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 NET_2_0
-
 using System;
 using System.Collections;
 using System.Collections.Generic;
@@ -128,5 +126,3 @@ namespace Microsoft.Build.BuildEngine {
                }
        }
 }
-
-#endif
index ed85f29e683a9c06471f6935147dd987e079c368..65ed711aed56e5921ea910839ed10a90ed2434d9 100644 (file)
@@ -28,8 +28,6 @@
 // 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 NET_2_0
-
 using System;
 using System.Collections.Generic;
 using System.Xml;
@@ -130,5 +128,3 @@ namespace Microsoft.Build.BuildEngine {
        }
 
 }
-
-#endif
index 1a9ebce4dbe5784da865bd67892884eaf9ef9b2f..dd603207c2e6d6ce621a7a78be24658279bdc990 100644 (file)
@@ -25,8 +25,6 @@
 // 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 NET_2_0
-
 using System;
 using System.Collections.Generic;
 using System.Reflection;
@@ -164,5 +162,3 @@ namespace Microsoft.Build.BuildEngine {
                }
        }
 }
-
-#endif
index 6013888ff872917ca019d41a568856ec638b35fd..335c66b459ac232976876bd4059ad96ea04a1376 100644 (file)
@@ -27,8 +27,6 @@
 // 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 NET_2_0
-
 using System;
 using System.Collections.Generic;
 using System.Collections.Specialized;
@@ -264,5 +262,3 @@ namespace Microsoft.Build.BuildEngine {
                }
        }
 }
-
-#endif
index 5c38a966d646b72cf6dec07895cda7a1e401477b..7a16bee3b5f71cef57edcd17b971f3cef6fa5c94 100644 (file)
@@ -27,8 +27,6 @@
 // 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 NET_2_0
-
 using System;
 
 namespace Microsoft.Build.BuildEngine {
@@ -128,5 +126,3 @@ namespace Microsoft.Build.BuildEngine {
                Invalid,
        }
 }
-
-#endif
index d7955176a4a4c53d9bd41443413c0c06d91ab0ad..5db46fcbfbd5fa6b2c02dc966ca9775f1925198f 100644 (file)
@@ -25,7 +25,6 @@
 // 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 NET_2_0
 using System;
 
 namespace Microsoft.Build.BuildEngine
@@ -50,4 +49,3 @@ namespace Microsoft.Build.BuildEngine
                public string ToolsPath { get; private set; }
        }
 }
-#endif
index 0c332d45d53de18c4e34c7b4bf8c76cb85570baa..aeac9b9deb6aea22c29f46fa241a4384b8f17338 100644 (file)
@@ -25,8 +25,6 @@
 // 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 NET_2_0
-
 using System;
 using System.Collections.Generic;
 using System.Collections;
@@ -96,4 +94,3 @@ namespace Microsoft.Build.BuildEngine
                }
        }
 }
-#endif
index 6f5e106b8e9851c1afd831df1b5c43bcba048998..0ebf85434569888369ae33b0c40398b5355c896c 100644 (file)
@@ -25,8 +25,6 @@
 // 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 NET_2_0
-
 namespace Microsoft.Build.BuildEngine
 {
        public enum ToolsetDefinitionLocations
@@ -36,4 +34,3 @@ namespace Microsoft.Build.BuildEngine
                Registry
        }
 }
-#endif
index fc07678043fc98dc5b70f8d7e21e595e63749f3a..4f059cfb85d374bf55f78b6daec8999af386347d 100644 (file)
@@ -25,8 +25,6 @@
 // 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 NET_2_0
-
 using System;
 using System.Runtime.Serialization;
 using System.Text;
@@ -74,5 +72,3 @@ namespace Microsoft.Build.BuildEngine {
                }
        }
 }
-
-#endif
index c6ef54fd0a62408dc7e84601971d93597b2c159e..141352dafb26428eb1624e40c6fd552387686e52 100644 (file)
@@ -25,8 +25,6 @@
 // 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 NET_2_0
-
 using System;
 using System.IO;
 using System.Xml;
@@ -123,5 +121,3 @@ namespace Microsoft.Build.BuildEngine {
                }
        }
 }
-
-#endif
index 102bdc8d8b7ca4aa76b70182080086c72a87b28a..ae8002177c34e54800d5eda7890d765b6510d41f 100644 (file)
@@ -26,8 +26,6 @@
 // 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 NET_2_0
-
 using System;
 using System.Collections;
 using System.Collections.Generic;
@@ -86,5 +84,3 @@ namespace Microsoft.Build.BuildEngine {
                }
        }
 }
-
-#endif
index 235dd2eda238838aa2fc84a6c64b2fdfe7570e7c..4e64ebdba912cbb7a065851dff97c05415ab8a29 100644 (file)
@@ -28,8 +28,6 @@
 // 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 NET_2_0
-
 using Mono.XBuild.Utilities;
 
 namespace Microsoft.Build.BuildEngine {
@@ -48,4 +46,3 @@ namespace Microsoft.Build.BuildEngine {
 
 }
 
-#endif
index 630aba909e09abdc501a92a910b52140a5c6da74..d60bd5be68f3ac3b4b1f1065b26d1aa7642660ba 100644 (file)
 // 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 NET_2_0
-
 namespace Microsoft.Build.BuildEngine {
        public delegate void WriteHandler (string message);
 }
-
-#endif
\ No newline at end of file
diff --git a/mcs/class/Microsoft.Build.Engine/Microsoft.Build.Engine-net_4_0.sln b/mcs/class/Microsoft.Build.Engine/Microsoft.Build.Engine-net_4_0.sln
new file mode 100644 (file)
index 0000000..6f9b584
--- /dev/null
@@ -0,0 +1,26 @@
+\r
+Microsoft Visual Studio Solution File, Format Version 11.00\r
+# Visual Studio 2010\r
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Microsoft.Build.Engine-net_4_0", "Microsoft.Build.Engine-net_4_0.csproj", "{155AEF28-C81F-405D-9072-9D52780E3E70}"\r
+EndProject\r
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Microsoft.Build.Engine-tests-net_4_0", "Microsoft.Build.Engine-tests-net_4_0.csproj", "{155AEF28-C81F-405D-9072-9D52780E3E71}"\r
+EndProject\r
+Global\r
+       GlobalSection(SolutionConfigurationPlatforms) = preSolution\r
+               Debug|Any CPU = Debug|Any CPU\r
+               Release|Any CPU = Release|Any CPU\r
+       EndGlobalSection\r
+       GlobalSection(ProjectConfigurationPlatforms) = postSolution\r
+               {155AEF28-C81F-405D-9072-9D52780E3E70}.Debug|Any CPU.ActiveCfg = Debug|Any CPU\r
+               {155AEF28-C81F-405D-9072-9D52780E3E71}.Debug|Any CPU.ActiveCfg = Debug|Any CPU\r
+               {155AEF28-C81F-405D-9072-9D52780E3E70}.Debug|Any CPU.Build.0 = Debug|Any CPU\r
+               {155AEF28-C81F-405D-9072-9D52780E3E71}.Debug|Any CPU.Build.0 = Debug|Any CPU\r
+               {155AEF28-C81F-405D-9072-9D52780E3E70}.Release|Any CPU.ActiveCfg = Release|Any CPU\r
+               {155AEF28-C81F-405D-9072-9D52780E3E71}.Release|Any CPU.ActiveCfg = Release|Any CPU\r
+               {155AEF28-C81F-405D-9072-9D52780E3E70}.Release|Any CPU.Build.0 = Release|Any CPU\r
+               {155AEF28-C81F-405D-9072-9D52780E3E71}.Release|Any CPU.Build.0 = Release|Any CPU\r
+       EndGlobalSection\r
+       GlobalSection(MonoDevelopProperties) = preSolution\r
+               StartupItem = Microsoft.Build.Engine-net_4_0.csproj\r
+       EndGlobalSection\r
+EndGlobal\r
diff --git a/mcs/class/Microsoft.Build.Engine/Microsoft.Build.Engine.mdp b/mcs/class/Microsoft.Build.Engine/Microsoft.Build.Engine.mdp
deleted file mode 100644 (file)
index 742c58b..0000000
+++ /dev/null
@@ -1,96 +0,0 @@
-<Project name="Microsoft.Build.Engine" fileversion="2.0" language="C#" clr-version="Net_2_0" ctype="DotNetProject">
-  <Configurations active="Debug">
-    <Configuration name="Debug" ctype="DotNetProjectConfiguration">
-      <Output directory="./bin/Debug" assembly="Microsoft.Build.Engine" />
-      <Build debugmode="True" target="Library" />
-      <Execution runwithwarnings="True" consolepause="True" runtime="MsNet" clr-version="Net_2_0" />
-      <CodeGeneration compiler="Csc" warninglevel="4" optimize="True" unsafecodeallowed="False" generateoverflowchecks="True" mainclass="" generatexmldocumentation="False" ctype="CSharpCompilerParameters" />
-    </Configuration>
-    <Configuration name="Release" ctype="DotNetProjectConfiguration">
-      <Output directory="./bin/Release" assembly="Microsoft.Build.Engine" />
-      <Build debugmode="False" target="Library" />
-      <Execution runwithwarnings="True" consolepause="True" runtime="MsNet" clr-version="Net_2_0" />
-      <CodeGeneration compiler="Csc" warninglevel="4" optimize="True" unsafecodeallowed="False" generateoverflowchecks="True" mainclass="" generatexmldocumentation="False" ctype="CSharpCompilerParameters" />
-    </Configuration>
-  </Configurations>
-  <DeploymentInformation strategy="File">
-    <excludeFiles />
-  </DeploymentInformation>
-  <Contents>
-    <File name="./Microsoft.Build.BuildEngine/BatchingImpl.cs" subtype="Code" buildaction="Compile" />
-    <File name="./Microsoft.Build.BuildEngine/BuildChoose.cs" subtype="Code" buildaction="Compile" />
-    <File name="./Microsoft.Build.BuildEngine/BuildEngine.cs" subtype="Code" buildaction="Compile" />
-    <File name="./Microsoft.Build.BuildEngine/BuildItem.cs" subtype="Code" buildaction="Compile" />
-    <File name="./Microsoft.Build.BuildEngine/BuildItemGroup.cs" subtype="Code" buildaction="Compile" />
-    <File name="./Microsoft.Build.BuildEngine/BuildItemGroupCollection.cs" subtype="Code" buildaction="Compile" />
-    <File name="./Microsoft.Build.BuildEngine/BuildProperty.cs" subtype="Code" buildaction="Compile" />
-    <File name="./Microsoft.Build.BuildEngine/BuildPropertyGroup.cs" subtype="Code" buildaction="Compile" />
-    <File name="./Microsoft.Build.BuildEngine/BuildPropertyGroupCollection.cs" subtype="Code" buildaction="Compile" />
-    <File name="./Microsoft.Build.BuildEngine/BuildSettings.cs" subtype="Code" buildaction="Compile" />
-    <File name="./Microsoft.Build.BuildEngine/BuildWhen.cs" subtype="Code" buildaction="Compile" />
-    <File name="./Microsoft.Build.BuildEngine/ConsoleLogger.cs" subtype="Code" buildaction="Compile" />
-    <File name="./Microsoft.Build.BuildEngine/Engine.cs" subtype="Code" buildaction="Compile" />
-    <File name="./Microsoft.Build.BuildEngine/EventSource.cs" subtype="Code" buildaction="Compile" />
-    <File name="./Microsoft.Build.BuildEngine/FileLogger.cs" subtype="Code" buildaction="Compile" />
-    <File name="./Microsoft.Build.BuildEngine/GlobalEngineAccessor.cs" subtype="Code" buildaction="Compile" />
-    <File name="./Microsoft.Build.BuildEngine/GroupingCollection.cs" subtype="Code" buildaction="Compile" />
-    <File name="./Microsoft.Build.BuildEngine/HostLogger.cs" subtype="Code" buildaction="Compile" />
-    <File name="./Microsoft.Build.BuildEngine/IBuildItem.cs" subtype="Code" buildaction="Compile" />
-    <File name="./Microsoft.Build.BuildEngine/IBuildItemGroup.cs" subtype="Code" buildaction="Compile" />
-    <File name="./Microsoft.Build.BuildEngine/IBuildItemGroupCollection.cs" subtype="Code" buildaction="Compile" />
-    <File name="./Microsoft.Build.BuildEngine/IBuildProperty.cs" subtype="Code" buildaction="Compile" />
-    <File name="./Microsoft.Build.BuildEngine/IBuildPropertyGroup.cs" subtype="Code" buildaction="Compile" />
-    <File name="./Microsoft.Build.BuildEngine/IBuildPropertyGroupCollection.cs" subtype="Code" buildaction="Compile" />
-    <File name="./Microsoft.Build.BuildEngine/ICultureStringUtilities.cs" subtype="Code" buildaction="Compile" />
-    <File name="./Microsoft.Build.BuildEngine/IEngine.cs" subtype="Code" buildaction="Compile" />
-    <File name="./Microsoft.Build.BuildEngine/IGlobalEngineAccessor.cs" subtype="Code" buildaction="Compile" />
-    <File name="./Microsoft.Build.BuildEngine/IHostFeedback.cs" subtype="Code" buildaction="Compile" />
-    <File name="./Microsoft.Build.BuildEngine/IHostLogger.cs" subtype="Code" buildaction="Compile" />
-    <File name="./Microsoft.Build.BuildEngine/ILangSecurityLevelChecker.cs" subtype="Code" buildaction="Compile" />
-    <File name="./Microsoft.Build.BuildEngine/ImportedProject.cs" subtype="Code" buildaction="Compile" />
-    <File name="./Microsoft.Build.BuildEngine/InternalLoggerException.cs" subtype="Code" buildaction="Compile" />
-    <File name="./Microsoft.Build.BuildEngine/InvalidProjectFileException.cs" subtype="Code" buildaction="Compile" />
-    <File name="./Microsoft.Build.BuildEngine/IProject.cs" subtype="Code" buildaction="Compile" />
-    <File name="./Microsoft.Build.BuildEngine/ITarget.cs" subtype="Code" buildaction="Compile" />
-    <File name="./Microsoft.Build.BuildEngine/ITargetCollection.cs" subtype="Code" buildaction="Compile" />
-    <File name="./Microsoft.Build.BuildEngine/ITaskElement.cs" subtype="Code" buildaction="Compile" />
-    <File name="./Microsoft.Build.BuildEngine/ItemPropertyGroupingBase.cs" subtype="Code" buildaction="Compile" />
-    <File name="./Microsoft.Build.BuildEngine/MonoTODOAttribute.cs" subtype="Code" buildaction="Compile" />
-    <File name="./Microsoft.Build.BuildEngine/ProcessingPass.cs" subtype="Code" buildaction="Compile" />
-    <File name="./Microsoft.Build.BuildEngine/Project.cs" subtype="Code" buildaction="Compile" />
-    <File name="./Microsoft.Build.BuildEngine/ProjectFileEncoding.cs" subtype="Code" buildaction="Compile" />
-    <File name="./Microsoft.Build.BuildEngine/PropertyPosition.cs" subtype="Code" buildaction="Compile" />
-    <File name="./Microsoft.Build.BuildEngine/SolutionParser.cs" subtype="Code" buildaction="Compile" />
-    <File name="./Microsoft.Build.BuildEngine/Target.cs" subtype="Code" buildaction="Compile" />
-    <File name="./Microsoft.Build.BuildEngine/TargetCollection.cs" subtype="Code" buildaction="Compile" />
-    <File name="./Microsoft.Build.BuildEngine/TaskDatabase.cs" subtype="Code" buildaction="Compile" />
-    <File name="./Microsoft.Build.BuildEngine/TaskElement.cs" subtype="Code" buildaction="Compile" />
-    <File name="./Microsoft.Build.BuildEngine/TaskEngineAssemblyResolver.cs" subtype="Code" buildaction="Compile" />
-    <File name="./Microsoft.Build.BuildEngine/Utilities.cs" subtype="Code" buildaction="Compile" />
-    <File name="./Microsoft.Build.BuildEngine/WriteHandler.cs" subtype="Code" buildaction="Compile" />
-    <File name="./Microsoft.Build.BuildEngine/Xml.cs" subtype="Code" buildaction="Compile" />
-    <File name="./Microsoft.Build.BuildEngine/Expression.cs" subtype="Code" buildaction="Compile" />
-    <File name="./Microsoft.Build.BuildEngine/PropertyReference.cs" subtype="Code" buildaction="Compile" />
-    <File name="./Microsoft.Build.BuildEngine/ItemReference.cs" subtype="Code" buildaction="Compile" />
-    <File name="./Microsoft.Build.BuildEngine/MetadataReference.cs" subtype="Code" buildaction="Compile" />
-    <File name="./Microsoft.Build.BuildEngine/ChangeType.cs" subtype="Code" buildaction="Compile" />
-    <File name="./Microsoft.Build.BuildEngine/DirectoryScanner.cs" subtype="Code" buildaction="Compile" />
-    <File name="./Assembly/AssemblyInfo.cs" subtype="Code" buildaction="Compile" />
-    <File name="./Microsoft.Build.BuildEngine/BuildTask.cs" subtype="Code" buildaction="Compile" />
-    <File name="./Microsoft.Build.BuildEngine/ChangeLog" subtype="Code" buildaction="Nothing" />
-    <File name="./Microsoft.Build.BuildEngine/ColorResetter.cs" subtype="Code" buildaction="Compile" />
-    <File name="./Microsoft.Build.BuildEngine/ColorSetter.cs" subtype="Code" buildaction="Compile" />
-    <File name="./Microsoft.Build.BuildEngine/Import.cs" subtype="Code" buildaction="Compile" />
-    <File name="./Microsoft.Build.BuildEngine/ImportCollection.cs" subtype="Code" buildaction="Compile" />
-    <File name="./Microsoft.Build.BuildEngine/TaskEngine.cs" subtype="Code" buildaction="Compile" />
-    <File name="./Microsoft.Build.BuildEngine/UsingTask.cs" subtype="Code" buildaction="Compile" />
-    <File name="./Microsoft.Build.BuildEngine/UsingTaskCollection.cs" subtype="Code" buildaction="Compile" />
-    <File name="./Microsoft.Build.BuildEngine/conditions.jay" subtype="Code" buildaction="Exclude" />
-  </Contents>
-  <References>
-    <ProjectReference type="Gac" localcopy="True" refto="Microsoft.Build.Framework, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
-    <ProjectReference type="Gac" localcopy="True" refto="Microsoft.Build.Utilities, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
-    <ProjectReference type="Gac" localcopy="True" refto="System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
-    <ProjectReference type="Gac" localcopy="True" refto="System.Xml, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
-  </References>
-</Project>
\ No newline at end of file
diff --git a/mcs/class/Microsoft.Build.Engine/Microsoft.Build.Engine.mds b/mcs/class/Microsoft.Build.Engine/Microsoft.Build.Engine.mds
deleted file mode 100644 (file)
index e526cd5..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-<Combine name="Microsoft.Build.Engine" fileversion="2.0">
-  <Configurations active="Debug">
-    <Configuration name="Debug" ctype="CombineConfiguration">
-      <Entry build="True" name="Microsoft.Build.Engine" configuration="Debug" />
-    </Configuration>
-    <Configuration name="Release" ctype="CombineConfiguration">
-      <Entry build="True" name="Microsoft.Build.Engine" configuration="Debug" />
-    </Configuration>
-  </Configurations>
-  <StartMode startupentry="Microsoft.Build.Engine" single="True">
-    <Execute type="None" entry="Microsoft.Build.Engine" />
-  </StartMode>
-  <Entries>
-    <Entry filename="./Microsoft.Build.Engine.mdp" />
-  </Entries>
-</Combine>
\ No newline at end of file
index ae0f18e78c914a7692c55064c16fb46d162fb7da..9a40fd342a8f714d53625c640953318592a6b12e 100644 (file)
@@ -1,10 +1,12 @@
 //
 // TargetTest.cs
 //
-// Author:
+// Authors:
 //   Marek Sieradzki (marek.sieradzki@gmail.com)
+//   Andres G. Aragoneses (knocte@gmail.com)
 //
 // (C) 2006 Marek Sieradzki
+// (C) 2012 Andres G. Aragoneses
 //
 // Permission is hereby granted, free of charge, to any person obtaining
 // a copy of this software and associated documentation files (the
@@ -165,6 +167,51 @@ namespace MonoTests.Microsoft.Build.BuildEngine {
                        Assert.IsFalse (e.MoveNext (), "A3");
                }
 
+               [Test]
+               public void TestOutOfRangeElementsOfTheEnumerator()
+               {
+                       string documentString =
+                               @"
+                               <Project xmlns='http://schemas.microsoft.com/developer/msbuild/2003'>
+                                       <Target Name='A'>
+                                               <Message Text='text' />
+                                       </Target>
+                               </Project>";
+
+                       engine = new Engine (Consts.BinPath);
+
+                       project = engine.CreateNewProject ();
+                       project.LoadXml (documentString);
+
+                       Assert.IsFalse (project.Targets == null, "A1");
+                       Assert.AreEqual (1, project.Targets.Count, "A2");
+
+                       Target target = project.Targets ["A"];
+                       Assert.IsFalse (target == null, "A3");
+
+                       IEnumerator e = target.GetEnumerator ();
+
+                       bool thrown = false;
+                       try {
+                               var name = ((BuildTask)e.Current).Name;
+                       } catch (InvalidOperationException) { // "Enumeration has not started. Call MoveNext"
+                               thrown = true;
+                       }
+                       if (!thrown)
+                               Assert.Fail ("A4: Should have thrown IOE");
+
+
+                       Assert.AreEqual (true, e.MoveNext (), "A5");
+                       Assert.AreEqual ("Message", ((BuildTask)e.Current).Name, "A6");
+                       Assert.AreEqual (false, e.MoveNext (), "A7");
+                       try {
+                               var name = ((BuildTask) e.Current).Name;
+                       } catch (InvalidOperationException) { //"Enumeration already finished."
+                               return;
+                       }
+                       Assert.Fail ("A8: Should have thrown IOE, because there's only one buidTask");
+               }
+
                [Test]
                [ExpectedException (typeof (InvalidProjectFileException))]
                public void TestOnError1 ()
@@ -301,6 +348,79 @@ namespace MonoTests.Microsoft.Build.BuildEngine {
                        }
                }
 
+#if NET_3_5
+               [Test]
+               public void BuildProjectWithItemGroupInsideTarget()
+               {
+                       ItemGroupInsideATarget ();
+               }
+
+               private MonoTests.Microsoft.Build.Tasks.TestMessageLogger ItemGroupInsideATarget() {
+                       var engine = new Engine(Consts.BinPath);
+                       var project = engine.CreateNewProject();
+                       var projectXml = GetProjectXmlWithItemGroupInsideATarget ();
+                       project.LoadXml(projectXml);
+
+                       MonoTests.Microsoft.Build.Tasks.TestMessageLogger logger =
+                               new MonoTests.Microsoft.Build.Tasks.TestMessageLogger ();
+                       engine.RegisterLogger (logger);
+
+                       bool result = project.Build("Main");
+                       if (!result)
+                       {
+                               logger.DumpMessages ();
+                               Assert.Fail("Build failed");
+                       }
+
+                       return logger;
+               }
+
+               private string GetProjectXmlWithItemGroupInsideATarget ()
+               {
+                       return
+                               @"<Project ToolsVersion=""4.0"" xmlns=""http://schemas.microsoft.com/developer/msbuild/2003"">
+                                       <ItemGroup>
+                                               <fruit Include=""apple""/>
+                                               <fruit Include=""apricot""/>
+                                       </ItemGroup>
+
+                                       <Target Name=""Main"">
+                                               <ItemGroup>
+                                                       <fruit Include=""raspberry"" />
+                                               </ItemGroup>
+                                               <Message Text=""%(fruit.Identity)""/>
+                                       </Target>
+                               </Project>";
+               }
+
+               [Test]
+               [Category ("NotWorking")] //https://bugzilla.xamarin.com/show_bug.cgi?id=1862
+               public void BuildProjectOutputWithItemGroupInsideTarget()
+               {
+                       var logger = ItemGroupInsideATarget ();
+
+                       try
+                       {
+                               Assert.AreEqual(3, logger.NormalMessageCount, "Expected number of messages");
+                               logger.CheckLoggedMessageHead("apple", "A1");
+                               logger.CheckLoggedMessageHead("apricot", "A2");
+                               logger.CheckLoggedMessageHead("raspberry", "A3");
+                               Assert.AreEqual(0, logger.NormalMessageCount, "Extra messages found");
+
+                               Assert.AreEqual(1, logger.TargetStarted, "TargetStarted count");
+                               Assert.AreEqual(1, logger.TargetFinished, "TargetFinished count");
+                               Assert.AreEqual(3, logger.TaskStarted, "TaskStarted count");
+                               Assert.AreEqual(3, logger.TaskFinished, "TaskFinished count");
+
+                       }
+                       catch (AssertionException)
+                       {
+                               logger.DumpMessages();
+                               throw;
+                       }
+               }
+#endif
+
                [Test]
                public void TestTargetOutputsIncludingMetadata ()
                {
index 1c7463e50c1ee2abba3c87cc9423ec443f6fd856..187ca0c31f0dc9890acb51ec1303678c1816cd99 100644 (file)
@@ -38,7 +38,8 @@ namespace Microsoft.Build.Tasks {
                string[]        additionalMetadata;
                ITaskItem[]     exclude;
                ITaskItem[]     include;
-       
+               bool            preserveExistingMetadata;
+
                public CreateItem ()
                {
                }
@@ -65,8 +66,12 @@ namespace Microsoft.Build.Tasks {
                                foreach (string metadata in AdditionalMetadata) {
                                        //a=1
                                        string [] parts = metadata.Split (new char [] {'='}, 2, StringSplitOptions.RemoveEmptyEntries);
-                                       if (parts.Length == 2)
-                                               matchedItem.SetMetadata (parts [0].Trim (), parts [1].Trim ());
+                                       if (parts.Length == 2) {
+                                               string name = parts [0].Trim ();
+                                               string oldValue = matchedItem.GetMetadata (name);
+                                               if (!preserveExistingMetadata || string.IsNullOrEmpty (oldValue))
+                                                       matchedItem.SetMetadata (name, parts [1].Trim ());
+                                       }
                                }
                        }
 
@@ -90,6 +95,13 @@ namespace Microsoft.Build.Tasks {
                        get { return include; }
                        set { include = value; }
                }
+
+#if NET_3_5
+               public bool PreserveExistingMetadata {
+                       get { return preserveExistingMetadata; }
+                       set { preserveExistingMetadata = value; }
+               }
+#endif
        }
 }
 
index 9f635b887fe8e43c9c314efcdcef00cc12afd57a..51495606e0d41ff1042e5c50280f3b9b6f13a364 100644 (file)
@@ -25,8 +25,6 @@
 // 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 NET_2_0
-
 using System;
 using System.Collections;
 using System.Text;
@@ -227,5 +225,3 @@ namespace Mono.XBuild.Utilities {
        }
 
 }
-
-#endif
index 9ce022af7c791a35a72577ed608542d6df2d89a0..9547b0d663f996d006628c379cd5ffc6b98b71e2 100644 (file)
@@ -25,8 +25,6 @@
 // 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 NET_2_0
-
 using System;
 using System.Collections;
 using System.Collections.Specialized;
@@ -181,5 +179,3 @@ namespace Mono.XBuild.Utilities {
                }
        }
 }
-
-#endif
index 998e629a91224483dd48ce1d0b60976c80debb03..bd0167efbf026ec84cb9d7125973fc78d5f0f85b 100644 (file)
@@ -85,10 +85,18 @@ namespace MonoTests.EvaluatorTest
                }
 
                [Test]
-               public void GG ()
+               public void MoreThanOneType ()
                {
                        Evaluator.Run ("public class D { int x; public int X { get { return x; } set { x = value;} } };");
                        Evaluator.Run ("public class C { public int Speed{get;set;}};");
                }
+
+               [Test]
+               public void StructType ()
+               {
+                       Evaluator.Run ("class C { }");
+                       Evaluator.Run ("struct B { public string foo; public int bar; }");
+                       Evaluator.Run ("B aStruct = new B { foo = \"foo\", bar = 1 };");
+               }
        }
 }
\ No newline at end of file
index 6fe85ab37cd9c4854f371f2303d5d587b35cf542..78d85915b55018dafc6751af5aa5113155cf9efd 100644 (file)
@@ -1,4 +1,4 @@
-<?xml version="1.0" encoding="utf-8"?>\r
+<?xml version="1.0" encoding="utf-8"?>\r
 <Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
   <PropertyGroup>\r
     <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
@@ -10,7 +10,7 @@
     <NoWarn>1699</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_5</OutputPath>\r
     <NoStdLib>true</NoStdLib>\r
-\r
+    \r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
     <RootNamespace></RootNamespace>\r
     <AssemblyName>Mono.CodeContracts</AssemblyName>\r
   </PropertyGroup>\r
   <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
   <ItemGroup>\r
-    <Compile Include="..\..\build\common\Consts.cs" />\r
-    <Compile Include="Assembly\AssemblyInfo.cs" />\r
-    <Compile Include="Mono.CodeContracts.Rewrite\AssemblyRef.cs" />\r
-    <Compile Include="Mono.CodeContracts.Rewrite\ConditionTextExtractor.cs" />\r
-    <Compile Include="Mono.CodeContracts.Rewrite\ContractRequiresInfo.cs" />\r
-    <Compile Include="Mono.CodeContracts.Rewrite\ContractsRuntime.cs" />\r
-    <Compile Include="Mono.CodeContracts.Rewrite\Decompile.cs" />\r
-    <Compile Include="Mono.CodeContracts.Rewrite\ExprGen.cs" />\r
-    <Compile Include="Mono.CodeContracts.Rewrite\MethodInfo.cs" />\r
-    <Compile Include="Mono.CodeContracts.Rewrite\PerformRewrite.cs" />\r
-    <Compile Include="Mono.CodeContracts.Rewrite\Rewriter.cs" />\r
-    <Compile Include="Mono.CodeContracts.Rewrite\RewriterOptions.cs" />\r
-    <Compile Include="Mono.CodeContracts.Rewrite\RewriterResults.cs" />\r
-    <Compile Include="Mono.CodeContracts.Rewrite\TransformContractsVisitor.cs" />\r
-    <Compile Include="Mono.CodeContracts.Rewrite.Ast\ExprAdd.cs" />\r
-    <Compile Include="Mono.CodeContracts.Rewrite.Ast\ExprBinaryOpArithmetic.cs" />\r
-    <Compile Include="Mono.CodeContracts.Rewrite.Ast\ExprBinaryOpComparison.cs" />\r
-    <Compile Include="Mono.CodeContracts.Rewrite.Ast\ExprBinaryOp.cs" />\r
-    <Compile Include="Mono.CodeContracts.Rewrite.Ast\ExprBlock.cs" />\r
-    <Compile Include="Mono.CodeContracts.Rewrite.Ast\ExprBox.cs" />\r
-    <Compile Include="Mono.CodeContracts.Rewrite.Ast\ExprCall.cs" />\r
-    <Compile Include="Mono.CodeContracts.Rewrite.Ast\ExprCompareEqual.cs" />\r
-    <Compile Include="Mono.CodeContracts.Rewrite.Ast\ExprCompareGreaterThan.cs" />\r
-    <Compile Include="Mono.CodeContracts.Rewrite.Ast\ExprCompareLessThan.cs" />\r
-    <Compile Include="Mono.CodeContracts.Rewrite.Ast\ExprConv.cs" />\r
-    <Compile Include="Mono.CodeContracts.Rewrite.Ast\Expr.cs" />\r
-    <Compile Include="Mono.CodeContracts.Rewrite.Ast\ExprLoadArg.cs" />\r
-    <Compile Include="Mono.CodeContracts.Rewrite.Ast\ExprLoadConstant.cs" />\r
-    <Compile Include="Mono.CodeContracts.Rewrite.Ast\ExprNop.cs" />\r
-    <Compile Include="Mono.CodeContracts.Rewrite.Ast\ExprReturn.cs" />\r
-    <Compile Include="Mono.CodeContracts.Rewrite.Ast\ExprSub.cs" />\r
-    <Compile Include="Mono.CodeContracts.Rewrite.Ast\ExprType.cs" />\r
-    <Compile Include="Mono.CodeContracts.Rewrite.Ast\Sn.cs" />\r
-    <Compile Include="Mono.CodeContracts.Rewrite.AstVisitors\CompileVisitor.cs" />\r
-    <Compile Include="Mono.CodeContracts.Rewrite.AstVisitors\ExprVisitor.cs" />\r
-    <Compile Include="Mono.CodeContracts.Rewrite.AstVisitors\InstructionExtentVisitor.cs" />\r
-    <Compile Include="Mono.CodeContracts.Rewrite.AstVisitors\SourcePositionVisitor.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.Drivers\AnalysisDriver.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.Drivers\BasicAnalysisDriver.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.Drivers\BasicMethodDriver.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.Drivers\CodeContractsAnalysisDriver.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.Drivers\IBasicAnalysisDriver.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.Drivers\IBasicMethodDriver.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.Drivers\IMethodAnalysis.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.Drivers\IMethodAnalysisFixPoint.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.Drivers\IMethodDriver.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.Drivers\IMethodResult.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.ExpressionAnalysis.Decoding\FullExpressionDecoder.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.ExpressionAnalysis.Decoding\IFullExpressionDecoder.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.ExpressionAnalysis.Decoding\QueryVisitor.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.ExpressionAnalysis.Decoding\VisitorForIsBinaryExpression.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.ExpressionAnalysis.Decoding\VisitorForIsInst.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.ExpressionAnalysis.Decoding\VisitorForIsNull.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.ExpressionAnalysis.Decoding\VisitorForIsUnaryExpression.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.ExpressionAnalysis.Decoding\VisitorForSizeOf.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.ExpressionAnalysis.Decoding\VisitorForUnderlyingVariable.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.ExpressionAnalysis.Decoding\VisitorForValueOf.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.ExpressionAnalysis.Decoding\VisitorForVariable.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.ExpressionAnalysis.Decoding\VisitorForVariablesIn.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.ExpressionAnalysis.Expressions\BinaryExpr.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.ExpressionAnalysis.Expressions\ConstExpr.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.ExpressionAnalysis.Expressions\Expr.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.ExpressionAnalysis.Expressions\IsInstExpr.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.ExpressionAnalysis.Expressions\NullExpr.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.ExpressionAnalysis.Expressions\SizeOfExpr.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.ExpressionAnalysis.Expressions\UnaryExpr.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.ExpressionAnalysis\AnalysisDecoder.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.ExpressionAnalysis\AssumeDecoder.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.ExpressionAnalysis\ExprDomain.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.ExpressionAnalysis\ExpressionAnalysisFacade.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.ExpressionAnalysis\ExpressionDecoder.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.ExpressionAnalysis\ExpressionDecoderAdapter.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.ExpressionAnalysis\ExpressionPrinterFactory.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.ExpressionAnalysis\ILDecoderAdapter.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.ExpressionAnalysis\ValueAnalysis.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.HeapAnalysis.Paths\AccessPathFilter.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.HeapAnalysis.Paths\IVisibilityCheck.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.HeapAnalysis.Paths\MethodCallPathElement.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.HeapAnalysis.Paths\ParameterPathElement.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.HeapAnalysis.Paths\PathElement.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.HeapAnalysis.Paths\PathElementBase.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.HeapAnalysis.Paths\PathElement`1.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.HeapAnalysis.Paths\PathExtensions.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.HeapAnalysis.Paths\SpecialPathElement.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.HeapAnalysis.Paths\SpecialPathElementKind.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.HeapAnalysis.SymbolicGraph\AbstractDomainUpdate.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.HeapAnalysis.SymbolicGraph\EdgeUpdate.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.HeapAnalysis.SymbolicGraph\EliminateEdgeUpdate.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.HeapAnalysis.SymbolicGraph\EqualityPair.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.HeapAnalysis.SymbolicGraph\EqualityUpdate.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.HeapAnalysis.SymbolicGraph\IMergeInfo.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.HeapAnalysis.SymbolicGraph\MergeInfo.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.HeapAnalysis.SymbolicGraph\MultiEdge.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.HeapAnalysis.SymbolicGraph\MultiEdgeUpdate.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.HeapAnalysis.SymbolicGraph\SymGraph.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.HeapAnalysis.SymbolicGraph\SymGraphTerm.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.HeapAnalysis.SymbolicGraph\Update.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.HeapAnalysis\AbstractType.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.HeapAnalysis\AnalysisDecoder.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.HeapAnalysis\Domain.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.HeapAnalysis\FunctionsTable.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.HeapAnalysis\HeapAnalysis.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.HeapAnalysis\IAbstractDomainForEGraph.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.HeapAnalysis\IConstantInfo.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.HeapAnalysis\ISymGraph.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.HeapAnalysis\LabeledSymbol.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.HeapAnalysis\MethodWrapper.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.HeapAnalysis\ParameterWrapper.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.HeapAnalysis\StackToSymbolicAdapter.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.HeapAnalysis\SymbolicValue.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.HeapAnalysis\SymFunction.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.HeapAnalysis\SymValue.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.HeapAnalysis\TypeCache.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.HeapAnalysis\ValueContextProvider.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.HeapAnalysis\ValueDecoder.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.HeapAnalysis\Wrapper.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.NonNull\Analysis.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.NonNull\NonNullDomain.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.NonNull\ExpressionAssertDischarger.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.NonNull\ExpressionAssumeDecoder.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.NonNull\NonNullAnalysisFacade.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.Numerical\AbstractInterpretationException.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.Numerical\Analysers.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.Numerical\Analysis.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.Numerical\Analysis.GenericValueAnalysis.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.Numerical\Analysis.ConstantEvaluator.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.Numerical\Analysis.GenericNumericalAnalysis.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.Numerical\BoxedExpressionDecoder.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.Numerical\BoxedExpressionEncoder.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.Numerical\BoxedVariable.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.Numerical\Counter.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.Numerical\DisInterval.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.Numerical\DisIntervalAssumer.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.Numerical\DisIntervalContext.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.Numerical\ConstToIntervalEvaluator.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.Numerical\DisIntervalEnvironment.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.Numerical\EvaluateExpressionVisitor.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.Numerical\ExpressionType.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.Numerical\GetThresholdVisitor.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.Numerical\IExpressionDecoder.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.Numerical\IExpressionEncoder.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.Numerical\IIntervalEnvironment.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.Numerical\IntervalAssumer.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.Numerical\IntervalContext.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.Numerical\IntervalContextBase.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.Numerical\IntervalEnvironment.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.Numerical\IntervalInference.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.Numerical\IntervalRationalAssumerBase.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.Numerical\IntervalRationalContextBase.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.Numerical\IntervalAssumeFalseVisitor.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.Numerical\IntervalAssumeTrueVisitor.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.Numerical\IntervalAssumerBase.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.Numerical\LongToIntegerConstantEvaluator.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.Numerical\EvaluateArithmeticWithOverflow.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.Numerical\ExpressionOperator.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.Numerical\ExpressionViaStringComparer.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.Numerical\ConstantEvaluatorVisitor.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.Numerical\GenericExpressionVisitor.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.Numerical\GenericTypeExpressionVisitor.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.Numerical\IEnvironmentDomain.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.Numerical\Interval.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.Numerical\IntervalBase.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.Numerical\IntervalEnvironmentBase.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.Numerical\Monomial.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.Numerical\ObjectExtensions.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.Numerical\Polynomial.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.Numerical\Rational.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.Numerical\AssumeFalseVisitor.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.Numerical\AssumeTrueVisitor.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.Numerical\RationalThreshold.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.Numerical\Threshold.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.Numerical\TresholdDB.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.Numerical\ValueExpressionDecoder.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.StackAnalysis\APCMap.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.StackAnalysis\SequenceGenerator.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.StackAnalysis\StackDecoder.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.StackAnalysis\StackDepthFactory.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.StackAnalysis\StackDepthProvider.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.StackAnalysis\StackInfo.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis.StackAnalysis\StackInfo`1.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis\CodeLayer.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis\CodeLayerFactory.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis\ICodeLayer.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis\IExpressionContext.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis\IExpressionContextProvider.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis\ILPrinter.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis\IMethodContext.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis\IMethodContextProvider.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis\IStackContext.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis\IStackContextProvider.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis\IValueContext.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis\IValueContextProvider.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Analysis\PrinterFactory.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.AST.Visitors\CodeVisitor.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.AST.Visitors\DefaultNodeVisitor.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.AST.Visitors\IAggregateVisitor.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.AST.Visitors\ICodeConsumer.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.AST.Visitors\IExpressionILVisitor.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.AST.Visitors\IILVisitor.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.AST.Visitors\ILVisitorBase.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.AST.Visitors\IMethodCodeConsumer.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.AST.Visitors\ISymbolicExpressionVisitor.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.AST.Visitors\ISyntheticILVisitor.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.AST.Visitors\NodeInspector.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.AST.Visitors\NodeVisitor.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.AST.Visitors\ValueCodeVisitor.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.AST\ArrayTypeNode.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.AST\AssemblyNode.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.AST\AssignmentStatement.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.AST\BinaryExpression.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.AST\BinaryOperator.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.AST\Block.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.AST\BlockExpression.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.AST\BodyParser.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.AST\Branch.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.AST\CatchFilter.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.AST\Class.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.AST\Construct.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.AST\CoreSystemTypes.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.AST\EndFinally.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.AST\Ensures.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.AST\ExceptionHandler.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.AST\Expression.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.AST\ExpressionStatement.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.AST\FaultHandler.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.AST\Field.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.AST\Literal.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.AST\Local.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.AST\Member.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.AST\MemberBinding.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.AST\Method.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.AST\MethodCall.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.AST\MethodContract.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.AST\MethodContractElement.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.AST\Module.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.AST\NaryExpression.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.AST\Node.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.AST\NodeType.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.AST\OperatorExtensions.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.AST\Parameter.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.AST\Property.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.AST\Reference.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.AST\Requires.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.AST\Return.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.AST\Statement.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.AST\This.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.AST\TypeNode.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.AST\UnaryExpression.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.AST\UnaryOperator.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.AST\Variable.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.ContractExtraction\ContractExtractor.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.ContractExtraction\ContractNodes.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.ContractExtraction\GatherLocals.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.ContractExtraction\HelperMethods.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.ContractExtraction\RepresentationForAttribute.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.ControlFlow.Blocks\AssumeBlock.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.ControlFlow.Blocks\BlockBase.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.ControlFlow.Blocks\BlockWithLabels.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.ControlFlow.Blocks\CatchFilterEntryBlock.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.ControlFlow.Blocks\EnsuresBlock.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.ControlFlow.Blocks\EntryBlock.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.ControlFlow.Blocks\EntryExitBlock.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.ControlFlow.Blocks\LabelAdapter.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.ControlFlow.Blocks\MethodCallBlock.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.ControlFlow.Blocks\NewObjCallBlock.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.ControlFlow.Subroutines.Builders\BlockBuilder.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.ControlFlow.Subroutines.Builders\BlockStartGatherer.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.ControlFlow.Subroutines.Builders\EnsuresFactory.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.ControlFlow.Subroutines.Builders\RequiresFactory.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.ControlFlow.Subroutines.Builders\SimpleSubroutineBuilder.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.ControlFlow.Subroutines.Builders\SubroutineBuilder.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.ControlFlow.Subroutines.Builders\SubroutineFactory.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.ControlFlow.Subroutines.Builders\SubroutineWithHandlersBuilder.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.ControlFlow.Subroutines\EnsuresSubroutine.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.ControlFlow.Subroutines\FaultFinallySubroutineBase.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.ControlFlow.Subroutines\FaultSubroutine.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.ControlFlow.Subroutines\FinallySubroutine.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.ControlFlow.Subroutines\MethodContractSubroutine.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.ControlFlow.Subroutines\MethodSubroutine.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.ControlFlow.Subroutines\OldScanStateMachine.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.ControlFlow.Subroutines\OldValueSubroutine.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.ControlFlow.Subroutines\RequiresSubroutine.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.ControlFlow.Subroutines\SimpleSubroutine.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.ControlFlow.Subroutines\SubroutineBase.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.ControlFlow.Subroutines\SubroutineFacade.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.ControlFlow.Subroutines\SubroutineWithHandlers.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.ControlFlow\APC.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.ControlFlow\APCDecoder.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.ControlFlow\CFGBlock.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.ControlFlow\ContractFilteredCFG.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.ControlFlow\ControlFlowGraph.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.ControlFlow\Edge.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.ControlFlow\EdgeMap.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.ControlFlow\EdgeTag.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.ControlFlow\EdgeTagExtensions.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.ControlFlow\EdgeVisitor.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.ControlFlow\ICFG.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.ControlFlow\IConstantInfo.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.ControlFlow\IHandlerFilter.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.ControlFlow\IMethodInfo.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.ControlFlow\IStackInfo.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.ControlFlow\RemoveBranchDelegator.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.ControlFlow\Subroutine.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.ControlFlow\SubroutineKind.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.DataFlowAnalysis\DataFlowAnalysisBase.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.DataFlowAnalysis\EdgeBasedWidening.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.DataFlowAnalysis\EdgeConverter.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.DataFlowAnalysis\ForwardAnalysis.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.DataFlowAnalysis\ForwardDataFlowAnalysisBase.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.DataFlowAnalysis\IAnalysis.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.DataFlowAnalysis\IFixPointInfo.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.DataFlowAnalysis\IWidenStrategy.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.DataFlowAnalysis\Joiner.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.DataFlowAnalysis\StepWidening.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.DataStructures.Patricia\BranchNode.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.DataStructures.Patricia\EmptyNode.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.DataStructures.Patricia\LeafNode.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.DataStructures.Patricia\PatriciaTrieNode.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.DataStructures\AbstractWorkList.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.DataStructures\BooleanExtensions.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.DataStructures\DecoratorHelper.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.DataStructures\DepthFirst.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.DataStructures\DoubleDictionary.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.DataStructures\DoubleImmutableMap.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.DataStructures\Dummy.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.DataStructures\EdgeVisitor.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.DataStructures\GraphWrapper.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.DataStructures\IGraph.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.DataStructures\IImmutableIntMap.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.DataStructures\IImmutableMap.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.DataStructures\IImmutableSet.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.DataStructures\IIndexable.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.DataStructures\ImmutableIntKeyMap.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.DataStructures\ImmutableIntMap.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.DataStructures\ImmutableMap.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.DataStructures\ImmutableSet.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.DataStructures\ImmutableSetExtensions.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.DataStructures\Indexable.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.DataStructures\IPropertyCollection.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.DataStructures\IWorkList.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.DataStructures\Sequence.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.DataStructures\SequenceExtensions.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.DataStructures\Optional.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.DataStructures\Pair.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.DataStructures\PriorityQueue.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.DataStructures\TypedKey.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.DataStructures\PropertyCollection.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.DataStructures\VisitStatus.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.DataStructures\WorkList.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Extensions\Extensions.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Lattices\AbstractDomainExtensions.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Lattices\EnvironmentDomain.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Lattices\FlatDomain.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Lattices\IAbstractDomain.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Lattices\SetDomain.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Providers\CodeContractDecoder.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Providers\CodeProviderImpl.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Providers\ICodeProvider.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Providers\IContractProvider.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Providers\IILDecoder.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Providers\IMetaDataProvider.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Providers\IMethodCodeProvider.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Providers\MetaDataProvider.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Proving\AssertionFinder.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Proving\BasicFacts.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Proving\BoxedExpression.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Proving\BoxedExpressionExtensions.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Proving\ComposedFactQuery.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Proving\ConstantPropagationFactQuery.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Proving\IFactBase.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Proving\IFactQuery.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static.Proving\SimpleLogicInference.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static\CheckResults.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static\CheckOptions.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static\Checker.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static\DebugOptions.cs" />\r
-    <Compile Include="Mono.CodeContracts.Static\ProofOutcome.cs" /> \r
+   <Compile Include="..\..\build\common\Consts.cs" />
+   <Compile Include="Assembly\AssemblyInfo.cs" />
+   <Compile Include="Mono.CodeContracts.Rewrite\AssemblyRef.cs" />
+   <Compile Include="Mono.CodeContracts.Rewrite\ConditionTextExtractor.cs" />
+   <Compile Include="Mono.CodeContracts.Rewrite\ContractRequiresInfo.cs" />
+   <Compile Include="Mono.CodeContracts.Rewrite\ContractsRuntime.cs" />
+   <Compile Include="Mono.CodeContracts.Rewrite\Decompile.cs" />
+   <Compile Include="Mono.CodeContracts.Rewrite\ExprGen.cs" />
+   <Compile Include="Mono.CodeContracts.Rewrite\MethodInfo.cs" />
+   <Compile Include="Mono.CodeContracts.Rewrite\PerformRewrite.cs" />
+   <Compile Include="Mono.CodeContracts.Rewrite\Rewriter.cs" />
+   <Compile Include="Mono.CodeContracts.Rewrite\RewriterOptions.cs" />
+   <Compile Include="Mono.CodeContracts.Rewrite\RewriterResults.cs" />
+   <Compile Include="Mono.CodeContracts.Rewrite\TransformContractsVisitor.cs" />
+   <Compile Include="Mono.CodeContracts.Rewrite.Ast\ExprAdd.cs" />
+   <Compile Include="Mono.CodeContracts.Rewrite.Ast\ExprBinaryOpArithmetic.cs" />
+   <Compile Include="Mono.CodeContracts.Rewrite.Ast\ExprBinaryOpComparison.cs" />
+   <Compile Include="Mono.CodeContracts.Rewrite.Ast\ExprBinaryOp.cs" />
+   <Compile Include="Mono.CodeContracts.Rewrite.Ast\ExprBlock.cs" />
+   <Compile Include="Mono.CodeContracts.Rewrite.Ast\ExprBox.cs" />
+   <Compile Include="Mono.CodeContracts.Rewrite.Ast\ExprCall.cs" />
+   <Compile Include="Mono.CodeContracts.Rewrite.Ast\ExprCompareEqual.cs" />
+   <Compile Include="Mono.CodeContracts.Rewrite.Ast\ExprCompareGreaterThan.cs" />
+   <Compile Include="Mono.CodeContracts.Rewrite.Ast\ExprCompareLessThan.cs" />
+   <Compile Include="Mono.CodeContracts.Rewrite.Ast\ExprConv.cs" />
+   <Compile Include="Mono.CodeContracts.Rewrite.Ast\Expr.cs" />
+   <Compile Include="Mono.CodeContracts.Rewrite.Ast\ExprLoadArg.cs" />
+   <Compile Include="Mono.CodeContracts.Rewrite.Ast\ExprLoadConstant.cs" />
+   <Compile Include="Mono.CodeContracts.Rewrite.Ast\ExprNop.cs" />
+   <Compile Include="Mono.CodeContracts.Rewrite.Ast\ExprReturn.cs" />
+   <Compile Include="Mono.CodeContracts.Rewrite.Ast\ExprSub.cs" />
+   <Compile Include="Mono.CodeContracts.Rewrite.Ast\ExprType.cs" />
+   <Compile Include="Mono.CodeContracts.Rewrite.Ast\Sn.cs" />
+   <Compile Include="Mono.CodeContracts.Rewrite.AstVisitors\CompileVisitor.cs" />
+   <Compile Include="Mono.CodeContracts.Rewrite.AstVisitors\ExprVisitor.cs" />
+   <Compile Include="Mono.CodeContracts.Rewrite.AstVisitors\InstructionExtentVisitor.cs" />
+   <Compile Include="Mono.CodeContracts.Rewrite.AstVisitors\SourcePositionVisitor.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.Drivers\AnalysisDriver.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.Drivers\BasicAnalysisDriver.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.Drivers\BasicMethodDriver.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.Drivers\CodeContractsAnalysisDriver.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.Drivers\IBasicAnalysisDriver.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.Drivers\IBasicMethodDriver.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.Drivers\IMethodAnalysis.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.Drivers\IMethodAnalysisFixPoint.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.Drivers\IMethodDriver.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.Drivers\IMethodResult.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.ExpressionAnalysis.Decoding\FullExpressionDecoder.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.ExpressionAnalysis.Decoding\IFullExpressionDecoder.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.ExpressionAnalysis.Decoding\QueryVisitor.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.ExpressionAnalysis.Decoding\VisitorForIsBinaryExpression.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.ExpressionAnalysis.Decoding\VisitorForIsInst.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.ExpressionAnalysis.Decoding\VisitorForIsNull.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.ExpressionAnalysis.Decoding\VisitorForIsUnaryExpression.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.ExpressionAnalysis.Decoding\VisitorForSizeOf.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.ExpressionAnalysis.Decoding\VisitorForUnderlyingVariable.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.ExpressionAnalysis.Decoding\VisitorForValueOf.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.ExpressionAnalysis.Decoding\VisitorForVariable.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.ExpressionAnalysis.Decoding\VisitorForVariablesIn.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.ExpressionAnalysis.Expressions\BinaryExpr.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.ExpressionAnalysis.Expressions\ConstExpr.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.ExpressionAnalysis.Expressions\Expr.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.ExpressionAnalysis.Expressions\IsInstExpr.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.ExpressionAnalysis.Expressions\NullExpr.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.ExpressionAnalysis.Expressions\SizeOfExpr.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.ExpressionAnalysis.Expressions\UnaryExpr.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.ExpressionAnalysis\AnalysisDecoder.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.ExpressionAnalysis\AssumeDecoder.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.ExpressionAnalysis\ExprDomain.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.ExpressionAnalysis\ExpressionAnalysisFacade.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.ExpressionAnalysis\ExpressionDecoder.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.ExpressionAnalysis\ExpressionDecoderAdapter.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.ExpressionAnalysis\ExpressionPrinterFactory.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.ExpressionAnalysis\ILDecoderAdapter.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.ExpressionAnalysis\ValueAnalysis.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.HeapAnalysis.Paths\AccessPathFilter.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.HeapAnalysis.Paths\IVisibilityCheck.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.HeapAnalysis.Paths\MethodCallPathElement.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.HeapAnalysis.Paths\ParameterPathElement.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.HeapAnalysis.Paths\PathElement.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.HeapAnalysis.Paths\PathElementBase.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.HeapAnalysis.Paths\PathElement`1.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.HeapAnalysis.Paths\PathExtensions.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.HeapAnalysis.Paths\SpecialPathElement.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.HeapAnalysis.Paths\SpecialPathElementKind.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.HeapAnalysis.SymbolicGraph\AbstractDomainUpdate.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.HeapAnalysis.SymbolicGraph\EdgeUpdate.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.HeapAnalysis.SymbolicGraph\EliminateEdgeUpdate.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.HeapAnalysis.SymbolicGraph\EqualityPair.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.HeapAnalysis.SymbolicGraph\EqualityUpdate.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.HeapAnalysis.SymbolicGraph\IMergeInfo.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.HeapAnalysis.SymbolicGraph\MergeInfo.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.HeapAnalysis.SymbolicGraph\MultiEdge.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.HeapAnalysis.SymbolicGraph\MultiEdgeUpdate.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.HeapAnalysis.SymbolicGraph\SymGraph.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.HeapAnalysis.SymbolicGraph\SymGraphTerm.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.HeapAnalysis.SymbolicGraph\Update.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.HeapAnalysis\AbstractType.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.HeapAnalysis\AnalysisDecoder.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.HeapAnalysis\Domain.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.HeapAnalysis\FunctionsTable.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.HeapAnalysis\HeapAnalysis.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.HeapAnalysis\IAbstractDomainForEGraph.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.HeapAnalysis\IConstantInfo.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.HeapAnalysis\ISymGraph.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.HeapAnalysis\LabeledSymbol.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.HeapAnalysis\MethodWrapper.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.HeapAnalysis\ParameterWrapper.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.HeapAnalysis\StackToSymbolicAdapter.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.HeapAnalysis\SymbolicValue.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.HeapAnalysis\SymFunction.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.HeapAnalysis\SymValue.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.HeapAnalysis\TypeCache.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.HeapAnalysis\ValueContextProvider.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.HeapAnalysis\ValueDecoder.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.HeapAnalysis\Wrapper.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.NonNull\Analysis.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.NonNull\NonNullDomain.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.NonNull\ExpressionAssertDischarger.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.NonNull\ExpressionAssumeDecoder.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.NonNull\NonNullAnalysisFacade.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.Numerical\AbstractInterpretationException.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.Numerical\Analysers.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.Numerical\Analysis.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.Numerical\Analysis.GenericValueAnalysis.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.Numerical\Analysis.ConstantEvaluator.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.Numerical\Analysis.GenericNumericalAnalysis.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.Numerical\BoxedExpressionDecoder.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.Numerical\BoxedExpressionEncoder.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.Numerical\BoxedVariable.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.Numerical\Counter.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.Numerical\DisInterval.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.Numerical\DisIntervalAssumer.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.Numerical\DisIntervalContext.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.Numerical\ConstToIntervalEvaluator.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.Numerical\DisIntervalEnvironment.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.Numerical\EvaluateExpressionVisitor.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.Numerical\ExpressionType.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.Numerical\GetThresholdVisitor.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.Numerical\IExpressionDecoder.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.Numerical\IExpressionEncoder.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.Numerical\IIntervalEnvironment.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.Numerical\IntervalAssumer.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.Numerical\IntervalContext.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.Numerical\IntervalContextBase.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.Numerical\IntervalEnvironment.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.Numerical\IntervalInference.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.Numerical\IntervalRationalAssumerBase.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.Numerical\IntervalRationalContextBase.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.Numerical\IntervalAssumeFalseVisitor.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.Numerical\IntervalAssumeTrueVisitor.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.Numerical\IntervalAssumerBase.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.Numerical\LongToIntegerConstantEvaluator.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.Numerical\EvaluateArithmeticWithOverflow.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.Numerical\ExpressionOperator.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.Numerical\ExpressionViaStringComparer.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.Numerical\ConstantEvaluatorVisitor.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.Numerical\GenericExpressionVisitor.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.Numerical\GenericTypeExpressionVisitor.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.Numerical\IEnvironmentDomain.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.Numerical\Interval.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.Numerical\IntervalBase.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.Numerical\IntervalEnvironmentBase.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.Numerical\Monomial.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.Numerical\ObjectExtensions.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.Numerical\Polynomial.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.Numerical\Rational.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.Numerical\AssumeFalseVisitor.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.Numerical\AssumeTrueVisitor.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.Numerical\RationalThreshold.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.Numerical\Threshold.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.Numerical\TresholdDB.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.Numerical\ValueExpressionDecoder.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.StackAnalysis\APCMap.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.StackAnalysis\SequenceGenerator.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.StackAnalysis\StackDecoder.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.StackAnalysis\StackDepthFactory.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.StackAnalysis\StackDepthProvider.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.StackAnalysis\StackInfo.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis.StackAnalysis\StackInfo`1.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis\CodeLayer.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis\CodeLayerFactory.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis\ICodeLayer.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis\IExpressionContext.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis\IExpressionContextProvider.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis\ILPrinter.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis\IMethodContext.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis\IMethodContextProvider.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis\IStackContext.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis\IStackContextProvider.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis\IValueContext.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis\IValueContextProvider.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Analysis\PrinterFactory.cs" />
+   <Compile Include="Mono.CodeContracts.Static.AST.Visitors\CodeVisitor.cs" />
+   <Compile Include="Mono.CodeContracts.Static.AST.Visitors\DefaultNodeVisitor.cs" />
+   <Compile Include="Mono.CodeContracts.Static.AST.Visitors\IAggregateVisitor.cs" />
+   <Compile Include="Mono.CodeContracts.Static.AST.Visitors\ICodeConsumer.cs" />
+   <Compile Include="Mono.CodeContracts.Static.AST.Visitors\IExpressionILVisitor.cs" />
+   <Compile Include="Mono.CodeContracts.Static.AST.Visitors\IILVisitor.cs" />
+   <Compile Include="Mono.CodeContracts.Static.AST.Visitors\ILVisitorBase.cs" />
+   <Compile Include="Mono.CodeContracts.Static.AST.Visitors\IMethodCodeConsumer.cs" />
+   <Compile Include="Mono.CodeContracts.Static.AST.Visitors\ISymbolicExpressionVisitor.cs" />
+   <Compile Include="Mono.CodeContracts.Static.AST.Visitors\ISyntheticILVisitor.cs" />
+   <Compile Include="Mono.CodeContracts.Static.AST.Visitors\NodeInspector.cs" />
+   <Compile Include="Mono.CodeContracts.Static.AST.Visitors\NodeVisitor.cs" />
+   <Compile Include="Mono.CodeContracts.Static.AST.Visitors\ValueCodeVisitor.cs" />
+   <Compile Include="Mono.CodeContracts.Static.AST\ArrayTypeNode.cs" />
+   <Compile Include="Mono.CodeContracts.Static.AST\AssemblyNode.cs" />
+   <Compile Include="Mono.CodeContracts.Static.AST\AssignmentStatement.cs" />
+   <Compile Include="Mono.CodeContracts.Static.AST\BinaryExpression.cs" />
+   <Compile Include="Mono.CodeContracts.Static.AST\BinaryOperator.cs" />
+   <Compile Include="Mono.CodeContracts.Static.AST\Block.cs" />
+   <Compile Include="Mono.CodeContracts.Static.AST\BlockExpression.cs" />
+   <Compile Include="Mono.CodeContracts.Static.AST\BodyParser.cs" />
+   <Compile Include="Mono.CodeContracts.Static.AST\Branch.cs" />
+   <Compile Include="Mono.CodeContracts.Static.AST\CatchFilter.cs" />
+   <Compile Include="Mono.CodeContracts.Static.AST\Class.cs" />
+   <Compile Include="Mono.CodeContracts.Static.AST\Construct.cs" />
+   <Compile Include="Mono.CodeContracts.Static.AST\CoreSystemTypes.cs" />
+   <Compile Include="Mono.CodeContracts.Static.AST\EndFinally.cs" />
+   <Compile Include="Mono.CodeContracts.Static.AST\Ensures.cs" />
+   <Compile Include="Mono.CodeContracts.Static.AST\ExceptionHandler.cs" />
+   <Compile Include="Mono.CodeContracts.Static.AST\Expression.cs" />
+   <Compile Include="Mono.CodeContracts.Static.AST\ExpressionStatement.cs" />
+   <Compile Include="Mono.CodeContracts.Static.AST\FaultHandler.cs" />
+   <Compile Include="Mono.CodeContracts.Static.AST\Field.cs" />
+   <Compile Include="Mono.CodeContracts.Static.AST\Literal.cs" />
+   <Compile Include="Mono.CodeContracts.Static.AST\Local.cs" />
+   <Compile Include="Mono.CodeContracts.Static.AST\Member.cs" />
+   <Compile Include="Mono.CodeContracts.Static.AST\MemberBinding.cs" />
+   <Compile Include="Mono.CodeContracts.Static.AST\Method.cs" />
+   <Compile Include="Mono.CodeContracts.Static.AST\MethodCall.cs" />
+   <Compile Include="Mono.CodeContracts.Static.AST\MethodContract.cs" />
+   <Compile Include="Mono.CodeContracts.Static.AST\MethodContractElement.cs" />
+   <Compile Include="Mono.CodeContracts.Static.AST\Module.cs" />
+   <Compile Include="Mono.CodeContracts.Static.AST\NaryExpression.cs" />
+   <Compile Include="Mono.CodeContracts.Static.AST\Node.cs" />
+   <Compile Include="Mono.CodeContracts.Static.AST\NodeType.cs" />
+   <Compile Include="Mono.CodeContracts.Static.AST\OperatorExtensions.cs" />
+   <Compile Include="Mono.CodeContracts.Static.AST\Parameter.cs" />
+   <Compile Include="Mono.CodeContracts.Static.AST\Property.cs" />
+   <Compile Include="Mono.CodeContracts.Static.AST\Reference.cs" />
+   <Compile Include="Mono.CodeContracts.Static.AST\Requires.cs" />
+   <Compile Include="Mono.CodeContracts.Static.AST\Return.cs" />
+   <Compile Include="Mono.CodeContracts.Static.AST\Statement.cs" />
+   <Compile Include="Mono.CodeContracts.Static.AST\This.cs" />
+   <Compile Include="Mono.CodeContracts.Static.AST\TypeNode.cs" />
+   <Compile Include="Mono.CodeContracts.Static.AST\UnaryExpression.cs" />
+   <Compile Include="Mono.CodeContracts.Static.AST\UnaryOperator.cs" />
+   <Compile Include="Mono.CodeContracts.Static.AST\Variable.cs" />
+   <Compile Include="Mono.CodeContracts.Static.ContractExtraction\ContractExtractor.cs" />
+   <Compile Include="Mono.CodeContracts.Static.ContractExtraction\ContractNodes.cs" />
+   <Compile Include="Mono.CodeContracts.Static.ContractExtraction\GatherLocals.cs" />
+   <Compile Include="Mono.CodeContracts.Static.ContractExtraction\HelperMethods.cs" />
+   <Compile Include="Mono.CodeContracts.Static.ContractExtraction\RepresentationForAttribute.cs" />
+   <Compile Include="Mono.CodeContracts.Static.ControlFlow.Blocks\AssumeBlock.cs" />
+   <Compile Include="Mono.CodeContracts.Static.ControlFlow.Blocks\BlockBase.cs" />
+   <Compile Include="Mono.CodeContracts.Static.ControlFlow.Blocks\BlockWithLabels.cs" />
+   <Compile Include="Mono.CodeContracts.Static.ControlFlow.Blocks\CatchFilterEntryBlock.cs" />
+   <Compile Include="Mono.CodeContracts.Static.ControlFlow.Blocks\EnsuresBlock.cs" />
+   <Compile Include="Mono.CodeContracts.Static.ControlFlow.Blocks\EntryBlock.cs" />
+   <Compile Include="Mono.CodeContracts.Static.ControlFlow.Blocks\EntryExitBlock.cs" />
+   <Compile Include="Mono.CodeContracts.Static.ControlFlow.Blocks\LabelAdapter.cs" />
+   <Compile Include="Mono.CodeContracts.Static.ControlFlow.Blocks\MethodCallBlock.cs" />
+   <Compile Include="Mono.CodeContracts.Static.ControlFlow.Blocks\NewObjCallBlock.cs" />
+   <Compile Include="Mono.CodeContracts.Static.ControlFlow.Subroutines.Builders\BlockBuilder.cs" />
+   <Compile Include="Mono.CodeContracts.Static.ControlFlow.Subroutines.Builders\BlockStartGatherer.cs" />
+   <Compile Include="Mono.CodeContracts.Static.ControlFlow.Subroutines.Builders\EnsuresFactory.cs" />
+   <Compile Include="Mono.CodeContracts.Static.ControlFlow.Subroutines.Builders\RequiresFactory.cs" />
+   <Compile Include="Mono.CodeContracts.Static.ControlFlow.Subroutines.Builders\SimpleSubroutineBuilder.cs" />
+   <Compile Include="Mono.CodeContracts.Static.ControlFlow.Subroutines.Builders\SubroutineBuilder.cs" />
+   <Compile Include="Mono.CodeContracts.Static.ControlFlow.Subroutines.Builders\SubroutineFactory.cs" />
+   <Compile Include="Mono.CodeContracts.Static.ControlFlow.Subroutines.Builders\SubroutineWithHandlersBuilder.cs" />
+   <Compile Include="Mono.CodeContracts.Static.ControlFlow.Subroutines\EnsuresSubroutine.cs" />
+   <Compile Include="Mono.CodeContracts.Static.ControlFlow.Subroutines\FaultFinallySubroutineBase.cs" />
+   <Compile Include="Mono.CodeContracts.Static.ControlFlow.Subroutines\FaultSubroutine.cs" />
+   <Compile Include="Mono.CodeContracts.Static.ControlFlow.Subroutines\FinallySubroutine.cs" />
+   <Compile Include="Mono.CodeContracts.Static.ControlFlow.Subroutines\MethodContractSubroutine.cs" />
+   <Compile Include="Mono.CodeContracts.Static.ControlFlow.Subroutines\MethodSubroutine.cs" />
+   <Compile Include="Mono.CodeContracts.Static.ControlFlow.Subroutines\OldScanStateMachine.cs" />
+   <Compile Include="Mono.CodeContracts.Static.ControlFlow.Subroutines\OldValueSubroutine.cs" />
+   <Compile Include="Mono.CodeContracts.Static.ControlFlow.Subroutines\RequiresSubroutine.cs" />
+   <Compile Include="Mono.CodeContracts.Static.ControlFlow.Subroutines\SimpleSubroutine.cs" />
+   <Compile Include="Mono.CodeContracts.Static.ControlFlow.Subroutines\SubroutineBase.cs" />
+   <Compile Include="Mono.CodeContracts.Static.ControlFlow.Subroutines\SubroutineFacade.cs" />
+   <Compile Include="Mono.CodeContracts.Static.ControlFlow.Subroutines\SubroutineWithHandlers.cs" />
+   <Compile Include="Mono.CodeContracts.Static.ControlFlow\APC.cs" />
+   <Compile Include="Mono.CodeContracts.Static.ControlFlow\APCDecoder.cs" />
+   <Compile Include="Mono.CodeContracts.Static.ControlFlow\CFGBlock.cs" />
+   <Compile Include="Mono.CodeContracts.Static.ControlFlow\ContractFilteredCFG.cs" />
+   <Compile Include="Mono.CodeContracts.Static.ControlFlow\ControlFlowGraph.cs" />
+   <Compile Include="Mono.CodeContracts.Static.ControlFlow\Edge.cs" />
+   <Compile Include="Mono.CodeContracts.Static.ControlFlow\EdgeMap.cs" />
+   <Compile Include="Mono.CodeContracts.Static.ControlFlow\EdgeTag.cs" />
+   <Compile Include="Mono.CodeContracts.Static.ControlFlow\EdgeTagExtensions.cs" />
+   <Compile Include="Mono.CodeContracts.Static.ControlFlow\EdgeVisitor.cs" />
+   <Compile Include="Mono.CodeContracts.Static.ControlFlow\ICFG.cs" />
+   <Compile Include="Mono.CodeContracts.Static.ControlFlow\IConstantInfo.cs" />
+   <Compile Include="Mono.CodeContracts.Static.ControlFlow\IHandlerFilter.cs" />
+   <Compile Include="Mono.CodeContracts.Static.ControlFlow\IMethodInfo.cs" />
+   <Compile Include="Mono.CodeContracts.Static.ControlFlow\IStackInfo.cs" />
+   <Compile Include="Mono.CodeContracts.Static.ControlFlow\RemoveBranchDelegator.cs" />
+   <Compile Include="Mono.CodeContracts.Static.ControlFlow\Subroutine.cs" />
+   <Compile Include="Mono.CodeContracts.Static.ControlFlow\SubroutineKind.cs" />
+   <Compile Include="Mono.CodeContracts.Static.DataFlowAnalysis\DataFlowAnalysisBase.cs" />
+   <Compile Include="Mono.CodeContracts.Static.DataFlowAnalysis\EdgeBasedWidening.cs" />
+   <Compile Include="Mono.CodeContracts.Static.DataFlowAnalysis\EdgeConverter.cs" />
+   <Compile Include="Mono.CodeContracts.Static.DataFlowAnalysis\ForwardAnalysis.cs" />
+   <Compile Include="Mono.CodeContracts.Static.DataFlowAnalysis\ForwardDataFlowAnalysisBase.cs" />
+   <Compile Include="Mono.CodeContracts.Static.DataFlowAnalysis\IAnalysis.cs" />
+   <Compile Include="Mono.CodeContracts.Static.DataFlowAnalysis\IFixPointInfo.cs" />
+   <Compile Include="Mono.CodeContracts.Static.DataFlowAnalysis\IWidenStrategy.cs" />
+   <Compile Include="Mono.CodeContracts.Static.DataFlowAnalysis\Joiner.cs" />
+   <Compile Include="Mono.CodeContracts.Static.DataFlowAnalysis\StepWidening.cs" />
+   <Compile Include="Mono.CodeContracts.Static.DataStructures.Patricia\BranchNode.cs" />
+   <Compile Include="Mono.CodeContracts.Static.DataStructures.Patricia\EmptyNode.cs" />
+   <Compile Include="Mono.CodeContracts.Static.DataStructures.Patricia\LeafNode.cs" />
+   <Compile Include="Mono.CodeContracts.Static.DataStructures.Patricia\PatriciaTrieNode.cs" />
+   <Compile Include="Mono.CodeContracts.Static.DataStructures\AbstractWorkList.cs" />
+   <Compile Include="Mono.CodeContracts.Static.DataStructures\BooleanExtensions.cs" />
+   <Compile Include="Mono.CodeContracts.Static.DataStructures\DecoratorHelper.cs" />
+   <Compile Include="Mono.CodeContracts.Static.DataStructures\DepthFirst.cs" />
+   <Compile Include="Mono.CodeContracts.Static.DataStructures\DoubleDictionary.cs" />
+   <Compile Include="Mono.CodeContracts.Static.DataStructures\DoubleImmutableMap.cs" />
+   <Compile Include="Mono.CodeContracts.Static.DataStructures\Dummy.cs" />
+   <Compile Include="Mono.CodeContracts.Static.DataStructures\EdgeVisitor.cs" />
+   <Compile Include="Mono.CodeContracts.Static.DataStructures\GraphWrapper.cs" />
+   <Compile Include="Mono.CodeContracts.Static.DataStructures\IGraph.cs" />
+   <Compile Include="Mono.CodeContracts.Static.DataStructures\IImmutableIntMap.cs" />
+   <Compile Include="Mono.CodeContracts.Static.DataStructures\IImmutableMap.cs" />
+   <Compile Include="Mono.CodeContracts.Static.DataStructures\IImmutableSet.cs" />
+   <Compile Include="Mono.CodeContracts.Static.DataStructures\IIndexable.cs" />
+   <Compile Include="Mono.CodeContracts.Static.DataStructures\ImmutableIntKeyMap.cs" />
+   <Compile Include="Mono.CodeContracts.Static.DataStructures\ImmutableIntMap.cs" />
+   <Compile Include="Mono.CodeContracts.Static.DataStructures\ImmutableMap.cs" />
+   <Compile Include="Mono.CodeContracts.Static.DataStructures\ImmutableSet.cs" />
+   <Compile Include="Mono.CodeContracts.Static.DataStructures\ImmutableSetExtensions.cs" />
+   <Compile Include="Mono.CodeContracts.Static.DataStructures\Indexable.cs" />
+   <Compile Include="Mono.CodeContracts.Static.DataStructures\IPropertyCollection.cs" />
+   <Compile Include="Mono.CodeContracts.Static.DataStructures\IWorkList.cs" />
+   <Compile Include="Mono.CodeContracts.Static.DataStructures\Sequence.cs" />
+   <Compile Include="Mono.CodeContracts.Static.DataStructures\SequenceExtensions.cs" />
+   <Compile Include="Mono.CodeContracts.Static.DataStructures\Optional.cs" />
+   <Compile Include="Mono.CodeContracts.Static.DataStructures\Pair.cs" />
+   <Compile Include="Mono.CodeContracts.Static.DataStructures\PriorityQueue.cs" />
+   <Compile Include="Mono.CodeContracts.Static.DataStructures\TypedKey.cs" />
+   <Compile Include="Mono.CodeContracts.Static.DataStructures\PropertyCollection.cs" />
+   <Compile Include="Mono.CodeContracts.Static.DataStructures\VisitStatus.cs" />
+   <Compile Include="Mono.CodeContracts.Static.DataStructures\WorkList.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Extensions\Extensions.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Lattices\AbstractDomainExtensions.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Lattices\EnvironmentDomain.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Lattices\FlatDomain.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Lattices\IAbstractDomain.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Lattices\SetDomain.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Providers\CodeContractDecoder.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Providers\CodeProviderImpl.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Providers\ICodeProvider.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Providers\IContractProvider.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Providers\IILDecoder.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Providers\IMetaDataProvider.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Providers\IMethodCodeProvider.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Providers\MetaDataProvider.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Proving\AssertionFinder.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Proving\BasicFacts.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Proving\BoxedExpression.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Proving\BoxedExpressionExtensions.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Proving\ComposedFactQuery.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Proving\ConstantPropagationFactQuery.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Proving\IFactBase.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Proving\IFactQuery.cs" />
+   <Compile Include="Mono.CodeContracts.Static.Proving\SimpleLogicInference.cs" />
+   <Compile Include="Mono.CodeContracts.Static\CheckResults.cs" />
+   <Compile Include="Mono.CodeContracts.Static\CheckOptions.cs" />
+   <Compile Include="Mono.CodeContracts.Static\Checker.cs" />
+   <Compile Include="Mono.CodeContracts.Static\DebugOptions.cs" />
+   <Compile Include="Mono.CodeContracts.Static\ProofOutcome.cs" />
+\r
   </ItemGroup>\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
     <PreBuildEvent></PreBuildEvent>\r
   </PropertyGroup>\r
   <ItemGroup>\r
-    <Reference Include="mscorlib.dll">\r
-      <SpecificVersion>False</SpecificVersion>\r
-      <HintPath>mscorlib.dll</HintPath>\r
-    </Reference>\r
-    <Reference Include="System.dll">\r
-      <SpecificVersion>False</SpecificVersion>\r
-      <HintPath>System.dll</HintPath>\r
-    </Reference>\r
-    <Reference Include="System.Core.dll">\r
-      <SpecificVersion>False</SpecificVersion>\r
-      <HintPath>System.Core.dll</HintPath>\r
-    </Reference>\r
-    <Reference Include="Mono.Cecil.dll">\r
-      <SpecificVersion>False</SpecificVersion>\r
-      <HintPath>Mono.Cecil.dll</HintPath>\r
-    </Reference>\r
-    <Reference Include="Mono.Cecil.Mdb.dll">\r
-      <SpecificVersion>False</SpecificVersion>\r
-      <HintPath>Mono.Cecil.Mdb.dll</HintPath>\r
-    </Reference>\r
+    <Reference Include="mscorlib.dll">
+      <SpecificVersion>False</SpecificVersion>
+      <HintPath>mscorlib.dll</HintPath>
+    </Reference>
+    <Reference Include="System.dll">
+      <SpecificVersion>False</SpecificVersion>
+      <HintPath>System.dll</HintPath>
+    </Reference>
+    <Reference Include="System.Core.dll">
+      <SpecificVersion>False</SpecificVersion>
+      <HintPath>System.Core.dll</HintPath>
+    </Reference>
+    <Reference Include="Mono.Cecil.dll">
+      <SpecificVersion>False</SpecificVersion>
+      <HintPath>Mono.Cecil.dll</HintPath>
+    </Reference>
+    <Reference Include="Mono.Cecil.Mdb.dll">
+      <SpecificVersion>False</SpecificVersion>
+      <HintPath>Mono.Cecil.Mdb.dll</HintPath>
+    </Reference>
 \r
   </ItemGroup>\r
   <ItemGroup>\r
     <Folder Include="Properties\" />\r
   </ItemGroup>\r
-\r
+  \r
 </Project>\r
+
index 38d421017eec28fa82cc20518fbcf400cb324a79..19f539f9634a77f567b9f9ae9ed57dbe32295ccb 100644 (file)
@@ -36,7 +36,7 @@ using Mono.CodeContracts.Static.DataStructures;
 using Mono.CodeContracts.Static.Lattices;
 
 namespace Mono.CodeContracts.Static.Analysis.Numerical {
-        class DisInterval : IntervalBase<DisInterval, Rational> {
+        public class DisInterval : IntervalBase<DisInterval, Rational> {
                 public static readonly DisInterval NotZero =
                         For (Sequence<Interval>.From (Interval.For (Rational.MinusInfinity, -1L),
                                                       Interval.For (1L, Rational.PlusInfinity)));
index 076b431cef9978cd5df9cac6b2d26f401ef04e18..5c4333b6faa21366a690ecde26079bf28fec3007 100644 (file)
@@ -29,7 +29,7 @@
 using System.Collections.Generic;
 
 namespace Mono.CodeContracts.Static.Analysis.Numerical {
-        enum ExpressionOperator {
+        public enum ExpressionOperator {
                 Constant,
                 Variable,
                 Not,
index d473ca6b400e43e68c3474966decb12424ee89de..3df3424b38d3dbdd540aa973710391cfd5141317 100644 (file)
@@ -40,7 +40,7 @@ namespace Mono.CodeContracts.Static.Analysis.Numerical {
         /// <summary>
         /// Represents a closed interval of <see cref="Rational"/> values.
         /// </summary>
-        class Interval : IntervalBase<Interval, Rational>, IEquatable<Interval> {
+        public class Interval : IntervalBase<Interval, Rational>, IEquatable<Interval> {
                 static Interval cached_top_value;
                 static Interval cached_bottom_value;
 
@@ -379,7 +379,7 @@ namespace Mono.CodeContracts.Static.Analysis.Numerical {
                         return For (lower, upper);
                 }
 
-                public static class Ranges {
+                internal static class Ranges {
                         static Interval int8Range;
                         static Interval int32Range;
                         static Interval int64Range;
index 78d4c88f99bfc1c11f76c2e7bfc95e8486585ea8..ffc486812df0b09535e1a2c6d21ef3483112d071 100644 (file)
@@ -34,7 +34,7 @@ namespace Mono.CodeContracts.Static.Analysis.Numerical {
         /// <summary>
         /// Represents a generic class for intervals on numeric values.
         /// </summary>
-        abstract class IntervalBase<TInterval, TNumeric> : IAbstractDomain<TInterval>
+        public abstract class IntervalBase<TInterval, TNumeric> : IAbstractDomain<TInterval>
                 where TInterval : IntervalBase<TInterval, TNumeric> {
                 protected IntervalBase (TNumeric lowerBound, TNumeric upperBound)
                 {
index b70ea968dfe89b669ffacd434d54dc0d9c25a204..b69740a735634d33fd18719235f6fd102216cda1 100644 (file)
@@ -34,7 +34,7 @@ namespace Mono.CodeContracts.Static.Analysis.Numerical {
         /// <summary>
         /// Represents a rational number.
         /// </summary>
-        struct Rational : IEquatable<Rational> {
+        public struct Rational : IEquatable<Rational> {
                 public static readonly Rational Zero = new Rational (0L);
                 public static readonly Rational One = new Rational (1L);
                 public static readonly Rational MinusOne = new Rational (-1L);
index 9050db0d581c7d9fc12fef3fdb552d0b897776c8..27de0a01d227c38b8eb1dd808bd252343553a1d4 100644 (file)
@@ -27,7 +27,7 @@
 //
 
 namespace Mono.CodeContracts.Static.Analysis.Numerical {
-        class RationalThreshold : Threshold<Rational> {
+        public class RationalThreshold : Threshold<Rational> {
                 public RationalThreshold (int size) : base (size)
                 {
                 }
index 37f817ba22ca4c3bbe16c11d47a58436b6ee327e..ba9ce8c4996cb162174d9804ea38970e4d8d4b1b 100644 (file)
@@ -29,7 +29,7 @@
 using System.Collections.Generic;
 
 namespace Mono.CodeContracts.Static.Analysis.Numerical {
-        abstract class Threshold<T> {
+        public abstract class Threshold<T> {
                 protected int NextFree;
                 protected readonly List<T> Values;
 
index 5c63d97722b1127b4b059ba1e834e2894f636ab3..b83cda222aaae232256808f6df92ffb410cd48b1 100644 (file)
@@ -33,7 +33,7 @@ using System.Text;
 
 namespace Mono.CodeContracts.Static.DataStructures.Patricia
 {
-    internal class BranchNode<T> : PatriciaTrieNode<T>
+        public class BranchNode<T> : PatriciaTrieNode<T>
     {
         private readonly int count;
 
index cdde993afcb0aaa70317504d5bfdab1f3b404d28..30ca10b3f2d9ec3c3f98b8db7f84f560466a7017 100644 (file)
@@ -33,7 +33,7 @@ using System.Text;
 
 namespace Mono.CodeContracts.Static.DataStructures.Patricia
 {
-    class EmptyNode<T> : PatriciaTrieNode<T>
+        public class EmptyNode<T> : PatriciaTrieNode<T>
     {
         public static readonly EmptyNode<T> Instance = new EmptyNode<T>();
 
index c8b4b5b62e3038a938957a2e8ae839bf3b8a9b93..81a98a22cdd499735a0276002960606b02535cf5 100644 (file)
@@ -33,7 +33,7 @@ using System.Text;
 
 namespace Mono.CodeContracts.Static.DataStructures.Patricia
 {
-    internal class LeafNode<T> : PatriciaTrieNode<T>
+        public class LeafNode<T> : PatriciaTrieNode<T>
     {
         private readonly int _key;
 
index f0e99e5ffce3184955a67a64de053e777ac3c70c..9ec068eccc1fde21876b062e358cd0f45fff5935 100644 (file)
@@ -33,7 +33,7 @@ using System.Text;
 
 namespace Mono.CodeContracts.Static.DataStructures.Patricia
 {
-    abstract class PatriciaTrieNode<T> : IImmutableIntMap<T>
+    public abstract class PatriciaTrieNode<T> : IImmutableIntMap<T>
     {
         public T this[int key]
         {
index d4e0bb202896e07b033e4a91ed4f76a13b8499c4..9f103a9b3d14327ca9664f0edf7b9fa9583ee669 100644 (file)
@@ -30,7 +30,7 @@ using System;
 using System.Collections.Generic;
 
 namespace Mono.CodeContracts.Static.DataStructures {
-       interface IImmutableIntMap<T> {
+        public interface IImmutableIntMap<T> {
                T this [int key] { get; }
                T Any { get; }
                IEnumerable<T> Values { get; }
index 8d2bc096683fc970cffbe9d3ad9b7b8e835c6ec4..0727f852bf92c849be03b67e387f72d2ea4c7278 100644 (file)
@@ -29,7 +29,7 @@
 using Mono.CodeContracts.Static.DataStructures.Patricia;
 
 namespace Mono.CodeContracts.Static.DataStructures {
-       static class ImmutableIntMap<T>
+        public static class ImmutableIntMap<T>
        {
         public static readonly IImmutableIntMap<T> Empty = EmptyNode<T>.Instance;    
        }
index 6899b4bea00c3c9295a0ae1faf444bfc8dfde7ba..b5af4a33b1078e948f9029350579293047c10044 100644 (file)
@@ -31,7 +31,7 @@ using System.Collections.Generic;
 using System.Text;
 
 namespace Mono.CodeContracts.Static.DataStructures {
-        class Sequence<T> : IEquatable<Sequence<T>> {
+        public class Sequence<T> : IEquatable<Sequence<T>> {
                 public static readonly Sequence<T> Empty = null;
                 readonly int count;
                 readonly T element;
index 5fa7f4b86c395a7f5f7470c9ff2fb4ad8f04e4ad..23733eeb0ae01910e556fc318e1c8ab04d1ef1b7 100644 (file)
@@ -30,7 +30,7 @@ using System;
 using System.Collections.Generic;
 
 namespace Mono.CodeContracts.Static.DataStructures {
-        static class SequenceExtensions {
+        public static class SequenceExtensions {
                 public static Sequence<T> Cons<T> (this Sequence<T> rest, T elem)
                 {
                         return Sequence<T>.Cons (elem, rest);
index 5c0ff40fc89f720616f0a0346c4446b0d08acf39..68a6c51f000b320748117164d7617181f5f56804 100644 (file)
@@ -29,7 +29,7 @@
 using Mono.CodeContracts.Static.DataStructures;
 
 namespace Mono.CodeContracts.Static.Lattices {
-        static class AbstractDomainExtensions {
+        public static class AbstractDomainExtensions {
                 public static bool IsNormal<T> (this IAbstractDomain<T> domain)
                 {
                         return !domain.IsTop && !domain.IsBottom;
index 8d77aba5c3baf616846fc9cfc39e7c300d276eef..adc9a9a10b380e0c0c890371c8037d3538a405a3 100644 (file)
@@ -41,7 +41,7 @@ namespace Mono.CodeContracts.Static.Lattices {
         ///       Bot
         /// </example>
         /// <typeparam name="T"></typeparam>
-        struct FlatDomain<T> : IAbstractDomain<FlatDomain<T>>, IEquatable<FlatDomain<T>>
+        public struct FlatDomain<T> : IAbstractDomain<FlatDomain<T>>, IEquatable<FlatDomain<T>>
                 where T : IEquatable<T> {
                 public static readonly FlatDomain<T> BottomValue = new FlatDomain<T> (DomainKind.Bottom);
                 public static readonly FlatDomain<T> TopValue = new FlatDomain<T> (DomainKind.Top);
index c63319ac013f8bbb4b669c5770e831a8da321454..a8401ee22e829264886ef9b5ee8f33e79aa3438a 100644 (file)
@@ -33,7 +33,7 @@ namespace Mono.CodeContracts.Static.Lattices {
         /// Represents abstraction of concrete value
         /// </summary>
         /// <typeparam name="T"></typeparam>
-        interface IAbstractDomain<T> {
+        public interface IAbstractDomain<T> {
                 /// <summary>
                 /// Represents universe set (which holds every value)
                 /// </summary>
diff --git a/mcs/class/Mono.CodeContracts/Test/Mono.CodeContracts.Static/AbstractDomainExtensionsTests.cs b/mcs/class/Mono.CodeContracts/Test/Mono.CodeContracts.Static/AbstractDomainExtensionsTests.cs
new file mode 100644 (file)
index 0000000..ab8931a
--- /dev/null
@@ -0,0 +1,133 @@
+// 
+// AbstractDomainExtensionsTests.cs
+// 
+// Authors:
+//     Alexander Chebaturkin (chebaturkin@gmail.com)
+// 
+// Copyright (C) 2012 Alexander Chebaturkin
+// 
+// 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 Mono.CodeContracts.Static.Lattices;
+
+using NUnit.Framework;
+
+namespace MonoTests.Mono.CodeContracts {
+        [TestFixture]
+        public class AbstractDomainExtensionsTests {
+                readonly FlatDomain<int> top = FlatDomain<int>.TopValue;
+                readonly FlatDomain<int> bottom = FlatDomain<int>.BottomValue;
+                readonly FlatDomain<int> normal = 1;
+
+                const bool Dummy = false;
+
+                /// <summary>
+                /// Checks that Meet(l, r, out result) == trivialSuccess && check(result);
+                /// </summary>
+                static void AssertMeetResultFor (FlatDomain<int> l, FlatDomain<int> r, bool trivialSuccess, Func<FlatDomain<int>, bool> check)
+                {
+                        FlatDomain<int> result;
+                        Assert.That (l.TryTrivialMeet (r, out result), Is.EqualTo (trivialSuccess));
+                        if (trivialSuccess)
+                                Assert.That (check (result));
+                }
+
+                /// <summary>
+                /// Checks that Join(l, r, out result) == trivialSuccess && check(result);
+                /// </summary>
+                static void AssertJoinResultFor (FlatDomain<int> l, FlatDomain<int> r, bool trivialSuccess, Func<FlatDomain<int>, bool> check)
+                {
+                        FlatDomain<int> result;
+                        Assert.That (l.TryTrivialJoin (r, out result), Is.EqualTo (trivialSuccess));
+                        if (trivialSuccess)
+                                Assert.That (check (result));
+                }
+
+                /// <summary>
+                /// Checks that LessEqual(l, r, out result) == trivialSuccess && result == resultCheck;
+                /// </summary>
+                static void AssertLessEqualResultFor (FlatDomain<int> l, FlatDomain<int> r, bool trivialSuccess, bool resultCheck)
+                {
+                        bool result;
+                        Assert.That (l.TryTrivialLessEqual (r, out result), Is.EqualTo (trivialSuccess));
+                        if (trivialSuccess)
+                                Assert.That (result, Is.EqualTo (resultCheck));
+                }
+
+                [Test]
+                public void TestCasesIsNormal ()
+                {
+                        Assert.That (this.top.IsNormal (), Is.False);
+                        Assert.That (this.bottom.IsNormal (), Is.False);
+                        Assert.That (this.normal.IsNormal (), Is.True);
+                }
+
+                [Test]
+                public void TestCasesTrivialJoin ()
+                {
+                        AssertJoinResultFor (this.top, this.top, true, (r) => r.IsTop);
+                        AssertJoinResultFor (this.top, this.bottom, true, (r) => r.IsTop);
+                        AssertJoinResultFor (this.top, this.normal, true, (r) => r.IsTop);
+
+                        AssertJoinResultFor (this.bottom, this.top, true, (r) => r.IsTop);
+                        AssertJoinResultFor (this.bottom, this.bottom, true, (r) => r.IsBottom);
+                        AssertJoinResultFor (this.bottom, this.normal, true, (r) => r.IsNormal ());
+
+                        AssertJoinResultFor (this.normal, this.top, true, (r) => r.IsTop);
+                        AssertJoinResultFor (this.normal, this.bottom, true, (r) => r.IsNormal ());
+                        AssertJoinResultFor (this.normal, this.normal, false, (r) => Dummy);
+                }
+
+                [Test]
+                public void TestCasesTrivialLessEqual ()
+                {
+                        AssertLessEqualResultFor (this.top, this.top, true, true);
+                        AssertLessEqualResultFor (this.top, this.bottom, true, false);
+                        AssertLessEqualResultFor (this.top, this.normal, true, false);
+
+                        AssertLessEqualResultFor (this.bottom, this.top, true, true);
+                        AssertLessEqualResultFor (this.bottom, this.bottom, true, true);
+                        AssertLessEqualResultFor (this.bottom, this.normal, true, true);
+
+                        AssertLessEqualResultFor (this.normal, this.top, true, true);
+                        AssertLessEqualResultFor (this.normal, this.bottom, true, false);
+                        AssertLessEqualResultFor (this.normal, this.normal, false, Dummy);
+                }
+
+                [Test]
+                public void TestCasesTrivialMeet ()
+                {
+                        AssertMeetResultFor (this.top, this.top, true, (r) => r.IsTop);
+                        AssertMeetResultFor (this.top, this.bottom, true, (r) => r.IsBottom);
+                        AssertMeetResultFor (this.top, this.normal, true, (r) => r.IsNormal ());
+
+                        AssertMeetResultFor (this.bottom, this.top, true, (r) => r.IsBottom);
+                        AssertMeetResultFor (this.bottom, this.bottom, true, (r) => r.IsBottom);
+                        AssertMeetResultFor (this.bottom, this.normal, true, (r) => r.IsBottom);
+
+                        AssertMeetResultFor (this.normal, this.top, true, (r) => r.IsNormal ());
+                        AssertMeetResultFor (this.normal, this.bottom, true, (r) => r.IsBottom);
+                        AssertMeetResultFor (this.normal, this.normal, false, (r) => Dummy);
+                }
+        }
+}
\ No newline at end of file
diff --git a/mcs/class/Mono.CodeContracts/Test/Mono.CodeContracts.Static/DisIntervalTests.cs b/mcs/class/Mono.CodeContracts/Test/Mono.CodeContracts.Static/DisIntervalTests.cs
new file mode 100644 (file)
index 0000000..d3508e2
--- /dev/null
@@ -0,0 +1,136 @@
+// 
+// DisIntervalTests.cs
+// 
+// Authors:
+//     Alexander Chebaturkin (chebaturkin@gmail.com)
+// 
+// Copyright (C) 2012 Alexander Chebaturkin
+// 
+// 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 Mono.CodeContracts.Static.Analysis.Numerical;
+using Mono.CodeContracts.Static.DataStructures;
+
+using NUnit.Framework;
+
+namespace MonoTests.Mono.CodeContracts {
+        [TestFixture]
+        class DisIntervalTests : DomainTestBase<DisInterval> {
+                protected override DisInterval Top { get { return DisInterval.TopValue; } }
+                protected override DisInterval Bottom { get { return DisInterval.BottomValue; } }
+                protected override DisInterval Normal { get { return DisInterval.For (this._1__2); } }
+
+                readonly Interval _0__1 = Interval.For (0, 1);
+                readonly Interval _0__4 = Interval.For (0, 4);
+                readonly Interval _1__2 = Interval.For (1, 2);
+                readonly Interval _1__3 = Interval.For (1, 3);
+                readonly Interval _1__4 = Interval.For (1, 4);
+                readonly Interval _1__5 = Interval.For (1, 5);
+                readonly Interval _2__4 = Interval.For (2, 4);
+                readonly Interval _2__5 = Interval.For (2, 5);
+                readonly Interval _3__4 = Interval.For (3, 4);
+
+                static Interval JoinAll (params Interval[] intervals)
+                {
+                        return DisInterval.JoinAll (Sequence<Interval>.From (intervals));
+                }
+
+                [Test]
+                public void ForSingleInterval ()
+                {
+                        DisInterval disInterval = DisInterval.For (this._1__2);
+
+                        Assert.That (disInterval.AsInterval, Is.EqualTo (this._1__2));
+                }
+
+                [Test]
+                public void JoinAllForIntervals ()
+                {
+                        Assert.That (JoinAll (this._1__2), Is.EqualTo (this._1__2));
+                        Assert.That (JoinAll (this._1__2, this._3__4), Is.EqualTo (this._1__4));
+                        Assert.That (JoinAll (), Is.EqualTo (Interval.TopValue));
+                }
+
+                [Test]
+                public void NormalizeTests ()
+                {
+                        bool isBottom;
+                        Assert.AreEqual (
+                                DisInterval.Normalize (Sequence<Interval>.From (this._1__2, this._3__4), out isBottom),
+                                Sequence<Interval>.From (this._1__4));
+
+                        Assert.AreEqual (
+                                DisInterval.Normalize (Sequence<Interval>.From (this._1__4, this._1__2), out isBottom),
+                                Sequence<Interval>.From (this._1__4));
+
+                        Assert.AreEqual (
+                                DisInterval.Normalize (Sequence<Interval>.From (this._1__2, this._1__4), out isBottom),
+                                Sequence<Interval>.From (this._1__4));
+
+                        Assert.AreEqual (
+                                DisInterval.Normalize (Sequence<Interval>.From (this._1__4, this._2__4), out isBottom),
+                                Sequence<Interval>.From (this._1__4));
+
+                        Assert.AreEqual (
+                                DisInterval.Normalize (Sequence<Interval>.From (this._1__3, this._2__5), out isBottom),
+                                Sequence<Interval>.From (this._1__5));
+
+                        Assert.AreEqual (
+                                DisInterval.Normalize (Sequence<Interval>.From (Interval.BottomValue, Interval.BottomValue), out isBottom),
+                                Sequence<Interval>.Empty);
+                        Assert.IsTrue (isBottom);
+
+                        Assert.AreEqual (
+                                DisInterval.Normalize (Sequence<Interval>.From (Interval.BottomValue), out isBottom),
+                                Sequence<Interval>.Empty);
+                        Assert.IsTrue (isBottom);
+                }
+
+                [Test]
+                public void ShouldHaveAddOperation ()
+                {
+                        Assert.That (DisInterval.For (this._1__2) + DisInterval.For (this._3__4),
+                                     Is.EqualTo (DisInterval.For (Interval.For (4, 6))));
+                }
+
+                [Test]
+                public void ShouldHaveJoinOperation ()
+                {
+                        DisInterval left = DisInterval.For (this._0__1).Join (DisInterval.For (this._3__4));
+                        DisInterval right = DisInterval.For (this._1__2).Join (DisInterval.For (this._1__4));
+                        Assert.That (left.Join (right), Is.EqualTo (DisInterval.For (this._0__4)));
+                }
+
+                [Test]
+                public void ShouldHaveMeetOperation ()
+                {
+                        Assert.That (DisInterval.For (this._1__4).Meet (DisInterval.For (this._1__2)),
+                                     Is.EqualTo (DisInterval.For (this._1__2)));
+                }
+
+                [Test]
+                public void ShouldHaveSubOperation ()
+                {
+                        Assert.That (DisInterval.For (this._1__2) - DisInterval.For (this._3__4),
+                                     Is.EqualTo (DisInterval.For (Interval.For (-3, -1))));
+                }
+        }
+}
\ No newline at end of file
diff --git a/mcs/class/Mono.CodeContracts/Test/Mono.CodeContracts.Static/DomainTestBase.cs b/mcs/class/Mono.CodeContracts/Test/Mono.CodeContracts.Static/DomainTestBase.cs
new file mode 100644 (file)
index 0000000..ce4b7c4
--- /dev/null
@@ -0,0 +1,123 @@
+// 
+// DomainTestBase.cs
+// 
+// Authors:
+//     Alexander Chebaturkin (chebaturkin@gmail.com)
+// 
+// Copyright (C) 2012 Alexander Chebaturkin
+// 
+// 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 Mono.CodeContracts.Static.Lattices;
+
+using NUnit.Framework;
+
+namespace MonoTests.Mono.CodeContracts {
+        [TestFixture]
+        abstract class DomainTestBase<T> where T : IAbstractDomain<T> {
+                protected abstract T Top { get; }
+                protected abstract T Bottom { get; }
+                protected abstract T Normal { get; }
+
+                /// <summary>
+                /// Checks that Meet(l, r, out result) == trivialSuccess && check(result);
+                /// </summary>
+                static void AssertMeetResultFor (T l, T r, Func<T, bool> check)
+                {
+                        T result = l.Meet (r);
+                        Assert.That (check (result));
+                }
+
+                /// <summary>
+                /// Checks that Join(l, r, out result) == trivialSuccess && check(result);
+                /// </summary>
+                static void AssertJoinResultFor (T l, T r, Func<T, bool> check)
+                {
+                        bool weaker;
+                        T result = l.Join (r, true, out weaker);
+                        Assert.That (check (result));
+                }
+
+                /// <summary>
+                /// Checks that LessEqual(l, r, out result) == trivialSuccess && result == expectedResult;
+                /// </summary>
+                static void AssertLessEqualResultFor (T l, T r, bool expectedResult)
+                {
+                        bool result = l.LessEqual (r);
+                        Assert.That (result, Is.EqualTo (expectedResult));
+                }
+
+                [Test]
+                public void IsNormal ()
+                {
+                        Assert.That (this.Top.IsNormal (), Is.False);
+                        Assert.That (this.Bottom.IsNormal (), Is.False);
+                        Assert.That (this.Normal.IsNormal (), Is.True);
+                }
+
+                [Test]
+                public void Join ()
+                {
+                        AssertJoinResultFor (this.Top, this.Top, (r) => r.IsTop);
+                        AssertJoinResultFor (this.Top, this.Bottom, (r) => r.IsTop);
+                        AssertJoinResultFor (this.Top, this.Normal, (r) => r.IsTop);
+
+                        AssertJoinResultFor (this.Bottom, this.Top, (r) => r.IsTop);
+                        AssertJoinResultFor (this.Bottom, this.Bottom, (r) => r.IsBottom);
+                        AssertJoinResultFor (this.Bottom, this.Normal, (r) => r.IsNormal ());
+
+                        AssertJoinResultFor (this.Normal, this.Top, (r) => r.IsTop);
+                        AssertJoinResultFor (this.Normal, this.Bottom, (r) => r.IsNormal ());
+                }
+
+                [Test]
+                public void LessEqual ()
+                {
+                        AssertLessEqualResultFor (this.Top, this.Top, true);
+                        AssertLessEqualResultFor (this.Top, this.Bottom, false);
+                        AssertLessEqualResultFor (this.Top, this.Normal, false);
+
+                        AssertLessEqualResultFor (this.Bottom, this.Top, true);
+                        AssertLessEqualResultFor (this.Bottom, this.Bottom, true);
+                        AssertLessEqualResultFor (this.Bottom, this.Normal, true);
+
+                        AssertLessEqualResultFor (this.Normal, this.Top, true);
+                        AssertLessEqualResultFor (this.Normal, this.Bottom, false);
+                }
+
+                [Test]
+                public void Meet ()
+                {
+                        AssertMeetResultFor (this.Top, this.Top, r => r.IsTop);
+                        AssertMeetResultFor (this.Top, this.Bottom, r => r.IsBottom);
+                        AssertMeetResultFor (this.Top, this.Normal, r => r.IsNormal ());
+
+                        AssertMeetResultFor (this.Bottom, this.Top, r => r.IsBottom);
+                        AssertMeetResultFor (this.Bottom, this.Bottom, r => r.IsBottom);
+                        AssertMeetResultFor (this.Bottom, this.Normal, r => r.IsBottom);
+
+                        AssertMeetResultFor (this.Normal, this.Top, r => r.IsNormal ());
+                        AssertMeetResultFor (this.Normal, this.Bottom, r => r.IsBottom);
+                }
+        }
+}
\ No newline at end of file
diff --git a/mcs/class/Mono.CodeContracts/Test/Mono.CodeContracts.Static/FlatDomainTests.cs b/mcs/class/Mono.CodeContracts/Test/Mono.CodeContracts.Static/FlatDomainTests.cs
new file mode 100644 (file)
index 0000000..95ec050
--- /dev/null
@@ -0,0 +1,40 @@
+// 
+// FlatDomainTests.cs
+// 
+// Authors:
+//     Alexander Chebaturkin (chebaturkin@gmail.com)
+// 
+// Copyright (C) 2012 Alexander Chebaturkin
+// 
+// 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 Mono.CodeContracts.Static.Lattices;
+
+using NUnit.Framework;
+
+namespace MonoTests.Mono.CodeContracts {
+        [TestFixture (Category = "FlatDomainTrivialTests")]
+        class FlatDomainTests : DomainTestBase<FlatDomain<int>> {
+                protected override FlatDomain<int> Top { get { return FlatDomain<int>.TopValue; } }
+                protected override FlatDomain<int> Bottom { get { return FlatDomain<int>.BottomValue; } }
+                protected override FlatDomain<int> Normal { get { return 1; } }
+        }
+}
\ No newline at end of file
diff --git a/mcs/class/Mono.CodeContracts/Test/Mono.CodeContracts.Static/IntervalTests.cs b/mcs/class/Mono.CodeContracts/Test/Mono.CodeContracts.Static/IntervalTests.cs
new file mode 100644 (file)
index 0000000..0362936
--- /dev/null
@@ -0,0 +1,173 @@
+// 
+// IntervalTests.cs
+// 
+// Authors:
+//     Alexander Chebaturkin (chebaturkin@gmail.com)
+// 
+// Copyright (C) 2012 Alexander Chebaturkin
+// 
+// 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 Mono.CodeContracts.Static.Analysis.Numerical;
+
+using NUnit.Framework;
+
+namespace MonoTests.Mono.CodeContracts {
+        [TestFixture (typeof (Interval))]
+        class IntervalTests : DomainTestBase<Interval> {
+                readonly Interval _1__2 = Interval.For (1, 2);
+                readonly Interval _2__4 = Interval.For (2, 4);
+                readonly Interval _3__4 = Interval.For (3, 4);
+                readonly Interval _1__4 = Interval.For (1, 4);
+
+                readonly Interval zero_to_one = Interval.For (Rational.Zero, Rational.One);
+                readonly Interval minus_one_to_zero = Interval.For (Rational.MinusOne, Rational.Zero);
+
+                protected override Interval Top { get { return Interval.TopValue; } }
+                protected override Interval Bottom { get { return Interval.BottomValue; } }
+                protected override Interval Normal { get { return this._1__2; } }
+
+                [Test]
+                public void ConsecutiveIntegers ()
+                {
+                        Assert.That (Interval.AreConsecutiveIntegers (this._1__2, this._3__4), Is.True);
+                        Assert.That (Interval.AreConsecutiveIntegers (this._1__2, this._1__2), Is.False);
+                        Assert.That (Interval.AreConsecutiveIntegers (this._3__4, this._1__2), Is.False);
+                        Assert.That (Interval.AreConsecutiveIntegers (Interval.For (Rational.For (1, 3)), this._1__2),
+                                     Is.False);
+                }
+
+                [Test]
+                public void OnTheLeftOf ()
+                {
+                        Assert.IsTrue (this._1__2.OnTheLeftOf (this._3__4));
+                        Assert.IsTrue (this._1__2.OnTheLeftOf (this._2__4));
+
+                        Assert.IsFalse (this._2__4.OnTheLeftOf (this._1__2));
+                        Assert.IsFalse (this._1__4.OnTheLeftOf (this._1__2));
+                        Assert.IsFalse (this._1__2.OnTheLeftOf (this._1__4));
+                }
+
+                [Test]
+                public void ShouldAddIntervalsByEachBound ()
+                {
+                        Assert.That (this.Bottom + this._1__2, Is.EqualTo (this.Bottom), "bottom + normal = bottom");
+                        Assert.That (this.Bottom + this.Top, Is.EqualTo (this.Bottom), "bottom + top = bottom");
+                        Assert.That (this.Bottom + this.Bottom, Is.EqualTo (this.Bottom), "bottom + bottom = bottom");
+
+                        Assert.That (this.Top + this.Top, Is.EqualTo (this.Top), "top + top = top");
+                        Assert.That (this.Top + this._1__2, Is.EqualTo (this.Top), "top + normal = top");
+                        Assert.That (this.Top + this.Bottom, Is.EqualTo (this.Bottom), "top + bottom = bottom");
+
+                        Assert.That (this._1__2 + this.Bottom, Is.EqualTo (this.Bottom), "normal + bottom = bottom");
+                        Assert.That (this._1__2 + this.Top, Is.EqualTo (this.Top), "normal + top = top");
+                        Assert.That (this._1__2 + this._3__4, Is.EqualTo (Interval.For (1 + 3, 2 + 4)));
+                }
+
+                [Test]
+                public void ShouldDivIntervalsByMaxMin ()
+                {
+                        Assert.That (this.Bottom / this._1__2, Is.EqualTo (this.Bottom), "bottom / normal = bottom");
+                        Assert.That (this.Bottom / this.Top, Is.EqualTo (this.Bottom), "bottom / top = bottom");
+                        Assert.That (this.Bottom / this.Bottom, Is.EqualTo (this.Bottom), "bottom / bottom = bottom");
+
+                        Assert.That (this.Top / this.Top, Is.EqualTo (this.Top), "top / top = top");
+                        Assert.That (this.Top / this._1__2, Is.EqualTo (this.Top), "top / normal = top");
+                        Assert.That (this.Top / this.Bottom, Is.EqualTo (this.Bottom), "top / bottom = bottom");
+
+                        Assert.That (this._1__2 / this.Bottom, Is.EqualTo (this.Bottom), "normal / bottom = bottom");
+                        Assert.That (this._1__2 / this.Top, Is.EqualTo (this.Top), "normal / top = top");
+
+                        Assert.That (this._1__2 / this.zero_to_one, Is.EqualTo (this.Top), "normal / zeroToOne = top");
+                        Assert.That (this._1__2 / this.minus_one_to_zero, Is.EqualTo (this.Top),
+                                     "normal / minusOneToZero = top");
+                        Assert.That (
+                                this._1__2 / this._3__4,
+                                Is.EqualTo (Interval.For (Rational.For (1, 4), Rational.For (2, 3))),
+                                "normal / normal = normal");
+                }
+
+                [Test]
+                public void ShouldJoinByInclusion ()
+                {
+                        Assert.That (this._1__2.Join (this._3__4), Is.EqualTo (Interval.For (1, 4)));
+                        Assert.That (this._3__4.Join (this._1__2), Is.EqualTo (Interval.For (1, 4)));
+                }
+
+                [Test]
+                public void ShouldLessEqualByInclusion ()
+                {
+                        Assert.That (this._1__2.LessEqual (this._1__2), Is.True);
+
+                        Assert.That (this._1__2.LessEqual (this._1__4), Is.True);
+                        Assert.That (this._3__4.LessEqual (this._1__4), Is.True);
+
+                        Assert.That (this._1__2.LessEqual (this._3__4), Is.False);
+                        Assert.That (this._3__4.LessEqual (this._1__2), Is.False);
+
+                        Assert.That (this._1__4.LessEqual (this._1__2), Is.False);
+                        Assert.That (this._1__4.LessEqual (this._3__4), Is.False);
+                }
+
+                [Test]
+                public void ShouldMultIntervalsByMaxMin ()
+                {
+                        Assert.That (this.Bottom * this._1__2, Is.EqualTo (this.Bottom), "bottom * normal = bottom");
+                        Assert.That (this.Bottom * this.Top, Is.EqualTo (this.Bottom), "bottom * top = bottom");
+                        Assert.That (this.Bottom * this.Bottom, Is.EqualTo (this.Bottom), "bottom * bottom = bottom");
+
+                        Assert.That (this.Top * this.Top, Is.EqualTo (this.Top), "top * top = top");
+                        Assert.That (this.Top * this._1__2, Is.EqualTo (this.Top), "top * normal = top");
+                        Assert.That (this.Top * this.Bottom, Is.EqualTo (this.Bottom), "top * bottom = bottom");
+
+                        Assert.That (this._1__2 * this.Bottom, Is.EqualTo (this.Bottom), "normal * bottom = bottom");
+                        Assert.That (this._1__2 * this.Top, Is.EqualTo (this.Top), "normal * top = top");
+
+                        Assert.That (this._1__2 * this._3__4, Is.EqualTo (Interval.For (3, 8)),
+                                     "normal * normal = normal");
+                }
+
+                [Test]
+                public void ShouldSubIntervalsByMaxMin ()
+                {
+                        Assert.That (this.Bottom - this._1__2, Is.EqualTo (this.Bottom), "bottom - normal = bottom");
+                        Assert.That (this.Bottom - this.Top, Is.EqualTo (this.Bottom), "bottom - top = bottom");
+                        Assert.That (this.Bottom - this.Bottom, Is.EqualTo (this.Bottom), "bottom - bottom = bottom");
+
+                        Assert.That (this.Top - this.Top, Is.EqualTo (this.Top), "top - top = top");
+                        Assert.That (this.Top - this._1__2, Is.EqualTo (this.Top), "top - normal = top");
+                        Assert.That (this.Top - this.Bottom, Is.EqualTo (this.Bottom), "top - bottom = bottom");
+
+                        Assert.That (this._1__2 - this.Bottom, Is.EqualTo (this.Bottom), "normal - bottom = bottom");
+                        Assert.That (this._1__2 - this.Top, Is.EqualTo (this.Top), "normal - top = top");
+                        Assert.That (this._1__2 - this._3__4, Is.EqualTo (Interval.For (1 - 4, 2 - 3)),
+                                     "normal - normal = normal");
+                }
+
+                [Test]
+                public void ShouldUnaryMinusIntervals ()
+                {
+                        Assert.That (-this.Bottom, Is.EqualTo (this.Bottom), "-bottom = bottom");
+                        Assert.That (-this.Top, Is.EqualTo (this.Top), "-top = top");
+                        Assert.That (-this._1__2, Is.EqualTo (Interval.For (-2, -1)), "normal: -[l,r] = [-r,-l]");
+                }
+        }
+}
\ No newline at end of file
diff --git a/mcs/class/Mono.CodeContracts/Test/Mono.CodeContracts.Static/PatriciaTrieTests.cs b/mcs/class/Mono.CodeContracts/Test/Mono.CodeContracts.Static/PatriciaTrieTests.cs
new file mode 100644 (file)
index 0000000..5790939
--- /dev/null
@@ -0,0 +1,121 @@
+// 
+// PatriciaTrieTests.cs
+// 
+// Authors:
+//     Alexander Chebaturkin (chebaturkin@gmail.com)
+// 
+// Copyright (C) 2012 Alexander Chebaturkin
+// 
+// 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 Mono.CodeContracts.Static.DataStructures;
+using Mono.CodeContracts.Static.DataStructures.Patricia;
+
+using NUnit.Framework;
+
+namespace MonoTests.Mono.CodeContracts {
+        [TestFixture]
+        public class PatriciaTrieTests {
+                readonly IImmutableIntMap<string> empty = ImmutableIntMap<string>.Empty;
+
+                [Test]
+                public void AddOnEmptyShouldCreateLeafNode ()
+                {
+                        var one = this.empty.Add (1, "hello") as LeafNode<string>;
+
+                        Assert.That (one.Key, Is.EqualTo (1));
+                        Assert.That (one.Value, Is.EqualTo ("hello"));
+                        Assert.That (one.Count, Is.EqualTo (1));
+                }
+
+                [Test]
+                public void AddOnLeafShouldCreateAnotherLeafIfKeysAreEqual ()
+                {
+                        var leaf = new LeafNode<string> (1, "hello");
+
+                        var result = (LeafNode<string>) leaf.Add (1, "there");
+
+                        Assert.That (result.Key, Is.EqualTo (1));
+                        Assert.That (result.Value, Is.EqualTo ("there"));
+                        Assert.That (result.Count, Is.EqualTo (1));
+                }
+
+                [Test]
+                public void AddOnLeafShouldCreateBranchIfKeysAreDifferent ()
+                {
+                        var leaf = new LeafNode<string> (5, "hello"); //101
+
+                        var branch = (BranchNode<string>) leaf.Add (7, "there"); //111
+
+                        Assert.That (branch.Prefix, Is.EqualTo (1)); //x*1
+                        Assert.That (branch.BranchingBit, Is.EqualTo (2)); //
+                        Assert.That (branch.Left, Is.SameAs (leaf));
+
+                        var right = (branch.Right as LeafNode<string>);
+                        Assert.That (right, Is.Not.Null);
+                        Assert.That (right.Key, Is.EqualTo (7));
+                        Assert.That (right.Value, Is.EqualTo ("there"));
+                }
+
+                [Test]
+                public void RemoveFromBranchWithLeafKeyEqualToArgumentShouldStayAnotherChild ()
+                {
+                        IImmutableIntMap<string> left = this.empty.Add (5, "hello");
+                        IImmutableIntMap<string> branch = left.Add (7, "there");
+
+                        IImmutableIntMap<string> node1 = branch.Remove (7);
+                        Assert.That (node1, Is.SameAs (left));
+
+                        IImmutableIntMap<string> node2 = branch.Remove (5);
+                        Assert.That (node2 is LeafNode<string>);
+                        Assert.That ((node2 as LeafNode<string>).Key, Is.EqualTo (7));
+                        Assert.That ((node2 as LeafNode<string>).Value, Is.EqualTo ("there"));
+                }
+
+                [Test]
+                public void RemoveOnEmptyShouldStayEmpty ()
+                {
+                        var one = (EmptyNode<string>) this.empty.Remove (1);
+
+                        Assert.That (one, Is.SameAs (this.empty));
+                }
+
+                [Test]
+                public void RemoveOnLeafShouldCreateEmptyIfKeysAreEqual ()
+                {
+                        var leaf = new LeafNode<string> (1, "hello");
+
+                        var result = (EmptyNode<string>) leaf.Remove (1);
+
+                        Assert.That (result.Count, Is.EqualTo (0));
+                }
+
+                [Test]
+                public void RemoveOnLeafShouldStayTheSameIfKeysAreDifferent ()
+                {
+                        var leaf = new LeafNode<string> (1, "hello");
+
+                        var result = (LeafNode<string>) leaf.Remove (2);
+
+                        Assert.That (result, Is.SameAs (leaf));
+                }
+        }
+}
\ No newline at end of file
diff --git a/mcs/class/Mono.CodeContracts/Test/Mono.CodeContracts.Static/RationalTestExtensions.cs b/mcs/class/Mono.CodeContracts/Test/Mono.CodeContracts.Static/RationalTestExtensions.cs
new file mode 100644 (file)
index 0000000..a30aab7
--- /dev/null
@@ -0,0 +1,55 @@
+// 
+// RationalTestExtensions.cs
+// 
+// Authors:
+//     Alexander Chebaturkin (chebaturkin@gmail.com)
+// 
+// Copyright (C) 2012 Alexander Chebaturkin
+// 
+// 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 Mono.CodeContracts.Static.Analysis.Numerical;
+
+using NUnit.Framework;
+
+namespace MonoTests.Mono.CodeContracts {
+        static class RationalTestExtensions {
+                public static void ShouldBeLessEqualThan (this Rational l, Rational r)
+                {
+                        Assert.IsTrue (l <= r);
+                }
+
+                public static void ShouldNotBeLessEqualThan (this Rational l, Rational r)
+                {
+                        Assert.IsFalse (l <= r);
+                }
+
+                public static void ShouldBeLessThan (this Rational l, Rational r)
+                {
+                        Assert.IsTrue (l < r);
+                }
+
+                public static void ShouldNotBeLessThan (this Rational l, Rational r)
+                {
+                        Assert.IsFalse (l < r);
+                }
+        }
+}
\ No newline at end of file
diff --git a/mcs/class/Mono.CodeContracts/Test/Mono.CodeContracts.Static/RationalTests.cs b/mcs/class/Mono.CodeContracts/Test/Mono.CodeContracts.Static/RationalTests.cs
new file mode 100644 (file)
index 0000000..6f6c4b9
--- /dev/null
@@ -0,0 +1,157 @@
+// 
+// RationalTests.cs
+// 
+// Authors:
+//     Alexander Chebaturkin (chebaturkin@gmail.com)
+// 
+// Copyright (C) 2012 Alexander Chebaturkin
+// 
+// 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 Mono.CodeContracts.Static.Analysis.Numerical;
+
+using NUnit.Framework;
+
+namespace MonoTests.Mono.CodeContracts {
+        [TestFixture]
+        public class RationalTests {
+                static readonly Rational zero = Rational.For (0L);
+                static readonly Rational zero1 = Rational.For (0L);
+                static readonly Rational one = Rational.For (1L);
+                static readonly Rational threeFourth = Rational.For (3L, 4L);
+                static readonly Rational sixEighth = Rational.For (6, 8);
+
+                static readonly Rational plusInf = Rational.PlusInfinity;
+                static readonly Rational minusInf = Rational.MinusInfinity;
+
+                [Test]
+                public void ShouldBeEqualByModuloOfDenominator ()
+                {
+                        Assert.IsTrue (threeFourth == sixEighth);
+                }
+
+                [Test]
+                public void ShouldHaveAddOperation ()
+                {
+                        Rational seven20 = Rational.For (7, 20);
+                        Rational eleven15 = Rational.For (11, 15);
+
+                        Assert.That (seven20 + eleven15, Is.EqualTo (Rational.For (325, 300)));
+                }
+
+                [Test]
+                public void ShouldHaveDivOperation ()
+                {
+                        Rational seven22 = Rational.For (7, 22);
+                        Rational eleven21 = Rational.For (21, 11);
+
+                        Assert.That (seven22 / eleven21, Is.EqualTo (Rational.For (1, 6)));
+
+                        Rational result;
+                        Assert.That (Rational.TryDivide (one, zero, out result), Is.False, "shouldn't div by zero");
+                        Assert.That (Rational.TryDivide (seven22, zero, out result), Is.False, "shouldn't div by zero");
+                }
+
+                [Test]
+                public void ShouldHaveGreaterThanOperatorsWithLongs ()
+                {
+                        Assert.That (threeFourth < 1L);
+                        Assert.That (1L > threeFourth);
+
+                        Assert.That (0L < threeFourth);
+                        Assert.That (threeFourth > 0L);
+                }
+
+                [Test]
+                public void ShouldHaveInfinitiesAndNormalValuesWhichArentEqual ()
+                {
+                        Assert.IsFalse (plusInf == minusInf);
+                        Assert.IsFalse (plusInf == zero);
+                        Assert.IsFalse (minusInf == zero);
+                        Assert.IsTrue (zero == zero1);
+                        Assert.IsFalse (one == zero);
+                }
+
+                [Test]
+                public void ShouldHaveLessEqualOperator ()
+                {
+                        minusInf.ShouldBeLessEqualThan (minusInf);
+                        minusInf.ShouldBeLessEqualThan (plusInf);
+                        minusInf.ShouldBeLessEqualThan (one);
+
+                        one.ShouldNotBeLessEqualThan (minusInf);
+                        one.ShouldNotBeLessEqualThan (zero);
+                        one.ShouldBeLessEqualThan (one);
+                        one.ShouldBeLessEqualThan (plusInf);
+
+                        plusInf.ShouldNotBeLessEqualThan (minusInf);
+                        plusInf.ShouldBeLessEqualThan (plusInf);
+                        plusInf.ShouldNotBeLessEqualThan (one);
+                }
+
+                [Test]
+                public void ShouldHaveLessThanOperator ()
+                {
+                        minusInf.ShouldNotBeLessThan (minusInf);
+                        minusInf.ShouldBeLessThan (plusInf);
+                        minusInf.ShouldBeLessThan (one);
+
+                        zero.ShouldNotBeLessThan (minusInf);
+                        zero.ShouldBeLessThan (plusInf);
+                        zero.ShouldBeLessThan (one);
+
+                        plusInf.ShouldNotBeLessThan (minusInf);
+                        plusInf.ShouldNotBeLessThan (plusInf);
+                        plusInf.ShouldNotBeLessThan (one);
+                }
+
+                [Test]
+                public void ShouldHaveMulOperation ()
+                {
+                        Rational seven22 = Rational.For (7, 22);
+                        Rational eleven21 = Rational.For (11, 21);
+
+                        Assert.That (seven22 * eleven21, Is.EqualTo (Rational.For (1, 6)));
+                }
+
+                [Test]
+                public void ShouldHaveNextInt32 ()
+                {
+                        Assert.That (threeFourth.NextInt32, Is.EqualTo (Rational.One));
+                }
+
+                [Test]
+                public void ShouldHaveSubOperation ()
+                {
+                        Rational seven20 = Rational.For (7, 20);
+                        Rational eleven15 = Rational.For (11, 15);
+
+                        Assert.That (seven20 - eleven15, Is.EqualTo (Rational.For (-23, 60)));
+                }
+
+                [Test]
+                public void ShouldInterpretMinusMinValueAsMaxValue ()
+                {
+                        Rational maxValue = Rational.For (long.MinValue, -1L);
+                        Assert.IsTrue ((long) maxValue == long.MaxValue);
+                }
+        }
+}
\ No newline at end of file
diff --git a/mcs/class/Mono.CodeContracts/Test/Mono.CodeContracts.Static/RationalThresholdTests.cs b/mcs/class/Mono.CodeContracts/Test/Mono.CodeContracts.Static/RationalThresholdTests.cs
new file mode 100644 (file)
index 0000000..5077aa8
--- /dev/null
@@ -0,0 +1,91 @@
+// 
+// RationalThresholdTests.cs
+// 
+// Authors:
+//     Alexander Chebaturkin (chebaturkin@gmail.com)
+// 
+// Copyright (C) 2012 Alexander Chebaturkin
+// 
+// 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 Mono.CodeContracts.Static.Analysis.Numerical;
+
+using NUnit.Framework;
+
+namespace Test {
+        [TestFixture]
+        [Timeout (1000)]
+        public class RationalThresholdTests {
+                // threshold contains -oo, 0, +oo
+
+                #region Setup/Teardown
+
+                [SetUp]
+                public void SetUp ()
+                {
+                        this.threshold = new RationalThreshold (10);
+                }
+
+                #endregion
+
+                RationalThreshold threshold;
+
+                [Test]
+                public void GetNext_ShouldReturnArgumentIfFound ()
+                {
+                        Rational next1 = this.threshold.GetNext (0);
+                        Assert.That (next1, Is.EqualTo (Rational.Zero));
+
+                        Rational next2 = this.threshold.GetNext (Rational.PlusInfinity);
+                        Assert.That (next2, Is.EqualTo (Rational.PlusInfinity));
+                }
+
+                [Test]
+                public void GetNext_ShouldReturnNextValueInDBIfNotFound ()
+                {
+                        Rational next3 = this.threshold.GetNext (Rational.MinusOne);
+                        Assert.That (next3, Is.EqualTo (Rational.Zero));
+
+                        Rational next4 = this.threshold.GetNext (Rational.One);
+                        Assert.That (next4, Is.EqualTo (Rational.PlusInfinity));
+                }
+
+                [Test]
+                public void GetPrevious_ShouldReturnArgumentIfFoundInDB ()
+                {
+                        Rational prev1 = this.threshold.GetPrevious (0);
+                        Assert.That (prev1, Is.EqualTo (Rational.Zero));
+
+                        Rational prev2 = this.threshold.GetPrevious (Rational.PlusInfinity);
+                        Assert.That (prev2, Is.EqualTo (Rational.PlusInfinity));
+                }
+
+                [Test]
+                public void GetPrevious_ShouldReturnPreviousValueIfNotFoundInDB ()
+                {
+                        Rational prev3 = this.threshold.GetPrevious (Rational.One);
+                        Assert.That (prev3, Is.EqualTo (Rational.Zero));
+
+                        Rational prev4 = this.threshold.GetPrevious (Rational.MinusOne);
+                        Assert.That (prev4, Is.EqualTo (Rational.MinusInfinity));
+                }
+        }
+}
\ No newline at end of file
diff --git a/mcs/class/Mono.CodeContracts/Test/Mono.CodeContracts.Static/SequenceTests.cs b/mcs/class/Mono.CodeContracts/Test/Mono.CodeContracts.Static/SequenceTests.cs
new file mode 100644 (file)
index 0000000..8b10e67
--- /dev/null
@@ -0,0 +1,80 @@
+// 
+// SequenceTests.cs
+// 
+// Authors:
+//     Alexander Chebaturkin (chebaturkin@gmail.com)
+// 
+// Copyright (C) 2012 Alexander Chebaturkin
+// 
+// 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 Mono.CodeContracts.Static.DataStructures;
+
+using NUnit.Framework;
+
+namespace MonoTests.Mono.CodeContracts {
+        [TestFixture]
+        public class SequenceTests {
+                readonly Sequence<int> empty = Sequence<int>.Empty;
+
+                [Test]
+                public void FromListShouldCreateSequenceInOrder ()
+                {
+                        Sequence<int> seq = Sequence<int>.From (1, 2, 3);
+
+                        Assert.That (seq.Length (), Is.EqualTo (3));
+                        Assert.That (seq.Head, Is.EqualTo (1));
+                        Assert.That (seq.Tail.Head, Is.EqualTo (2));
+                        Assert.That (seq.Tail.Tail.Head, Is.EqualTo (3));
+                }
+
+                [Test]
+                public void MultipleConsAreInsertedAsAStack ()
+                {
+                        Sequence<int> seq = this.empty.Cons (1).Cons (2).Cons (3);
+
+                        Assert.That (seq.Head, Is.EqualTo (3));
+                        Assert.That (seq.Tail.Head, Is.EqualTo (2));
+                        Assert.That (seq.Tail.Tail.Head, Is.EqualTo (1));
+                }
+
+                [Test]
+                public void ReverseShouldReverse ()
+                {
+                        Sequence<int> seq = Sequence<int>.From (1, 2);
+                        Sequence<int> reversed = seq.Reverse ();
+
+                        Assert.That (reversed.Length (), Is.EqualTo (2));
+                        Assert.That (reversed.Head, Is.EqualTo (2));
+                        Assert.That (reversed.Tail.Head, Is.EqualTo (1));
+                }
+
+                [Test]
+                public void ShouldHasCountEq1WithOneElement ()
+                {
+                        Sequence<int> seq = Sequence<int>.From (5);
+
+                        Assert.That (seq.Length (), Is.EqualTo (1));
+                        Assert.That (seq.Head, Is.EqualTo (5));
+                        Assert.That (seq.Tail, Is.Null);
+                }
+        }
+}
\ No newline at end of file
index 3b41ae7f86c1c36937dc7bcc051e1fc6d80a1a61..77c52f67835bd9f1b9637f205bc8d528b7757735 100644 (file)
@@ -181,6 +181,7 @@ namespace Mono.Data.Sqlite
         case DbType.DateTime:\r
           _sql.Bind_DateTime(this, index, Convert.ToDateTime(obj, CultureInfo.CurrentCulture));\r
           break;\r
+        case DbType.UInt32:\r
         case DbType.Int64:\r
         case DbType.UInt64:\r
           _sql.Bind_Int64(this, index, Convert.ToInt64(obj, CultureInfo.CurrentCulture));\r
@@ -189,7 +190,6 @@ namespace Mono.Data.Sqlite
         case DbType.Int16:\r
         case DbType.Int32:\r
         case DbType.UInt16:\r
-        case DbType.UInt32:\r
         case DbType.SByte:\r
         case DbType.Byte:\r
           _sql.Bind_Int32(this, index, Convert.ToInt32(obj, CultureInfo.CurrentCulture));\r
index c383005a0d41979d8d92977b7f96d93c4b7091f3..d794865f12359e3fe9957dbfdf705f35a47b8920 100644 (file)
@@ -1,4 +1,5 @@
 using System;
+using System.Globalization;
 using System.Collections.Generic;
 using System.Text;
 using Mono.Cecil.Cil;
@@ -56,8 +57,42 @@ namespace Mono.Debugger.Soft
                static OpCode [] OneByteOpCode = new OpCode [0xe0 + 1];
                static OpCode [] TwoBytesOpCode = new OpCode [0x1e + 1];
 
+               static string EscapeString (string text)
+               {
+                       StringBuilder sb = new StringBuilder ();
+
+                       sb.Append ('"');
+                       for (int i = 0; i < text.Length; i++) {
+                               char c = text[i];
+                               string txt;
+                               switch (c) {
+                               case '"': txt = "\\\""; break;
+                               case '\0': txt = @"\0"; break;
+                               case '\\': txt = @"\\"; break;
+                               case '\a': txt = @"\a"; break;
+                               case '\b': txt = @"\b"; break;
+                               case '\f': txt = @"\f"; break;
+                               case '\v': txt = @"\v"; break;
+                               case '\n': txt = @"\n"; break;
+                               case '\r': txt = @"\r"; break;
+                               case '\t': txt = @"\t"; break;
+                               default:
+                                       if (char.GetUnicodeCategory (c) == UnicodeCategory.OtherNotAssigned) {
+                                               sb.AppendFormat ("\\u{0:X4}", (int) c);
+                                       } else {
+                                               sb.Append (c);
+                                       }
+                                       continue;
+                               }
+                               sb.Append (txt);
+                       }
+                       sb.Append ('"');
+
+                       return sb.ToString ();
+               }
+
                // Adapted from Cecil
-           List<ILInstruction> ReadCilBody (BinaryReader br, int code_size)
+               List<ILInstruction> ReadCilBody (BinaryReader br, int code_size)
                {
                        long start = br.BaseStream.Position;
                        ILInstruction last = null;
@@ -153,7 +188,7 @@ namespace Mono.Debugger.Soft
                                        token = br.ReadInt32 ();
                                        t = vm.conn.Method_ResolveToken (Method.Id, token);
                                        if (t.Type == TokenType.STRING)
-                                               instr.Operand = t.Str;
+                                               instr.Operand = EscapeString (t.Str);
                                        break;
                                case OperandType.InlineField :
                                case OperandType.InlineMethod :
index 863f804b2a8733d25c55f8049717d30f87000160..5930e798e3ea917a5a8de25c3e0cda41614af354 100644 (file)
@@ -60,6 +60,7 @@
    <Compile Include="System.ComponentModel.DataAnnotations\EditableAttribute.cs" />
    <Compile Include="System.ComponentModel.DataAnnotations\EnumDataTypeAttribute.cs" />
    <Compile Include="System.ComponentModel.DataAnnotations\IValidatableObject.cs" />
+   <Compile Include="System.ComponentModel.DataAnnotations\KeyAttribute.cs" />
    <Compile Include="System.ComponentModel.DataAnnotations\MetadataTypeAttribute.cs" />
    <Compile Include="System.ComponentModel.DataAnnotations\RangeAttribute.cs" />
    <Compile Include="System.ComponentModel.DataAnnotations\RegularExpressionAttribute.cs" />
@@ -67,6 +68,7 @@
    <Compile Include="System.ComponentModel.DataAnnotations\ScaffoldColumnAttribute.cs" />
    <Compile Include="System.ComponentModel.DataAnnotations\ScaffoldTableAttribute.cs" />
    <Compile Include="System.ComponentModel.DataAnnotations\StringLengthAttribute.cs" />
+   <Compile Include="System.ComponentModel.DataAnnotations\TimestampAttribute.cs" />
    <Compile Include="System.ComponentModel.DataAnnotations\UIHintAttribute.cs" />
    <Compile Include="System.ComponentModel.DataAnnotations\ValidationAttributeCollectionExtensions.cs" />
    <Compile Include="System.ComponentModel.DataAnnotations\ValidationAttribute.cs" />
index d7a630f418c91f7b26fd025b3cc94ce66f52ace9..ebf8ec0ded24fefe565bc8e71f09749819240c78 100644 (file)
    <Compile Include="System.ComponentModel.DataAnnotations\EditableAttribute.cs" />
    <Compile Include="System.ComponentModel.DataAnnotations\EnumDataTypeAttribute.cs" />
    <Compile Include="System.ComponentModel.DataAnnotations\IValidatableObject.cs" />
+   <Compile Include="System.ComponentModel.DataAnnotations\KeyAttribute.cs" />
+   <Compile Include="System.ComponentModel.DataAnnotations\MaxLengthAttribute.cs" />
    <Compile Include="System.ComponentModel.DataAnnotations\MetadataTypeAttribute.cs" />
    <Compile Include="System.ComponentModel.DataAnnotations\RangeAttribute.cs" />
    <Compile Include="System.ComponentModel.DataAnnotations\RegularExpressionAttribute.cs" />
    <Compile Include="System.ComponentModel.DataAnnotations\RequiredAttribute.cs" />
    <Compile Include="System.ComponentModel.DataAnnotations\ScaffoldColumnAttribute.cs" />
    <Compile Include="System.ComponentModel.DataAnnotations\ScaffoldTableAttribute.cs" />
+   <Compile Include="System.ComponentModel.DataAnnotations.Schema\ColumnAttribute.cs" />
+   <Compile Include="System.ComponentModel.DataAnnotations.Schema\ComplexTypeAttribute.cs" />
+   <Compile Include="System.ComponentModel.DataAnnotations.Schema\DatabaseGeneratedAttribute.cs" />
+   <Compile Include="System.ComponentModel.DataAnnotations.Schema\DatabaseGeneratedOption.cs" />
+   <Compile Include="System.ComponentModel.DataAnnotations.Schema\ForeignKeyAttribute.cs" />
+   <Compile Include="System.ComponentModel.DataAnnotations.Schema\InversePropertyAttribute.cs" />
+   <Compile Include="System.ComponentModel.DataAnnotations.Schema\NotMappedAttribute.cs" />
+   <Compile Include="System.ComponentModel.DataAnnotations.Schema\TableAttribute.cs" />
    <Compile Include="System.ComponentModel.DataAnnotations\StringLengthAttribute.cs" />
+   <Compile Include="System.ComponentModel.DataAnnotations\TimestampAttribute.cs" />
    <Compile Include="System.ComponentModel.DataAnnotations\UIHintAttribute.cs" />
    <Compile Include="System.ComponentModel.DataAnnotations\ValidationAttributeCollectionExtensions.cs" />
    <Compile Include="System.ComponentModel.DataAnnotations\ValidationAttribute.cs" />
index ede9239b4ffcab6454ddeace7040080d4db2a339..2cd37c541cbcecb11d5db17cbc3cb57372d3035f 100644 (file)
@@ -47,6 +47,7 @@
    <Compile Include="Test\System\TimeZoneInfo.TransitionTimeTest.cs" />
    <Compile Include="Test\System.Collections.Generic\HashSetTest.cs" />
    <Compile Include="Test\System.IO.MemoryMappedFiles\MemoryMappedFileTest.cs" />
+   <Compile Include="Test\System.IO.Pipes\PipeSecurityTest.cs" />
    <Compile Include="Test\System.Linq\EnumerableFixture.cs" />
    <Compile Include="Test\System.Linq\EnumerableTest.cs" />
    <Compile Include="Test\System.Linq\EnumerableMoreTest.cs" />
index 20167b6446d538715f7a004ce057b45f8838875d..1e535823c16de9ab9fc98bae1a8bd4810aa0c1ff 100644 (file)
@@ -47,6 +47,7 @@
    <Compile Include="Test\System\TimeZoneInfo.TransitionTimeTest.cs" />
    <Compile Include="Test\System.Collections.Generic\HashSetTest.cs" />
    <Compile Include="Test\System.IO.MemoryMappedFiles\MemoryMappedFileTest.cs" />
+   <Compile Include="Test\System.IO.Pipes\PipeSecurityTest.cs" />
    <Compile Include="Test\System.Linq\EnumerableFixture.cs" />
    <Compile Include="Test\System.Linq\EnumerableTest.cs" />
    <Compile Include="Test\System.Linq\EnumerableMoreTest.cs" />
index 0cc3ef9238119eafa748c55257c09645b1cdb67d..a3fe26c87397898f141f6c9dbea9f5ad6025f9dc 100644 (file)
@@ -47,6 +47,7 @@
    <Compile Include="Test\System\TimeZoneInfo.TransitionTimeTest.cs" />
    <Compile Include="Test\System.Collections.Generic\HashSetTest.cs" />
    <Compile Include="Test\System.IO.MemoryMappedFiles\MemoryMappedFileTest.cs" />
+   <Compile Include="Test\System.IO.Pipes\PipeSecurityTest.cs" />
    <Compile Include="Test\System.Linq\EnumerableFixture.cs" />
    <Compile Include="Test\System.Linq\EnumerableTest.cs" />
    <Compile Include="Test\System.Linq\EnumerableMoreTest.cs" />
index 394b529af0346b0054391773a00f14ec5d0094a0..87d870b4debd974d7fdb3760977c7d22bf9a3f39 100644 (file)
@@ -69,7 +69,7 @@ namespace System.Linq.Parallel.QueryNodes
 
                internal IEnumerable<IGrouping<TKey, TElement>> GetGroupedElements ()
                {
-                       return GetStore ().Select ((e) => new ConcurrentGrouping<TKey, TElement> (e.Key, e.Value));
+                       return GetStore ().Select (e => (IGrouping<TKey,TElement>)new ConcurrentGrouping<TKey, TElement> (e.Key, e.Value));
                }
 
                internal ConcurrentDictionary<TKey, ConcurrentQueue<TElement>> GetStore ()
index ba6f8a39a0566c01ec3111a06e51ad2c1fa0bdb3..79ed83eb11cc5400c7cac2c21eb452a7a3469194 100644 (file)
@@ -121,9 +121,10 @@ namespace System.Linq.Parallel.QueryNodes
                        IEnumerator<V> eSecond = second.GetEnumerator ();
 
                        try {
-                               while (eFirst.MoveNext ()) {
-                                       if (!eSecond.MoveNext ())
-                                               yield break;
+                               bool fstHasCurrent = false, sndHasCurrent = false;
+                               Tuple<VSlot<U>, VSlot<V>> kvp;
+
+                               while ((fstHasCurrent = eFirst.MoveNext ()) & (sndHasCurrent = eSecond.MoveNext ())) {
 
                                        U e1 = eFirst.Current;
                                        V e2 = eSecond.Current;
@@ -136,8 +137,6 @@ namespace System.Linq.Parallel.QueryNodes
                                                continue;
                                        }
                                        
-                                       Tuple<VSlot<U>, VSlot<V>> kvp;
-                                       
                                        do {
                                                if (store.TryRemove (key1, out kvp) && kvp.Item2.HasValue) {
                                                        yield return resultor (e1, kvp.Item2.Value);
@@ -152,6 +151,32 @@ namespace System.Linq.Parallel.QueryNodes
                                                }
                                        } while (!store.TryAdd (key2, Tuple.Create (new VSlot<U> (), new VSlot<V> (e2))));
                                }
+                               if (fstHasCurrent) {
+                                       do {
+                                               U e1 = eFirst.Current;
+                                               TKey key1 = fKeySelect (e1);
+
+                                               do {
+                                                       if (store.TryRemove (key1, out kvp) && kvp.Item2.HasValue) {
+                                                               yield return resultor (e1, kvp.Item2.Value);
+                                                               break;
+                                                       }
+                                               } while (!store.TryAdd (key1, Tuple.Create (new VSlot<U> (e1), new VSlot<V> ())));
+                                       } while (eFirst.MoveNext ());
+                               }
+                               if (sndHasCurrent) {
+                                       do {
+                                               V e2 = eSecond.Current;
+                                               TKey key2 = sKeySelect (e2);
+
+                                               do {
+                                                       if (store.TryRemove (key2, out kvp) && kvp.Item1.HasValue) {
+                                                               yield return resultor (kvp.Item1.Value, e2);
+                                                               break;
+                                                       }
+                                               } while (!store.TryAdd (key2, Tuple.Create (new VSlot<U> (), new VSlot<V> (e2))));
+                                       } while (eSecond.MoveNext ());
+                               }
                        } finally {
                                eFirst.Dispose ();
                                eSecond.Dispose ();
index 62856779801d1a7ccbf60d9cd97be62fa5f17d81..9b9b475ac6807aa71047e8b93ff111d998d485d8 100644 (file)
@@ -43,6 +43,12 @@ namespace System.Linq.Parallel.QueryNodes
                        this.resultSelector = resultSelector;
                }
 
+               // If strict is set to `true', the zip'ing process will throw if sequences length mistmatches
+               public bool Strict {
+                       get;
+                       set;
+               }
+
                internal override IEnumerable<TResult> GetSequential ()
                {
                        IEnumerable<TFirst> first = Parent.GetSequential ();
@@ -71,11 +77,17 @@ namespace System.Linq.Parallel.QueryNodes
 
                        try {
                                while (eFirst.MoveNext ()) {
-                                       if (!eSecond.MoveNext ())
-                                               yield break;
+                                       if (!eSecond.MoveNext ()) {
+                                               if (Strict)
+                                                       throw new QueryZipException ();
+                                               else
+                                                       yield break;
+                                       }
 
                                        yield return resultSelector (eFirst.Current, eSecond.Current);
                                }
+                               if (Strict && eSecond.MoveNext ())
+                                       throw new QueryZipException ();
                        } finally {
                                eFirst.Dispose ();
                                eSecond.Dispose ();
@@ -115,8 +127,12 @@ namespace System.Linq.Parallel.QueryNodes
 
                        try {
                                while (eFirst.MoveNext ()) {
-                                       if (!eSecond.MoveNext ())
-                                               break;
+                                       if (!eSecond.MoveNext ()) {
+                                               if (Strict)
+                                                       throw new QueryZipException ();
+                                               else
+                                                       break;
+                                       }
 
                                        store1[index] = eFirst.Current;
                                        store2[index] = eSecond.Current;
@@ -126,6 +142,8 @@ namespace System.Linq.Parallel.QueryNodes
                                        yield return new KeyValuePair<long, TResult> (store1[index].Key,
                                                                                      resultSelector (store1[index].Value, store2[index].Value));
                                }
+                               if (Strict && eSecond.MoveNext ())
+                                       throw new QueryZipException ();
                        } finally {
                                barrier.RemoveParticipant ();
                                eFirst.Dispose ();
@@ -133,6 +151,10 @@ namespace System.Linq.Parallel.QueryNodes
                        }
                }
        }
+
+       internal class QueryZipException : Exception
+       {
+       }
 }
 
 #endif
index f62ba19b211ea7fffa12fb3ff86ce14c276231bc..b3239e4165fd4ea3c2dc806199774ea640f769c0 100644 (file)
@@ -56,7 +56,10 @@ namespace System.Linq.Parallel.QueryNodes
 
                internal static IList<IEnumerable<TEnum>> Wrap<TEnum> (this IList<IEnumerator<TEnum>> src)
                {
-                       return src.Select ((e) => (IEnumerable<TEnum>)new EnumeratorWrapper<TEnum> (e)).ToArray ();
+                       var list = new List<IEnumerable<TEnum>> (src.Count);
+                       foreach (var iterator in src)
+                               list.Add (new EnumeratorWrapper<TEnum> (iterator));
+                       return list;
                }
        }
 }
index a8c19d68b15b216db946af22625429c0db3ab5a2..96a5fe1f8e3f7d10c24b84cda5d57a66d17c14d6 100644 (file)
@@ -105,13 +105,18 @@ namespace System.Linq.Parallel
                                tasks[i] = Task.Factory.StartNew (() => {
                                        try {
                                                foreach (TElement item in enumerables[index]) {
-                                                       // This is from specific operators
-                                                       if (options.ImplementerToken.IsCancellationRequested)
+                                                       if (!CheckTokens (options))
                                                                break;
-                                                       if (options.Token.IsCancellationRequested)
-                                                               throw new OperationCanceledException (options.Token);
 
-                                                       call (item, src.Token);
+                                                       try {
+                                                               call (item, src.Token);
+                                                       } catch (OperationCanceledException canceledException) {
+                                                               if (canceledException.CancellationToken != src.Token)
+                                                                       throw canceledException;
+                                                       }
+
+                                                       if (!CheckTokens (options))
+                                                               break;
                                                }
                                        } finally {
                                                if (endAction != null)
@@ -123,18 +128,28 @@ namespace System.Linq.Parallel
                        return tasks;
                }
 
+               static bool CheckTokens (QueryOptions options)
+               {
+                       // This is from specific operators
+                       if (options.ImplementerToken.IsCancellationRequested)
+                               return false;
+                       if (options.Token.IsCancellationRequested)
+                               throw new OperationCanceledException (options.Token);
+                       return true;
+               }
+
                internal static void ProcessAndBlock<T> (QueryBaseNode<T> node, Action<T, CancellationToken> call)
                {
                        QueryOptions options = CheckQuery (node, true);
 
-                       Task[] tasks = Process (node, call, (n, o) => n.GetEnumerables (o), options);
+                       Task[] tasks = Process (node, call, new QueryBaseNodeHelper<T> ().GetEnumerables, options);
                        Task.WaitAll (tasks, options.Token);
                }
 
                internal static Action ProcessAndCallback<T> (QueryBaseNode<T> node, Action<T, CancellationToken> call,
                                                              Action callback, QueryOptions options)
                {
-                       Task[] tasks = Process (node, call, (n, o) => n.GetEnumerables (o), options);
+                       Task[] tasks = Process (node, call, new QueryBaseNodeHelper<T> ().GetEnumerables, options);
                        if (callback != null)
                                Task.Factory.ContinueWhenAll (tasks,  (_) => callback ());
 
@@ -145,7 +160,7 @@ namespace System.Linq.Parallel
                                                              Action endAction,
                                                              Action callback, QueryOptions options)
                {
-                       Task[] tasks = Process (node, call, (n, o) => n.GetOrderedEnumerables (o), endAction, options);
+                       Task[] tasks = Process (node, call, new QueryBaseNodeHelper<T> ().GetOrderedEnumerables, endAction, options);
                        if (callback != null)
                                Task.Factory.ContinueWhenAll (tasks,  (_) => callback ());
 
@@ -232,6 +247,19 @@ namespace System.Linq.Parallel
                                }
                        }
                }
+
+               class QueryBaseNodeHelper<T>
+               {
+                       internal IList<IEnumerable<T>> GetEnumerables (QueryBaseNode<T> source, QueryOptions options)
+                       {
+                               return source.GetEnumerables (options);
+                       }
+
+                       internal IList<IEnumerable<KeyValuePair<long,T>>> GetOrderedEnumerables (QueryBaseNode<T> source, QueryOptions options)
+                       {
+                               return source.GetOrderedEnumerables (options);
+                       }
+               }
        }
 }
 #endif
\ No newline at end of file
index d85d30c24c664ec234cb3530357cc11afb94a779..44b45c35820b330db69ccb304de3651155699521 100644 (file)
@@ -524,7 +524,7 @@ namespace System.Linq
                        if (comparer == null)
                                comparer = EqualityComparer<TSource>.Default;
 
-                       return Any<TSource> (source, (e) => comparer.Equals (value));
+                       return Any<TSource> (source, (e) => comparer.Equals (value, e));
                }
                #endregion
 
@@ -551,17 +551,24 @@ namespace System.Linq
                        if (comparer == null)
                                comparer = EqualityComparer<TSource>.Default;
 
-                       CancellationTokenSource source = new CancellationTokenSource ();
-                       ParallelQuery<bool> innerQuery
-                               = first.Zip (second, (e1, e2) => comparer.Equals (e1, e2)).Where ((e) => !e).WithImplementerToken (source);
+                       var source = new CancellationTokenSource ();
+                       var zip = new QueryZipNode<TSource, TSource, bool> (comparer.Equals, first.Node, second.Node) { Strict = true };
+                       var innerQuery = new ParallelQuery<bool> (zip).WithImplementerToken (source);
 
                        bool result = true;
 
                        try {
-                               innerQuery.ForAll ((value) => {
+                               innerQuery.ForAll (value => {
+                                       if (!value) {
                                                result = false;
                                                source.Cancel ();
-                                       });
+                                       }
+                               });
+                       } catch (AggregateException ex) {
+                               if (ex.InnerException is QueryZipException)
+                                       return false;
+                               else
+                                       throw ex;
                        } catch (OperationCanceledException e) {
                                if (e.CancellationToken != source.Token)
                                        throw e;
@@ -601,7 +608,7 @@ namespace System.Linq
                                                                                              Func<TSource, TKey> keySelector,
                                                                                              IEqualityComparer<TKey> comparer)
                {
-                       return source.GroupBy (keySelector, (e) => e, comparer);
+                       return source.GroupBy (keySelector, new Identity<TSource> ().Apply, comparer);
                }
                
                public static ParallelQuery<IGrouping<TKey, TElement>> GroupBy<TSource, TKey, TElement> (this ParallelQuery<TSource> source,
@@ -1079,10 +1086,11 @@ namespace System.Linq
                        if (source == null)
                                throw new ArgumentNullException ("source");
 
-                       return source.Aggregate<TSource, int, int> (() => 0,
-                                                                  (acc, e) => acc + 1,
-                                                                  (acc1, acc2) => acc1 + acc2,
-                                                                  (result) => result);
+                       var helper = new CountAggregateHelper<TSource> ();
+                       return source.Aggregate<TSource, int, int> (helper.Seed,
+                                                                   helper.Intermediate,
+                                                                   helper.Reducer,
+                                                                   helper.Final);
                }
 
                public static int Count<TSource> (this ParallelQuery<TSource> source, Func<TSource, bool> predicate)
@@ -1095,15 +1103,39 @@ namespace System.Linq
                        return source.Where (predicate).Count ();
                }
 
+               class CountAggregateHelper<TSource>
+               {
+                       public int Seed ()
+                       {
+                               return 0;
+                       }
+
+                       public int Intermediate (int acc, TSource e)
+                       {
+                               return acc + 1;
+                       }
+
+                       public int Reducer (int acc1, int acc2)
+                       {
+                               return acc1 + acc2;
+                       }
+
+                       public int Final (int acc)
+                       {
+                               return acc;
+                       }
+               }
+
                public static long LongCount<TSource> (this ParallelQuery<TSource> source)
                {
                        if (source == null)
                                throw new ArgumentNullException ("source");
 
-                       return source.Aggregate<TSource, long, long> (() => 0,
-                                                                     (acc, e) => acc + 1,
-                                                                     (acc1, acc2) => acc1 + acc2,
-                                                                     (result) => result);
+                       var helper = new LongCountAggregateHelper<TSource> ();
+                       return source.Aggregate<TSource, long, long> (helper.Seed,
+                                                                     helper.Intermediate,
+                                                                     helper.Reducer,
+                                                                     helper.Final);
                }
 
                public static long LongCount<TSource> (this ParallelQuery<TSource> source, Func<TSource, bool> predicate)
@@ -1115,6 +1147,29 @@ namespace System.Linq
 
                        return source.Where (predicate).LongCount ();
                }
+
+               class LongCountAggregateHelper<TSource>
+               {
+                       public long Seed ()
+                       {
+                               return 0;
+                       }
+
+                       public long Intermediate (long acc, TSource e)
+                       {
+                               return acc + 1;
+                       }
+
+                       public long Reducer (long acc1, long acc2)
+                       {
+                               return acc1 + acc2;
+                       }
+
+                       public long Final (long acc)
+                       {
+                               return acc;
+                       }
+               }
                #endregion
 
                #region Average
@@ -1496,50 +1551,76 @@ namespace System.Linq
                #endregion
 
                #region Min-Max
-               static T BestOrder<T> (ParallelQuery<T> source, Func<T, T, bool> bestSelector, T seed)
+               static T BestOrder<T> (ParallelQuery<T> source, BestOrderComparer<T> bestOrderComparer)
                {
                        if (source == null)
                                throw new ArgumentNullException ("source");
 
-                       T best = seed;
-
-                       best = source.Aggregate (() => seed,
-                                               (first, second) => (bestSelector(first, second)) ? first : second,
-                                               (first, second) => (bestSelector(first, second)) ? first : second,
-                                               (e) => e);
+                       T best = source.Aggregate (bestOrderComparer.Seed,
+                                                  bestOrderComparer.Intermediate,
+                                                  bestOrderComparer.Intermediate,
+                                                  new Identity<T> ().Apply);
                        return best;
                }
 
+               class BestOrderComparer<T>
+               {
+                       IComparer<T> comparer;
+                       int inverter;
+                       T seed;
+
+                       public BestOrderComparer (IComparer<T> comparer, int inverter, T seed)
+                       {
+                               this.comparer = comparer;
+                               this.inverter = inverter;
+                               this.seed = seed;
+                       }
+
+                       public T Seed ()
+                       {
+                               return seed;
+                       }
+
+                       public T Intermediate (T first, T second)
+                       {
+                               return Better (first, second) ? first : second;
+                       }
+
+                       bool Better (T first, T second)
+                       {
+                               return (inverter * comparer.Compare (first, second)) > 0;
+                       }
+               }
+
                public static int Min (this ParallelQuery<int> source)
                {
-                       return BestOrder (source, (first, second) => first < second, int.MaxValue);
+                       return BestOrder (source, new BestOrderComparer<int> (Comparer<int>.Default, -1, int.MaxValue));
                }
 
                public static long Min (this ParallelQuery<long> source)
                {
-                       return BestOrder (source, (first, second) => first < second, long.MaxValue);
+                       return BestOrder (source, new BestOrderComparer<long> (Comparer<long>.Default, -1, long.MaxValue));
                }
 
                public static float Min (this ParallelQuery<float> source)
                {
-                       return BestOrder (source, (first, second) => first < second, float.MaxValue);
+                       return BestOrder (source, new BestOrderComparer<float> (Comparer<float>.Default, -1, float.MaxValue));
                }
 
                public static double Min (this ParallelQuery<double> source)
                {
-                       return BestOrder (source, (first, second) => first < second, double.MaxValue);
+                       return BestOrder (source, new BestOrderComparer<double> (Comparer<double>.Default, -1, double.MaxValue));
                }
 
                public static decimal Min (this ParallelQuery<decimal> source)
                {
-                       return BestOrder (source, (first, second) => first < second, decimal.MaxValue);
+                       return BestOrder (source, new BestOrderComparer<decimal> (Comparer<decimal>.Default, -1, decimal.MaxValue));
                }
 
                public static TSource Min<TSource> (this ParallelQuery<TSource> source)
                {
                        IComparer<TSource> comparer = Comparer<TSource>.Default;
-
-                       return BestOrder (source, (first, second) => comparer.Compare (first, second) < 0, default (TSource));
+                       return BestOrder (source, new BestOrderComparer<TSource> (comparer, -1, default (TSource)));
                }
 
                public static TResult Min<TSource, TResult> (this ParallelQuery<TSource> source, Func<TSource, TResult> selector)
@@ -1694,34 +1775,33 @@ namespace System.Linq
 
                public static int Max (this ParallelQuery<int> source)
                {
-                       return BestOrder (source, (first, second) => first > second, int.MinValue);
+                       return BestOrder (source, new BestOrderComparer<int> (Comparer<int>.Default, 1, int.MinValue));
                }
 
-               public static long Max(this ParallelQuery<long> source)
+               public static long Max (this ParallelQuery<long> source)
                {
-                       return BestOrder(source, (first, second) => first > second, long.MinValue);
+                       return BestOrder (source, new BestOrderComparer<long> (Comparer<long>.Default, 1, long.MinValue));
                }
 
                public static float Max (this ParallelQuery<float> source)
                {
-                       return BestOrder(source, (first, second) => first > second, float.MinValue);
+                       return BestOrder (source, new BestOrderComparer<float> (Comparer<float>.Default, 1, float.MinValue));
                }
 
                public static double Max (this ParallelQuery<double> source)
                {
-                       return BestOrder(source, (first, second) => first > second, double.MinValue);
+                       return BestOrder (source, new BestOrderComparer<double> (Comparer<double>.Default, 1, double.MinValue));
                }
 
                public static decimal Max (this ParallelQuery<decimal> source)
                {
-                       return BestOrder(source, (first, second) => first > second, decimal.MinValue);
+                       return BestOrder (source, new BestOrderComparer<decimal> (Comparer<decimal>.Default, 1, decimal.MinValue));
                }
 
                public static TSource Max<TSource> (this ParallelQuery<TSource> source)
                {
                        IComparer<TSource> comparer = Comparer<TSource>.Default;
-
-                       return BestOrder (source, (first, second) => comparer.Compare (first, second) > 0, default (TSource));
+                       return BestOrder (source, new BestOrderComparer<TSource> (comparer, 1, default (TSource)));
                }
 
                public static TResult Max<TSource, TResult> (this ParallelQuery<TSource> source, Func<TSource, TResult> selector)
@@ -1912,13 +1992,39 @@ namespace System.Linq
                        if (source.Node.IsOrdered ())
                                return ToListOrdered (source);
 
-                       List<TSource> temp = source.Aggregate (() => new List<TSource>(50),
-                                                              (list, e) => { list.Add (e); return list; },
-                                                              (list, list2) => { list.AddRange (list2); return list; },
-                                                              (list) => list);
+                       var helper = new ListAggregateHelper<TSource> ();
+                       List<TSource> temp = source.Aggregate (helper.Seed,
+                                                              helper.Intermediate,
+                                                              helper.Reducer,
+                                                              helper.Final);
                        return temp;
                }
 
+               class ListAggregateHelper<TSource>
+               {
+                       public List<TSource> Seed ()
+                       {
+                               return new List<TSource> (50);
+                       }
+
+                       public List<TSource> Intermediate (List<TSource> list, TSource e)
+                       {
+                               list.Add (e);
+                               return list;
+                       }
+
+                       public List<TSource> Reducer (List<TSource> list, List<TSource> list2)
+                       {
+                               list.AddRange (list2);
+                               return list;
+                       }
+
+                       public List<TSource> Final (List<TSource> list)
+                       {
+                               return list;
+                       }
+               }
+
                internal static List<TSource> ToListOrdered<TSource> (this ParallelQuery<TSource> source)
                {
                        List<TSource> result = new List<TSource> ();
@@ -1937,32 +2043,50 @@ namespace System.Linq
                        if (source.Node.IsOrdered ())
                                return ToListOrdered (source).ToArray ();
 
-                       TSource[] result = null;
+                       var helper = new ArrayAggregateHelper<TSource> ();
+                       ParallelExecuter.ProcessAndAggregate<TSource, List<TSource>> (source.Node,
+                                                                                     helper.Seed,
+                                                                                     helper.Intermediate,
+                                                                                     helper.Final);
+
+                       return helper.Result;
+               }
+
+               class ArrayAggregateHelper<TSource>
+               {
+                       TSource[] result;
+
+                       public TSource[] Result {
+                               get {
+                                       return result;
+                               }
+                       }
+
+                       internal List<TSource> Seed ()
+                       {
+                               return new List<TSource> ();
+                       }
 
-                       Func<List<TSource>, TSource, List<TSource>> intermediate = (list, e) => {
-                               list.Add (e); return list;
-                       };
+                       internal List<TSource> Intermediate (List<TSource> list, TSource e)
+                       {
+                               list.Add (e);
+                               return list;
+                       }
 
-                       Action<IList<List<TSource>>> final = (list) => {
+                       internal void Final (IList<List<TSource>> list)
+                       {
                                int count = 0;
 
                                for (int i = 0; i < list.Count; i++)
-                                 count += list[i].Count;
+                                       count += list[i].Count;
 
                                result = new TSource[count];
                                int insertIndex = -1;
 
                                for (int i = 0; i < list.Count; i++)
-                                 for (int j = 0; j < list[i].Count; j++)
-                                   result [++insertIndex] = list[i][j];
-                       };
-
-                       ParallelExecuter.ProcessAndAggregate<TSource, List<TSource>> (source.Node,
-                                                                                     () => new List<TSource> (),
-                                                                                     intermediate,
-                                                                                     final);
-
-                       return result;
+                                       for (int j = 0; j < list[i].Count; j++)
+                                               result [++insertIndex] = list[i][j];
+                       }
                }
 
                public static Dictionary<TKey, TSource> ToDictionary<TSource, TKey> (this ParallelQuery<TSource> source,
@@ -1999,10 +2123,49 @@ namespace System.Linq
                        if (elementSelector == null)
                                throw new ArgumentNullException ("elementSelector");
 
-                       return source.Aggregate (() => new Dictionary<TKey, TElement> (comparer),
-                                                 (d, e) => { d.Add (keySelector (e), elementSelector (e)); return d; },
-                                                 (d1, d2) => { foreach (var couple in d2) d1.Add (couple.Key, couple.Value); return d1; },
-                                                 (d) => d);
+                       var helper = new DictionaryAggregateHelper<TSource, TKey, TElement> (comparer, keySelector, elementSelector);
+                       return source.Aggregate (helper.Seed,
+                                                helper.Intermediate,
+                                                helper.Reducer,
+                                                helper.Final);
+               }
+
+               class DictionaryAggregateHelper<TSource, TKey, TElement>
+               {
+                       IEqualityComparer<TKey> comparer;
+                       Func<TSource, TKey> keySelector;
+                       Func<TSource, TElement> elementSelector;
+
+                       public DictionaryAggregateHelper (IEqualityComparer<TKey> comparer,
+                                                         Func<TSource, TKey> keySelector,
+                                                         Func<TSource, TElement> elementSelector)
+                       {
+                               this.comparer = comparer;
+                               this.keySelector = keySelector;
+                               this.elementSelector = elementSelector;
+                       }
+
+                       public Dictionary<TKey, TElement> Seed ()
+                       {
+                               return new Dictionary<TKey, TElement> (comparer);
+                       }
+
+                       public Dictionary<TKey, TElement> Intermediate (Dictionary<TKey, TElement> d, TSource e)
+                       {
+                               d.Add (keySelector (e), elementSelector (e));
+                               return d;
+                       }
+
+                       public Dictionary<TKey, TElement> Reducer (Dictionary<TKey, TElement> d1, Dictionary<TKey, TElement> d2)
+                       {
+                               foreach (var couple in d2) d1.Add (couple.Key, couple.Value);
+                               return d1;
+                       }
+
+                       public Dictionary<TKey, TElement> Final (Dictionary<TKey, TElement> d)
+                       {
+                               return d;
+                       }
                }
 
                public static ILookup<TKey, TSource> ToLookup<TSource, TKey> (this ParallelQuery<TSource> source,
@@ -2153,6 +2316,17 @@ namespace System.Linq
                        throw new NotSupportedException ();
                }
                #endregion
+
+               #region Helpers
+
+               class Identity<T>
+               {
+                       public T Apply (T input)
+                       {
+                               return input;
+                       }
+               }
+               #endregion
        }
 }
 #endif
index f84ebcec2c09fb4f017ae136da69f30cc11c5fee..0b02d7bf9a8ded26323860f91314978d988f1879 100644 (file)
@@ -33,11 +33,18 @@ using System.Threading.Tasks;
 
 namespace System.Threading.Tasks 
 {
-       public static class TaskExtensions
+#if INSIDE_SYSCORE
+       public
+#endif
+       static class TaskExtensions
        {
                const TaskContinuationOptions opt = TaskContinuationOptions.ExecuteSynchronously;
 
+#if INSIDE_SYSCORE
                public static Task<TResult> Unwrap<TResult> (this Task<Task<TResult>> task)
+#else
+               internal static Task<TResult> Unwrap<TResult> (Task<Task<TResult>> task)
+#endif
                {
                        if (task == null)
                                throw new ArgumentNullException ("task");
@@ -49,7 +56,11 @@ namespace System.Threading.Tasks
                        return src.Task;
                }
 
+#if INSIDE_SYSCORE
                public static Task Unwrap (this Task<Task> task)
+#else
+               internal static Task Unwrap (Task<Task> task)
+#endif
                {
                        if (task == null)
                                throw new ArgumentNullException ("task");
index 74320c1e42911011fdee896d90bcf9adf1417faa..512f97b27cb15619cd97894d61102b3cb895806d 100644 (file)
@@ -261,6 +261,7 @@ namespace System.Threading {
 
                                int stateCheck = isUpgradable ? RwWaitUpgrade + RwWait : RwWait;
                                long start = millisecondsTimeout == -1 ? 0 : sw.ElapsedMilliseconds;
+                               int registration = isUpgradable ? RwWaitUpgrade : RwWait;
 
                                do {
                                        int state = rwlock;
@@ -268,7 +269,8 @@ namespace System.Threading {
                                        if (state <= stateCheck) {
                                                try {}
                                                finally {
-                                                       if (Interlocked.CompareExchange (ref rwlock, RwWrite, state) == state) {
+                                                       var toWrite = state + RwWrite - (registered ? registration : 0);
+                                                       if (Interlocked.CompareExchange (ref rwlock, toWrite, state) == state) {
                                                                writerDoneEvent.Reset ();
                                                                ctstate.LockState ^= LockState.Write;
                                                                ++ctstate.WriterRecursiveCount;
@@ -452,7 +454,7 @@ namespace System.Threading {
                                return rwlock >= RwRead && CurrentThreadState.LockState.Has (LockState.Read);
                        }
                }
-               
+
                public bool IsWriteLockHeld {
                        get {
                                return (rwlock & RwWrite) > 0 && CurrentThreadState.LockState.Has (LockState.Write);
index 5e7953b85a5f3b2b8a6757bd0fd7ff6afc3cc6db..f3a2a643b28be4c54d1234d44be18356b48a5bbc 100644 (file)
@@ -89,7 +89,7 @@ namespace System
                                        local = ZoneInfoDB.Default;
 #elif MONOTOUCH
                                        using (Stream stream = GetMonoTouchDefault ()) {
-                                               return BuildFromStream ("Local", stream);
+                                               local = BuildFromStream ("Local", stream);
                                        }
 #elif LIBC
                                        try {
@@ -136,7 +136,7 @@ namespace System
                        }
                }
 #if LIBC
-               static string timeZoneDirectory = null;
+               static string timeZoneDirectory;
                static string TimeZoneDirectory {
                        get {
                                if (timeZoneDirectory == null)
@@ -176,7 +176,7 @@ namespace System
                        return str.Substring (Istart, Iend-Istart+1);
                }
                
-               static RegistryKey timeZoneKey = null;
+               static RegistryKey timeZoneKey;
                static RegistryKey TimeZoneKey {
                        get {
                                if (timeZoneKey != null)
@@ -190,7 +190,7 @@ namespace System
                        }
                }
                
-               static RegistryKey localZoneKey = null;
+               static RegistryKey localZoneKey;
                static RegistryKey LocalZoneKey {
                        get {
                                if (localZoneKey != null)
@@ -220,10 +220,10 @@ namespace System
                public static DateTime ConvertTime (DateTime dateTime, TimeZoneInfo sourceTimeZone, TimeZoneInfo destinationTimeZone)
                {
                        if (dateTime.Kind == DateTimeKind.Local && sourceTimeZone != TimeZoneInfo.Local)
-                               throw new ArgumentException ("Kind propery of dateTime is Local but the sourceTimeZone does not equal TimeZoneInfo.Local");
+                               throw new ArgumentException ("Kind property of dateTime is Local but the sourceTimeZone does not equal TimeZoneInfo.Local");
 
                        if (dateTime.Kind == DateTimeKind.Utc && sourceTimeZone != TimeZoneInfo.Utc)
-                               throw new ArgumentException ("Kind propery of dateTime is Utc but the sourceTimeZone does not equal TimeZoneInfo.Utc");
+                               throw new ArgumentException ("Kind property of dateTime is Utc but the sourceTimeZone does not equal TimeZoneInfo.Utc");
 
                        if (sourceTimeZone.IsInvalidTime (dateTime))
                                throw new ArgumentException ("dateTime parameter is an invalid time");
@@ -309,10 +309,10 @@ namespace System
                                throw new ArgumentNullException ("sourceTimeZone");
 
                        if (dateTime.Kind == DateTimeKind.Utc && sourceTimeZone != TimeZoneInfo.Utc)
-                               throw new ArgumentException ("Kind propery of dateTime is Utc but the sourceTimeZone does not equal TimeZoneInfo.Utc");
+                               throw new ArgumentException ("Kind property of dateTime is Utc but the sourceTimeZone does not equal TimeZoneInfo.Utc");
 
                        if (dateTime.Kind == DateTimeKind.Local && sourceTimeZone != TimeZoneInfo.Local)
-                               throw new ArgumentException ("Kind propery of dateTime is Local but the sourceTimeZone does not equal TimeZoneInfo.Local");
+                               throw new ArgumentException ("Kind property of dateTime is Local but the sourceTimeZone does not equal TimeZoneInfo.Local");
 
                        if (sourceTimeZone.IsInvalidTime (dateTime))
                                throw new ArgumentException ("dateTime parameter is an invalid time");
@@ -587,7 +587,7 @@ namespace System
                }
 
                //FIXME: change this to a generic Dictionary and allow caching for FindSystemTimeZoneById
-               private static List<TimeZoneInfo> systemTimeZones = null;
+               private static List<TimeZoneInfo> systemTimeZones;
                public static ReadOnlyCollection<TimeZoneInfo> GetSystemTimeZones ()
                {
                        if (systemTimeZones == null) {
@@ -605,7 +605,9 @@ namespace System
 #endif
 #if MONODROID
                        foreach (string id in ZoneInfoDB.GetAvailableIds ()) {
-                               systemTimeZones.Add (ZoneInfoDB.GetTimeZone (id));
+                               var tz = ZoneInfoDB.GetTimeZone (id);
+                               if (tz != null)
+                                       systemTimeZones.Add (tz);
                        }
 #elif MONOTOUCH
                                if (systemTimeZones.Count == 0) {
index 4381fca2025dd2f932f1932ed579da8e0b0a1271..a11a2d2d1de9ea37083df63429f97802fce1d0e3 100644 (file)
@@ -611,6 +611,15 @@ namespace MonoTests.System.Linq
                        });
                }
 
+               [Test]
+               public void SmallJoinTest ()
+               {
+                       var items = new [] { 1, 2, 3 };
+                       var items2 = new [] { 1, 2, 3, 4 };
+                       var actual = items.AsReallyParallel ().Join (items2.AsReallyParallel (), i => i, i => i, (e1, e2) => e1 + e2);
+                       AreEquivalent (new[] { 2, 4, 6 }, actual, 1);
+               }
+
                [Test]
                [Category ("NotWorking")] // Deadlocks randomly
                public void TestGroupBy ()
@@ -890,6 +899,35 @@ namespace MonoTests.System.Linq
                        Assert.IsFalse (data.AsReallyParallel ().All (x => x != 1));
                        Assert.IsTrue (empty.AsReallyParallel ().All (x => false));
                }
+
+               [Test]
+               public void SequenceEqualsTest ()
+               {
+                       var data1 = new int[] { 1, 2, 3 };
+                       var data2 = new int[] { 1, 2, 4 };
+                       var data3 = new int[] { 1, 2, 3, 4 };
+
+                       Assert.IsTrue (data1.AsReallyParallel ().SequenceEqual (data1.AsReallyParallel ()));
+                       Assert.IsTrue (data2.AsReallyParallel ().SequenceEqual (data2.AsReallyParallel ()));
+                       Assert.IsTrue (data3.AsReallyParallel ().SequenceEqual (data3.AsReallyParallel ()));
+                       Assert.IsFalse (data1.AsReallyParallel ().SequenceEqual (data2.AsReallyParallel ()));
+                       Assert.IsFalse (data1.AsReallyParallel ().SequenceEqual (data3.AsReallyParallel ()));
+                       Assert.IsFalse (data2.AsReallyParallel ().SequenceEqual (data3.AsReallyParallel ()));
+               }
+
+               [Test]
+               public void ContainsTest ()
+               {
+                       var data1 = new int[] { 1, 2, 3 };
+                       var data2 = new int[] { 1, 2, 4 };
+                       var data3 = new int[] { 1, 2, 3, 4 };
+
+                       Assert.IsTrue (data1.AsReallyParallel ().Contains (3));
+                       Assert.IsFalse (data2.AsReallyParallel ().Contains (3));
+                       Assert.IsTrue (data3.AsReallyParallel ().Contains (3));
+                       Assert.IsFalse (data3.AsReallyParallel ().Contains (5));
+                       Assert.IsTrue (data2.AsReallyParallel ().Contains (2));
+               }
        }
 }
 
index ed20b5e289bfdb0c89b4d32ccdf974536fbe9676..06de33e9ab7262167833ebc8d6cf178b04c4713f 100644 (file)
@@ -384,6 +384,15 @@ namespace MonoTests.System
                                Assert.AreEqual (utc, back);
                
                        }
+
+                       [Test]
+                       public void ConvertToTimeZone ()
+                       {
+                               if (Environment.OSVersion.Platform != PlatformID.Unix)
+                                       return;
+
+                               TimeZoneInfo.ConvertTime (DateTime.Now, TimeZoneInfo.FindSystemTimeZoneById("Pacific/Auckland"));
+                       }
                }
                
                [TestFixture]
diff --git a/mcs/class/System.Drawing/Assembly/Shield.ico b/mcs/class/System.Drawing/Assembly/Shield.ico
new file mode 100644 (file)
index 0000000..b5c3b81
Binary files /dev/null and b/mcs/class/System.Drawing/Assembly/Shield.ico differ
index de2889f043fc04a5903451a9174a39d3e55d80e9..ceecdb8b168acb68ce2a42c66594b5a432ef2073 100644 (file)
@@ -7,7 +7,7 @@ LIBRARY = System.Drawing.dll
 LIB_MCS_FLAGS = /unsafe /r:$(corlib) /r:System.dll \
        -resource:Assembly/Mono.ico,Mono.ico -resource:Assembly/Information.ico,Information.ico \
        -resource:Assembly/Error.ico,Error.ico -resource:Assembly/Warning.ico,Warning.ico \
-       -resource:Assembly/Question.ico,Question.ico
+       -resource:Assembly/Question.ico,Question.ico -resource:Assembly/Shield.ico,Shield.ico
 
 TEST_MCS_FLAGS = $(LIB_MCS_FLAGS) -define:TEST -resource:Test/resources/indexed.png,indexed.png \
         -r:System.Drawing.dll -r:System.Runtime.Serialization.Formatters.Soap.dll -r:System.Xml.dll \
@@ -64,4 +64,5 @@ EXTRA_DISTFILES = Test/resources/indexed.png  \
        Assembly/Warning.ico            \
        Assembly/WinLogo.ico            \
        Assembly/Mono.ico               \
+       Assembly/Shield.ico             \
        nunit-host-ignore-list
index 42a918c7eb903a03108d3d229ba8a0503ae32792..cfb8745e3185ffb8666a219dffe9a04d0b8b7384 100644 (file)
   </PropertyGroup>\r
   <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
   <ItemGroup>\r
-   <Compile Include="Assembly\AssemblyInfo.cs" />
-   <Compile Include="..\..\build\common\Consts.cs" />
-   <Compile Include="..\..\build\common\Locale.cs" />
-   <Compile Include="System.Drawing\Bitmap.cs" />
-   <Compile Include="System.Drawing\Brush.cs" />
-   <Compile Include="System.Drawing\Brushes.cs" />
-   <Compile Include="System.Drawing\BufferedGraphics.cs" />
-   <Compile Include="System.Drawing\BufferedGraphicsManager.cs" />
-   <Compile Include="System.Drawing\BufferedGraphicsContext.cs" />
-   <Compile Include="System.Drawing\CharacterRange.cs" />
-   <Compile Include="System.Drawing\macFunctions.cs" />
-   <Compile Include="System.Drawing\ColorConverter.cs" />
-   <Compile Include="System.Drawing\Color.cs" />
-   <Compile Include="System.Drawing\ColorTranslator.cs" />
-   <Compile Include="System.Drawing\ComIStreamMarshaler.cs" />
-   <Compile Include="System.Drawing\ComIStreamWrapper.cs" />
-   <Compile Include="System.Drawing\ContentAlignment.cs" />
-   <Compile Include="System.Drawing\CopyPixelOperation.cs" />
-   <Compile Include="System.Drawing\Font.cs" />
-   <Compile Include="System.Drawing\FontConverter.cs" />
-   <Compile Include="System.Drawing\FontFamily.cs" />
-   <Compile Include="System.Drawing\FontStyle.cs" />
-   <Compile Include="System.Drawing\Graphics.cs" />
-   <Compile Include="System.Drawing\GraphicsUnit.cs" />
-   <Compile Include="System.Drawing\gdipEnums.cs" />
-   <Compile Include="System.Drawing\gdipFunctions.cs" />
-   <Compile Include="System.Drawing\gdipStructs.cs" />
-   <Compile Include="System.Drawing\KnownColor.cs" />
-   <Compile Include="System.Drawing\KnownColors.cs" />
-   <Compile Include="System.Drawing\IconConverter.cs" />
-   <Compile Include="System.Drawing\Icon.cs" />
-   <Compile Include="System.Drawing\IDeviceContext.cs" />
-   <Compile Include="System.Drawing\ImageAnimator.cs" />
-   <Compile Include="System.Drawing\ImageConverter.cs" />
-   <Compile Include="System.Drawing\Image.cs" />
-   <Compile Include="System.Drawing\ImageFormatConverter.cs" />
-   <Compile Include="System.Drawing\Pen.cs" />
-   <Compile Include="System.Drawing\Pens.cs" />
-   <Compile Include="System.Drawing\PointConverter.cs" />
-   <Compile Include="System.Drawing\Point.cs" />
-   <Compile Include="System.Drawing\PointF.cs" />
-   <Compile Include="System.Drawing\RectangleConverter.cs" />
-   <Compile Include="System.Drawing\Rectangle.cs" />
-   <Compile Include="System.Drawing\RectangleF.cs" />
-   <Compile Include="System.Drawing\Region.cs" />
-   <Compile Include="System.Drawing\RotateFlipType.cs" />
-   <Compile Include="System.Drawing\SizeConverter.cs" />
-   <Compile Include="System.Drawing\Size.cs" />
-   <Compile Include="System.Drawing\SizeF.cs" />
-   <Compile Include="System.Drawing\SizeFConverter.cs" />
-   <Compile Include="System.Drawing\SolidBrush.cs" />
-   <Compile Include="System.Drawing\SRDescriptionAttribute.cs" />
-   <Compile Include="System.Drawing\StringAligment.cs" />
-   <Compile Include="System.Drawing\StringDigitSubstitute.cs" />
-   <Compile Include="System.Drawing\StringFormat.cs" />
-   <Compile Include="System.Drawing\StringFormatFlags.cs" />
-   <Compile Include="System.Drawing\StringTrimming.cs" />
-   <Compile Include="System.Drawing\StringUnit.cs" />
-   <Compile Include="System.Drawing\SystemBrushes.cs" />
-   <Compile Include="System.Drawing\SystemColors.cs" />
-   <Compile Include="System.Drawing\SystemFonts.cs" />
-   <Compile Include="System.Drawing\SystemIcons.cs" />
-   <Compile Include="System.Drawing\SystemPens.cs" />
-   <Compile Include="System.Drawing\TextureBrush.cs" />
-   <Compile Include="System.Drawing\ToolboxBitmapAttribute.cs" />
-   <Compile Include="System.Drawing.Design\UITypeEditorEditStyle.cs" />
-   <Compile Include="System.Drawing.Design\IPropertyValueUIService.cs" />
-   <Compile Include="System.Drawing.Design\IToolboxItemProvider.cs" />
-   <Compile Include="System.Drawing.Design\PropertyValueItem.cs" />
-   <Compile Include="System.Drawing.Design\PropertyValueUIHandler.cs" />
-   <Compile Include="System.Drawing.Design\PropertyValueUIItemInvokeHandler.cs" />
-   <Compile Include="System.Drawing.Design\CategoryNameCollection.cs" />
-   <Compile Include="System.Drawing.Design\IToolboxService.cs" />
-   <Compile Include="System.Drawing.Design\IToolboxUser.cs" />
-   <Compile Include="System.Drawing.Design\PaintValueEventArgs.cs" />
-   <Compile Include="System.Drawing.Design\ToolboxComponentsCreatedEventArgs.cs" />
-   <Compile Include="System.Drawing.Design\ToolboxComponentsCreatedEventHandler.cs" />
-   <Compile Include="System.Drawing.Design\ToolboxComponentsCreatingEventArgs.cs" />
-   <Compile Include="System.Drawing.Design\ToolboxComponentsCreatingEventHandler.cs" />
-   <Compile Include="System.Drawing.Design\ToolboxItemCreatorCallback.cs" />
-   <Compile Include="System.Drawing.Design\ToolboxItem.cs" />
-   <Compile Include="System.Drawing.Design\UITypeEditor.cs" />
-   <Compile Include="System.Drawing.Design\ToolboxItemCollection.cs" />
-   <Compile Include="System.Drawing.Drawing2D\AdjustableArrowCap.cs" />
-   <Compile Include="System.Drawing.Drawing2D\Blend.cs" />
-   <Compile Include="System.Drawing.Drawing2D\ColorBlend.cs" />
-   <Compile Include="System.Drawing.Drawing2D\CombineMode.cs" />
-   <Compile Include="System.Drawing.Drawing2D\CompostingMode.cs" />
-   <Compile Include="System.Drawing.Drawing2D\CompostingQuality.cs" />
-   <Compile Include="System.Drawing.Drawing2D\CoordinateSpace.cs" />
-   <Compile Include="System.Drawing.Drawing2D\CustomLineCap.cs" />
-   <Compile Include="System.Drawing.Drawing2D\DashCap.cs" />
-   <Compile Include="System.Drawing.Drawing2D\DashStyle.cs" />
-   <Compile Include="System.Drawing.Drawing2D\FillMode.cs" />
-   <Compile Include="System.Drawing.Drawing2D\FlushIntention.cs" />
-   <Compile Include="System.Drawing.Drawing2D\GraphicsContainer.cs" />
-   <Compile Include="System.Drawing.Drawing2D\GraphicsPath.cs" />
-   <Compile Include="System.Drawing.Drawing2D\GraphicsPathIterator.cs" />
-   <Compile Include="System.Drawing.Drawing2D\GraphicsState.cs" />
-   <Compile Include="System.Drawing.Drawing2D\HatchBrush.cs" />
-   <Compile Include="System.Drawing.Drawing2D\HatchStyle.cs" />
-   <Compile Include="System.Drawing.Drawing2D\InterpolationMode.cs" />
-   <Compile Include="System.Drawing.Drawing2D\LinearGradientBrush.cs" />
-   <Compile Include="System.Drawing.Drawing2D\LinearGradientMode.cs" />
-   <Compile Include="System.Drawing.Drawing2D\LineCap.cs" />
-   <Compile Include="System.Drawing.Drawing2D\LineJoin.cs" />
-   <Compile Include="System.Drawing.Drawing2D\Matrix.cs" />
-   <Compile Include="System.Drawing.Drawing2D\MatrixOrder.cs" />
-   <Compile Include="System.Drawing.Drawing2D\PathData.cs" />
-   <Compile Include="System.Drawing.Drawing2D\PathGradientBrush.cs" />
-   <Compile Include="System.Drawing.Drawing2D\PathPointType.cs" />
-   <Compile Include="System.Drawing.Drawing2D\PenAlignment.cs" />
-   <Compile Include="System.Drawing.Drawing2D\PenType.cs" />
-   <Compile Include="System.Drawing.Drawing2D\PixelOffsetMode.cs" />
-   <Compile Include="System.Drawing.Drawing2D\QualityMode.cs" />
-   <Compile Include="System.Drawing.Drawing2D\RegionData.cs" />
-   <Compile Include="System.Drawing.Drawing2D\SmoothingMode.cs" />
-   <Compile Include="..\..\build\common\MonoTODOAttribute.cs" />
-   <Compile Include="System.Drawing.Drawing2D\WarpMode.cs" />
-   <Compile Include="System.Drawing.Drawing2D\WrapMode.cs" />
-   <Compile Include="System.Drawing.Imaging\BitmapData.cs" />
-   <Compile Include="System.Drawing.Imaging\ColorAdjustType.cs" />
-   <Compile Include="System.Drawing.Imaging\ColorChannelFlag.cs" />
-   <Compile Include="System.Drawing.Imaging\ColorMap.cs" />
-   <Compile Include="System.Drawing.Imaging\ColorMapType.cs" />
-   <Compile Include="System.Drawing.Imaging\ColorMatrix.cs" />
-   <Compile Include="System.Drawing.Imaging\ColorMatrixFlag.cs" />
-   <Compile Include="System.Drawing.Imaging\ColorMode.cs" />
-   <Compile Include="System.Drawing.Imaging\ColorPalette.cs" />
-   <Compile Include="System.Drawing.Imaging\EmfPlusRecordType.cs" />
-   <Compile Include="System.Drawing.Imaging\EmfType.cs" />
-   <Compile Include="System.Drawing.Imaging\Encoder.cs" />
-   <Compile Include="System.Drawing.Imaging\EncoderParameter.cs" />
-   <Compile Include="System.Drawing.Imaging\EncoderParameters.cs" />
-   <Compile Include="System.Drawing.Imaging\EncoderParameterValueType.cs" />
-   <Compile Include="System.Drawing.Imaging\EncoderValue.cs" />
-   <Compile Include="System.Drawing.Imaging\FrameDimension.cs" />
-   <Compile Include="System.Drawing.Imaging\ImageAttributes.cs" />
-   <Compile Include="System.Drawing.Imaging\ImageCodecFlags.cs" />
-   <Compile Include="System.Drawing.Imaging\ImageCodecInfo.cs" />
-   <Compile Include="System.Drawing.Imaging\ImageFlags.cs" />
-   <Compile Include="System.Drawing.Imaging\ImageFormat.cs" />
-   <Compile Include="System.Drawing.Imaging\ImageLockMode.cs" />
-   <Compile Include="System.Drawing.Imaging\Metafile.cs" />
-   <Compile Include="System.Drawing.Imaging\MetafileFrameUnit.cs" />
-   <Compile Include="System.Drawing.Imaging\MetafileHeader.cs" />
-   <Compile Include="System.Drawing.Imaging\MetafileType.cs" />
-   <Compile Include="System.Drawing.Imaging\MetaHeader.cs" />
-   <Compile Include="System.Drawing.Imaging\PaletteFlags.cs" />
-   <Compile Include="System.Drawing.Imaging\PixelFormat.cs" />
-   <Compile Include="System.Drawing.Imaging\PlayRecordCallback.cs" />
-   <Compile Include="System.Drawing.Imaging\PropertyItem.cs" />
-   <Compile Include="System.Drawing.Imaging\WmfPlaceableFileHeader.cs" />
-   <Compile Include="System.Drawing.Printing\Duplex.cs" />
-   <Compile Include="System.Drawing.Printing\InvalidPrinterException.cs" />
-   <Compile Include="System.Drawing.Printing\MarginsConverter.cs" />
-   <Compile Include="System.Drawing.Printing\Margins.cs" />
-   <Compile Include="System.Drawing.Printing\PrintingServices.cs" />
-   <Compile Include="System.Drawing.Printing\PrintingServicesWin32.cs" />
-   <Compile Include="System.Drawing.Printing\PrintingServicesUnix.cs" />
-   <Compile Include="System.Drawing.Printing\PageSettings.cs" />
-   <Compile Include="System.Drawing.Printing\PaperKind.cs" />
-   <Compile Include="System.Drawing.Printing\PaperSize.cs" />
-   <Compile Include="System.Drawing.Printing\PaperSource.cs" />
-   <Compile Include="System.Drawing.Printing\PaperSourceKind.cs" />
-   <Compile Include="System.Drawing.Printing\PreviewPageInfo.cs" />
-   <Compile Include="System.Drawing.Printing\PreviewPrintController.cs" />
-   <Compile Include="System.Drawing.Printing\PrintController.cs" />
-   <Compile Include="System.Drawing.Printing\PrintDocument.cs" />
-   <Compile Include="System.Drawing.Printing\PrinterResolution.cs" />
-   <Compile Include="System.Drawing.Printing\PrinterResolutionKind.cs" />
-   <Compile Include="System.Drawing.Printing\PrinterSettings.cs" />
-   <Compile Include="System.Drawing.Printing\PrinterUnit.cs" />
-   <Compile Include="System.Drawing.Printing\PrinterUnitConvert.cs" />
-   <Compile Include="System.Drawing.Printing\PrintEventArgs.cs" />
-   <Compile Include="System.Drawing.Printing\PrintEventHandler.cs" />
-   <Compile Include="System.Drawing.Printing\PrintingPermissionAttribute.cs" />
-   <Compile Include="System.Drawing.Printing\PrintingPermission.cs" />
-   <Compile Include="System.Drawing.Printing\PrintingPermissionLevel.cs" />
-   <Compile Include="System.Drawing.Printing\PrintAction.cs" />
-   <Compile Include="System.Drawing.Printing\PrintPageEventArgs.cs" />
-   <Compile Include="System.Drawing.Printing\PrintPageEventHandler.cs" />
-   <Compile Include="System.Drawing.Printing\PrintRange.cs" />
-   <Compile Include="System.Drawing.Printing\QueryPageSettingsEventArgs.cs" />
-   <Compile Include="System.Drawing.Printing\QueryPageSettingsEventHandler.cs" />
-   <Compile Include="System.Drawing.Printing\StandardPrintController.cs" />
-   <Compile Include="System.Drawing.Text\FontCollection.cs" />
-   <Compile Include="System.Drawing.Text\PrivateFontCollection.cs" />
-   <Compile Include="System.Drawing.Text\GenericFontFamilies.cs" />
-   <Compile Include="System.Drawing.Text\HotkeyPrefix.cs" />
-   <Compile Include="System.Drawing.Text\InstalledFontCollection.cs" />
-   <Compile Include="System.Drawing.Text\TextRenderingHint.cs" />
+   <Compile Include="Assembly\AssemblyInfo.cs" />\r
+   <Compile Include="..\..\build\common\Consts.cs" />\r
+   <Compile Include="..\..\build\common\Locale.cs" />\r
+   <Compile Include="System.Drawing\Bitmap.cs" />\r
+   <Compile Include="System.Drawing\Brush.cs" />\r
+   <Compile Include="System.Drawing\Brushes.cs" />\r
+   <Compile Include="System.Drawing\BufferedGraphics.cs" />\r
+   <Compile Include="System.Drawing\BufferedGraphicsManager.cs" />\r
+   <Compile Include="System.Drawing\BufferedGraphicsContext.cs" />\r
+   <Compile Include="System.Drawing\CharacterRange.cs" />\r
+   <Compile Include="System.Drawing\macFunctions.cs" />\r
+   <Compile Include="System.Drawing\ColorConverter.cs" />\r
+   <Compile Include="System.Drawing\Color.cs" />\r
+   <Compile Include="System.Drawing\ColorTranslator.cs" />\r
+   <Compile Include="System.Drawing\ComIStreamMarshaler.cs" />\r
+   <Compile Include="System.Drawing\ComIStreamWrapper.cs" />\r
+   <Compile Include="System.Drawing\ContentAlignment.cs" />\r
+   <Compile Include="System.Drawing\CopyPixelOperation.cs" />\r
+   <Compile Include="System.Drawing\Font.cs" />\r
+   <Compile Include="System.Drawing\FontConverter.cs" />\r
+   <Compile Include="System.Drawing\FontFamily.cs" />\r
+   <Compile Include="System.Drawing\FontStyle.cs" />\r
+   <Compile Include="System.Drawing\Graphics.cs" />\r
+   <Compile Include="System.Drawing\GraphicsUnit.cs" />\r
+   <Compile Include="System.Drawing\gdipEnums.cs" />\r
+   <Compile Include="System.Drawing\gdipFunctions.cs" />\r
+   <Compile Include="System.Drawing\gdipStructs.cs" />\r
+   <Compile Include="System.Drawing\KnownColor.cs" />\r
+   <Compile Include="System.Drawing\KnownColors.cs" />\r
+   <Compile Include="System.Drawing\IconConverter.cs" />\r
+   <Compile Include="System.Drawing\Icon.cs" />\r
+   <Compile Include="System.Drawing\IDeviceContext.cs" />\r
+   <Compile Include="System.Drawing\ImageAnimator.cs" />\r
+   <Compile Include="System.Drawing\ImageConverter.cs" />\r
+   <Compile Include="System.Drawing\Image.cs" />\r
+   <Compile Include="System.Drawing\ImageFormatConverter.cs" />\r
+   <Compile Include="System.Drawing\Pen.cs" />\r
+   <Compile Include="System.Drawing\Pens.cs" />\r
+   <Compile Include="System.Drawing\PointConverter.cs" />\r
+   <Compile Include="System.Drawing\Point.cs" />\r
+   <Compile Include="System.Drawing\PointF.cs" />\r
+   <Compile Include="System.Drawing\RectangleConverter.cs" />\r
+   <Compile Include="System.Drawing\Rectangle.cs" />\r
+   <Compile Include="System.Drawing\RectangleF.cs" />\r
+   <Compile Include="System.Drawing\Region.cs" />\r
+   <Compile Include="System.Drawing\RotateFlipType.cs" />\r
+   <Compile Include="System.Drawing\SizeConverter.cs" />\r
+   <Compile Include="System.Drawing\Size.cs" />\r
+   <Compile Include="System.Drawing\SizeF.cs" />\r
+   <Compile Include="System.Drawing\SizeFConverter.cs" />\r
+   <Compile Include="System.Drawing\SolidBrush.cs" />\r
+   <Compile Include="System.Drawing\SRDescriptionAttribute.cs" />\r
+   <Compile Include="System.Drawing\StringAligment.cs" />\r
+   <Compile Include="System.Drawing\StringDigitSubstitute.cs" />\r
+   <Compile Include="System.Drawing\StringFormat.cs" />\r
+   <Compile Include="System.Drawing\StringFormatFlags.cs" />\r
+   <Compile Include="System.Drawing\StringTrimming.cs" />\r
+   <Compile Include="System.Drawing\StringUnit.cs" />\r
+   <Compile Include="System.Drawing\SystemBrushes.cs" />\r
+   <Compile Include="System.Drawing\SystemColors.cs" />\r
+   <Compile Include="System.Drawing\SystemFonts.cs" />\r
+   <Compile Include="System.Drawing\SystemIcons.cs" />\r
+   <Compile Include="System.Drawing\SystemPens.cs" />\r
+   <Compile Include="System.Drawing\TextureBrush.cs" />\r
+   <Compile Include="System.Drawing\ToolboxBitmapAttribute.cs" />\r
+   <Compile Include="System.Drawing.Design\UITypeEditorEditStyle.cs" />\r
+   <Compile Include="System.Drawing.Design\IPropertyValueUIService.cs" />\r
+   <Compile Include="System.Drawing.Design\IToolboxItemProvider.cs" />\r
+   <Compile Include="System.Drawing.Design\PropertyValueItem.cs" />\r
+   <Compile Include="System.Drawing.Design\PropertyValueUIHandler.cs" />\r
+   <Compile Include="System.Drawing.Design\PropertyValueUIItemInvokeHandler.cs" />\r
+   <Compile Include="System.Drawing.Design\CategoryNameCollection.cs" />\r
+   <Compile Include="System.Drawing.Design\IToolboxService.cs" />\r
+   <Compile Include="System.Drawing.Design\IToolboxUser.cs" />\r
+   <Compile Include="System.Drawing.Design\PaintValueEventArgs.cs" />\r
+   <Compile Include="System.Drawing.Design\ToolboxComponentsCreatedEventArgs.cs" />\r
+   <Compile Include="System.Drawing.Design\ToolboxComponentsCreatedEventHandler.cs" />\r
+   <Compile Include="System.Drawing.Design\ToolboxComponentsCreatingEventArgs.cs" />\r
+   <Compile Include="System.Drawing.Design\ToolboxComponentsCreatingEventHandler.cs" />\r
+   <Compile Include="System.Drawing.Design\ToolboxItemCreatorCallback.cs" />\r
+   <Compile Include="System.Drawing.Design\ToolboxItem.cs" />\r
+   <Compile Include="System.Drawing.Design\UITypeEditor.cs" />\r
+   <Compile Include="System.Drawing.Design\ToolboxItemCollection.cs" />\r
+   <Compile Include="System.Drawing.Drawing2D\AdjustableArrowCap.cs" />\r
+   <Compile Include="System.Drawing.Drawing2D\Blend.cs" />\r
+   <Compile Include="System.Drawing.Drawing2D\ColorBlend.cs" />\r
+   <Compile Include="System.Drawing.Drawing2D\CombineMode.cs" />\r
+   <Compile Include="System.Drawing.Drawing2D\CompostingMode.cs" />\r
+   <Compile Include="System.Drawing.Drawing2D\CompostingQuality.cs" />\r
+   <Compile Include="System.Drawing.Drawing2D\CoordinateSpace.cs" />\r
+   <Compile Include="System.Drawing.Drawing2D\CustomLineCap.cs" />\r
+   <Compile Include="System.Drawing.Drawing2D\DashCap.cs" />\r
+   <Compile Include="System.Drawing.Drawing2D\DashStyle.cs" />\r
+   <Compile Include="System.Drawing.Drawing2D\FillMode.cs" />\r
+   <Compile Include="System.Drawing.Drawing2D\FlushIntention.cs" />\r
+   <Compile Include="System.Drawing.Drawing2D\GraphicsContainer.cs" />\r
+   <Compile Include="System.Drawing.Drawing2D\GraphicsPath.cs" />\r
+   <Compile Include="System.Drawing.Drawing2D\GraphicsPathIterator.cs" />\r
+   <Compile Include="System.Drawing.Drawing2D\GraphicsState.cs" />\r
+   <Compile Include="System.Drawing.Drawing2D\HatchBrush.cs" />\r
+   <Compile Include="System.Drawing.Drawing2D\HatchStyle.cs" />\r
+   <Compile Include="System.Drawing.Drawing2D\InterpolationMode.cs" />\r
+   <Compile Include="System.Drawing.Drawing2D\LinearGradientBrush.cs" />\r
+   <Compile Include="System.Drawing.Drawing2D\LinearGradientMode.cs" />\r
+   <Compile Include="System.Drawing.Drawing2D\LineCap.cs" />\r
+   <Compile Include="System.Drawing.Drawing2D\LineJoin.cs" />\r
+   <Compile Include="System.Drawing.Drawing2D\Matrix.cs" />\r
+   <Compile Include="System.Drawing.Drawing2D\MatrixOrder.cs" />\r
+   <Compile Include="System.Drawing.Drawing2D\PathData.cs" />\r
+   <Compile Include="System.Drawing.Drawing2D\PathGradientBrush.cs" />\r
+   <Compile Include="System.Drawing.Drawing2D\PathPointType.cs" />\r
+   <Compile Include="System.Drawing.Drawing2D\PenAlignment.cs" />\r
+   <Compile Include="System.Drawing.Drawing2D\PenType.cs" />\r
+   <Compile Include="System.Drawing.Drawing2D\PixelOffsetMode.cs" />\r
+   <Compile Include="System.Drawing.Drawing2D\QualityMode.cs" />\r
+   <Compile Include="System.Drawing.Drawing2D\RegionData.cs" />\r
+   <Compile Include="System.Drawing.Drawing2D\SmoothingMode.cs" />\r
+   <Compile Include="..\..\build\common\MonoTODOAttribute.cs" />\r
+   <Compile Include="System.Drawing.Drawing2D\WarpMode.cs" />\r
+   <Compile Include="System.Drawing.Drawing2D\WrapMode.cs" />\r
+   <Compile Include="System.Drawing.Imaging\BitmapData.cs" />\r
+   <Compile Include="System.Drawing.Imaging\ColorAdjustType.cs" />\r
+   <Compile Include="System.Drawing.Imaging\ColorChannelFlag.cs" />\r
+   <Compile Include="System.Drawing.Imaging\ColorMap.cs" />\r
+   <Compile Include="System.Drawing.Imaging\ColorMapType.cs" />\r
+   <Compile Include="System.Drawing.Imaging\ColorMatrix.cs" />\r
+   <Compile Include="System.Drawing.Imaging\ColorMatrixFlag.cs" />\r
+   <Compile Include="System.Drawing.Imaging\ColorMode.cs" />\r
+   <Compile Include="System.Drawing.Imaging\ColorPalette.cs" />\r
+   <Compile Include="System.Drawing.Imaging\EmfPlusRecordType.cs" />\r
+   <Compile Include="System.Drawing.Imaging\EmfType.cs" />\r
+   <Compile Include="System.Drawing.Imaging\Encoder.cs" />\r
+   <Compile Include="System.Drawing.Imaging\EncoderParameter.cs" />\r
+   <Compile Include="System.Drawing.Imaging\EncoderParameters.cs" />\r
+   <Compile Include="System.Drawing.Imaging\EncoderParameterValueType.cs" />\r
+   <Compile Include="System.Drawing.Imaging\EncoderValue.cs" />\r
+   <Compile Include="System.Drawing.Imaging\FrameDimension.cs" />\r
+   <Compile Include="System.Drawing.Imaging\ImageAttributes.cs" />\r
+   <Compile Include="System.Drawing.Imaging\ImageCodecFlags.cs" />\r
+   <Compile Include="System.Drawing.Imaging\ImageCodecInfo.cs" />\r
+   <Compile Include="System.Drawing.Imaging\ImageFlags.cs" />\r
+   <Compile Include="System.Drawing.Imaging\ImageFormat.cs" />\r
+   <Compile Include="System.Drawing.Imaging\ImageLockMode.cs" />\r
+   <Compile Include="System.Drawing.Imaging\Metafile.cs" />\r
+   <Compile Include="System.Drawing.Imaging\MetafileFrameUnit.cs" />\r
+   <Compile Include="System.Drawing.Imaging\MetafileHeader.cs" />\r
+   <Compile Include="System.Drawing.Imaging\MetafileType.cs" />\r
+   <Compile Include="System.Drawing.Imaging\MetaHeader.cs" />\r
+   <Compile Include="System.Drawing.Imaging\PaletteFlags.cs" />\r
+   <Compile Include="System.Drawing.Imaging\PixelFormat.cs" />\r
+   <Compile Include="System.Drawing.Imaging\PlayRecordCallback.cs" />\r
+   <Compile Include="System.Drawing.Imaging\PropertyItem.cs" />\r
+   <Compile Include="System.Drawing.Imaging\WmfPlaceableFileHeader.cs" />\r
+   <Compile Include="System.Drawing.Printing\Duplex.cs" />\r
+   <Compile Include="System.Drawing.Printing\InvalidPrinterException.cs" />\r
+   <Compile Include="System.Drawing.Printing\MarginsConverter.cs" />\r
+   <Compile Include="System.Drawing.Printing\Margins.cs" />\r
+   <Compile Include="System.Drawing.Printing\PrintingServices.cs" />\r
+   <Compile Include="System.Drawing.Printing\PrintingServicesWin32.cs" />\r
+   <Compile Include="System.Drawing.Printing\PrintingServicesUnix.cs" />\r
+   <Compile Include="System.Drawing.Printing\PageSettings.cs" />\r
+   <Compile Include="System.Drawing.Printing\PaperKind.cs" />\r
+   <Compile Include="System.Drawing.Printing\PaperSize.cs" />\r
+   <Compile Include="System.Drawing.Printing\PaperSource.cs" />\r
+   <Compile Include="System.Drawing.Printing\PaperSourceKind.cs" />\r
+   <Compile Include="System.Drawing.Printing\PreviewPageInfo.cs" />\r
+   <Compile Include="System.Drawing.Printing\PreviewPrintController.cs" />\r
+   <Compile Include="System.Drawing.Printing\PrintController.cs" />\r
+   <Compile Include="System.Drawing.Printing\PrintDocument.cs" />\r
+   <Compile Include="System.Drawing.Printing\PrinterResolution.cs" />\r
+   <Compile Include="System.Drawing.Printing\PrinterResolutionKind.cs" />\r
+   <Compile Include="System.Drawing.Printing\PrinterSettings.cs" />\r
+   <Compile Include="System.Drawing.Printing\PrinterUnit.cs" />\r
+   <Compile Include="System.Drawing.Printing\PrinterUnitConvert.cs" />\r
+   <Compile Include="System.Drawing.Printing\PrintEventArgs.cs" />\r
+   <Compile Include="System.Drawing.Printing\PrintEventHandler.cs" />\r
+   <Compile Include="System.Drawing.Printing\PrintingPermissionAttribute.cs" />\r
+   <Compile Include="System.Drawing.Printing\PrintingPermission.cs" />\r
+   <Compile Include="System.Drawing.Printing\PrintingPermissionLevel.cs" />\r
+   <Compile Include="System.Drawing.Printing\PrintAction.cs" />\r
+   <Compile Include="System.Drawing.Printing\PrintPageEventArgs.cs" />\r
+   <Compile Include="System.Drawing.Printing\PrintPageEventHandler.cs" />\r
+   <Compile Include="System.Drawing.Printing\PrintRange.cs" />\r
+   <Compile Include="System.Drawing.Printing\QueryPageSettingsEventArgs.cs" />\r
+   <Compile Include="System.Drawing.Printing\QueryPageSettingsEventHandler.cs" />\r
+   <Compile Include="System.Drawing.Printing\StandardPrintController.cs" />\r
+   <Compile Include="System.Drawing.Text\FontCollection.cs" />\r
+   <Compile Include="System.Drawing.Text\PrivateFontCollection.cs" />\r
+   <Compile Include="System.Drawing.Text\GenericFontFamilies.cs" />\r
+   <Compile Include="System.Drawing.Text\HotkeyPrefix.cs" />\r
+   <Compile Include="System.Drawing.Text\InstalledFontCollection.cs" />\r
+   <Compile Include="System.Drawing.Text\TextRenderingHint.cs" />\r
 \r
   </ItemGroup>\r
   <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
     <PreBuildEvent></PreBuildEvent>\r
   </PropertyGroup>\r
   <ItemGroup>\r
-    <Reference Include="mscorlib.dll">
-      <SpecificVersion>False</SpecificVersion>
-      <HintPath>mscorlib.dll</HintPath>
-    </Reference>
-    <Reference Include="mscorlib.dll">
-      <SpecificVersion>False</SpecificVersion>
-      <HintPath>mscorlib.dll</HintPath>
-    </Reference>
-    <Reference Include="System.dll">
-      <SpecificVersion>False</SpecificVersion>
-      <HintPath>System.dll</HintPath>
-    </Reference>
+    <Reference Include="mscorlib.dll">\r
+      <SpecificVersion>False</SpecificVersion>\r
+      <HintPath>mscorlib.dll</HintPath>\r
+    </Reference>\r
+    <Reference Include="mscorlib.dll">\r
+      <SpecificVersion>False</SpecificVersion>\r
+      <HintPath>mscorlib.dll</HintPath>\r
+    </Reference>\r
+    <Reference Include="System.dll">\r
+      <SpecificVersion>False</SpecificVersion>\r
+      <HintPath>System.dll</HintPath>\r
+    </Reference>\r
 \r
   </ItemGroup>\r
   <ItemGroup>\r
     <Folder Include="Properties\" />\r
   </ItemGroup>\r
-    <ItemGroup>
-    <EmbeddedResource Include="Assembly/Mono.ico">
-       <LogicalName>Mono.ico</LogicalName>
-    </EmbeddedResource>
-    <EmbeddedResource Include="Assembly/Information.ico">
-       <LogicalName>Information.ico</LogicalName>
-    </EmbeddedResource>
-    <EmbeddedResource Include="Assembly/Error.ico">
-       <LogicalName>Error.ico</LogicalName>
-    </EmbeddedResource>
-    <EmbeddedResource Include="Assembly/Warning.ico">
-       <LogicalName>Warning.ico</LogicalName>
-    </EmbeddedResource>
-    <EmbeddedResource Include="Assembly/Question.ico">
-       <LogicalName>Question.ico</LogicalName>
-    </EmbeddedResource>
-  </ItemGroup>
+    <ItemGroup>\r
+    <EmbeddedResource Include="Assembly/Mono.ico">\r
+       <LogicalName>Mono.ico</LogicalName>\r
+    </EmbeddedResource>\r
+    <EmbeddedResource Include="Assembly/Information.ico">\r
+       <LogicalName>Information.ico</LogicalName>\r
+    </EmbeddedResource>\r
+    <EmbeddedResource Include="Assembly/Error.ico">\r
+       <LogicalName>Error.ico</LogicalName>\r
+    </EmbeddedResource>\r
+    <EmbeddedResource Include="Assembly/Warning.ico">\r
+       <LogicalName>Warning.ico</LogicalName>\r
+    </EmbeddedResource>\r
+    <EmbeddedResource Include="Assembly/Question.ico">\r
+       <LogicalName>Question.ico</LogicalName>\r
+    </EmbeddedResource>\r
+    <EmbeddedResource Include="Assembly/Shield.ico">\r
+       <LogicalName>Shield.ico</LogicalName>\r
+    </EmbeddedResource>\r
+  </ItemGroup>\r
 \r
 </Project>\r
-
+\r
index f56a75a056913c99e49b261ec8e37fbdcb39d8b0..1dacc08af2be9cd68ba04a2d1bda7ee416c1010e 100644 (file)
   </PropertyGroup>\r
   <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
   <ItemGroup>\r
-   <Compile Include="Assembly\AssemblyInfo.cs" />
-   <Compile Include="..\..\build\common\Consts.cs" />
-   <Compile Include="..\..\build\common\Locale.cs" />
-   <Compile Include="System.Drawing\Bitmap.cs" />
-   <Compile Include="System.Drawing\Brush.cs" />
-   <Compile Include="System.Drawing\Brushes.cs" />
-   <Compile Include="System.Drawing\BufferedGraphics.cs" />
-   <Compile Include="System.Drawing\BufferedGraphicsManager.cs" />
-   <Compile Include="System.Drawing\BufferedGraphicsContext.cs" />
-   <Compile Include="System.Drawing\CharacterRange.cs" />
-   <Compile Include="System.Drawing\macFunctions.cs" />
-   <Compile Include="System.Drawing\ColorConverter.cs" />
-   <Compile Include="System.Drawing\Color.cs" />
-   <Compile Include="System.Drawing\ColorTranslator.cs" />
-   <Compile Include="System.Drawing\ComIStreamMarshaler.cs" />
-   <Compile Include="System.Drawing\ComIStreamWrapper.cs" />
-   <Compile Include="System.Drawing\ContentAlignment.cs" />
-   <Compile Include="System.Drawing\CopyPixelOperation.cs" />
-   <Compile Include="System.Drawing\Font.cs" />
-   <Compile Include="System.Drawing\FontConverter.cs" />
-   <Compile Include="System.Drawing\FontFamily.cs" />
-   <Compile Include="System.Drawing\FontStyle.cs" />
-   <Compile Include="System.Drawing\Graphics.cs" />
-   <Compile Include="System.Drawing\GraphicsUnit.cs" />
-   <Compile Include="System.Drawing\gdipEnums.cs" />
-   <Compile Include="System.Drawing\gdipFunctions.cs" />
-   <Compile Include="System.Drawing\gdipStructs.cs" />
-   <Compile Include="System.Drawing\KnownColor.cs" />
-   <Compile Include="System.Drawing\KnownColors.cs" />
-   <Compile Include="System.Drawing\IconConverter.cs" />
-   <Compile Include="System.Drawing\Icon.cs" />
-   <Compile Include="System.Drawing\IDeviceContext.cs" />
-   <Compile Include="System.Drawing\ImageAnimator.cs" />
-   <Compile Include="System.Drawing\ImageConverter.cs" />
-   <Compile Include="System.Drawing\Image.cs" />
-   <Compile Include="System.Drawing\ImageFormatConverter.cs" />
-   <Compile Include="System.Drawing\Pen.cs" />
-   <Compile Include="System.Drawing\Pens.cs" />
-   <Compile Include="System.Drawing\PointConverter.cs" />
-   <Compile Include="System.Drawing\Point.cs" />
-   <Compile Include="System.Drawing\PointF.cs" />
-   <Compile Include="System.Drawing\RectangleConverter.cs" />
-   <Compile Include="System.Drawing\Rectangle.cs" />
-   <Compile Include="System.Drawing\RectangleF.cs" />
-   <Compile Include="System.Drawing\Region.cs" />
-   <Compile Include="System.Drawing\RotateFlipType.cs" />
-   <Compile Include="System.Drawing\SizeConverter.cs" />
-   <Compile Include="System.Drawing\Size.cs" />
-   <Compile Include="System.Drawing\SizeF.cs" />
-   <Compile Include="System.Drawing\SizeFConverter.cs" />
-   <Compile Include="System.Drawing\SolidBrush.cs" />
-   <Compile Include="System.Drawing\SRDescriptionAttribute.cs" />
-   <Compile Include="System.Drawing\StringAligment.cs" />
-   <Compile Include="System.Drawing\StringDigitSubstitute.cs" />
-   <Compile Include="System.Drawing\StringFormat.cs" />
-   <Compile Include="System.Drawing\StringFormatFlags.cs" />
-   <Compile Include="System.Drawing\StringTrimming.cs" />
-   <Compile Include="System.Drawing\StringUnit.cs" />
-   <Compile Include="System.Drawing\SystemBrushes.cs" />
-   <Compile Include="System.Drawing\SystemColors.cs" />
-   <Compile Include="System.Drawing\SystemFonts.cs" />
-   <Compile Include="System.Drawing\SystemIcons.cs" />
-   <Compile Include="System.Drawing\SystemPens.cs" />
-   <Compile Include="System.Drawing\TextureBrush.cs" />
-   <Compile Include="System.Drawing\ToolboxBitmapAttribute.cs" />
-   <Compile Include="System.Drawing.Design\UITypeEditorEditStyle.cs" />
-   <Compile Include="System.Drawing.Design\IPropertyValueUIService.cs" />
-   <Compile Include="System.Drawing.Design\IToolboxItemProvider.cs" />
-   <Compile Include="System.Drawing.Design\PropertyValueItem.cs" />
-   <Compile Include="System.Drawing.Design\PropertyValueUIHandler.cs" />
-   <Compile Include="System.Drawing.Design\PropertyValueUIItemInvokeHandler.cs" />
-   <Compile Include="System.Drawing.Design\CategoryNameCollection.cs" />
-   <Compile Include="System.Drawing.Design\IToolboxService.cs" />
-   <Compile Include="System.Drawing.Design\IToolboxUser.cs" />
-   <Compile Include="System.Drawing.Design\PaintValueEventArgs.cs" />
-   <Compile Include="System.Drawing.Design\ToolboxComponentsCreatedEventArgs.cs" />
-   <Compile Include="System.Drawing.Design\ToolboxComponentsCreatedEventHandler.cs" />
-   <Compile Include="System.Drawing.Design\ToolboxComponentsCreatingEventArgs.cs" />
-   <Compile Include="System.Drawing.Design\ToolboxComponentsCreatingEventHandler.cs" />
-   <Compile Include="System.Drawing.Design\ToolboxItemCreatorCallback.cs" />
-   <Compile Include="System.Drawing.Design\ToolboxItem.cs" />
-   <Compile Include="System.Drawing.Design\UITypeEditor.cs" />
-   <Compile Include="System.Drawing.Design\ToolboxItemCollection.cs" />
-   <Compile Include="System.Drawing.Drawing2D\AdjustableArrowCap.cs" />
-   <Compile Include="System.Drawing.Drawing2D\Blend.cs" />
-   <Compile Include="System.Drawing.Drawing2D\ColorBlend.cs" />
-   <Compile Include="System.Drawing.Drawing2D\CombineMode.cs" />
-   <Compile Include="System.Drawing.Drawing2D\CompostingMode.cs" />
-   <Compile Include="System.Drawing.Drawing2D\CompostingQuality.cs" />
-   <Compile Include="System.Drawing.Drawing2D\CoordinateSpace.cs" />
-   <Compile Include="System.Drawing.Drawing2D\CustomLineCap.cs" />
-   <Compile Include="System.Drawing.Drawing2D\DashCap.cs" />
-   <Compile Include="System.Drawing.Drawing2D\DashStyle.cs" />
-   <Compile Include="System.Drawing.Drawing2D\FillMode.cs" />
-   <Compile Include="System.Drawing.Drawing2D\FlushIntention.cs" />
-   <Compile Include="System.Drawing.Drawing2D\GraphicsContainer.cs" />
-   <Compile Include="System.Drawing.Drawing2D\GraphicsPath.cs" />
-   <Compile Include="System.Drawing.Drawing2D\GraphicsPathIterator.cs" />
-   <Compile Include="System.Drawing.Drawing2D\GraphicsState.cs" />
-   <Compile Include="System.Drawing.Drawing2D\HatchBrush.cs" />
-   <Compile Include="System.Drawing.Drawing2D\HatchStyle.cs" />
-   <Compile Include="System.Drawing.Drawing2D\InterpolationMode.cs" />
-   <Compile Include="System.Drawing.Drawing2D\LinearGradientBrush.cs" />
-   <Compile Include="System.Drawing.Drawing2D\LinearGradientMode.cs" />
-   <Compile Include="System.Drawing.Drawing2D\LineCap.cs" />
-   <Compile Include="System.Drawing.Drawing2D\LineJoin.cs" />
-   <Compile Include="System.Drawing.Drawing2D\Matrix.cs" />
-   <Compile Include="System.Drawing.Drawing2D\MatrixOrder.cs" />
-   <Compile Include="System.Drawing.Drawing2D\PathData.cs" />
-   <Compile Include="System.Drawing.Drawing2D\PathGradientBrush.cs" />
-   <Compile Include="System.Drawing.Drawing2D\PathPointType.cs" />
-   <Compile Include="System.Drawing.Drawing2D\PenAlignment.cs" />
-   <Compile Include="System.Drawing.Drawing2D\PenType.cs" />
-   <Compile Include="System.Drawing.Drawing2D\PixelOffsetMode.cs" />
-   <Compile Include="System.Drawing.Drawing2D\QualityMode.cs" />
-   <Compile Include="System.Drawing.Drawing2D\RegionData.cs" />
-   <Compile Include="System.Drawing.Drawing2D\SmoothingMode.cs" />
-   <Compile Include="..\..\build\common\MonoTODOAttribute.cs" />
-   <Compile Include="System.Drawing.Drawing2D\WarpMode.cs" />
-   <Compile Include="System.Drawing.Drawing2D\WrapMode.cs" />
-   <Compile Include="System.Drawing.Imaging\BitmapData.cs" />
-   <Compile Include="System.Drawing.Imaging\ColorAdjustType.cs" />
-   <Compile Include="System.Drawing.Imaging\ColorChannelFlag.cs" />
-   <Compile Include="System.Drawing.Imaging\ColorMap.cs" />
-   <Compile Include="System.Drawing.Imaging\ColorMapType.cs" />
-   <Compile Include="System.Drawing.Imaging\ColorMatrix.cs" />
-   <Compile Include="System.Drawing.Imaging\ColorMatrixFlag.cs" />
-   <Compile Include="System.Drawing.Imaging\ColorMode.cs" />
-   <Compile Include="System.Drawing.Imaging\ColorPalette.cs" />
-   <Compile Include="System.Drawing.Imaging\EmfPlusRecordType.cs" />
-   <Compile Include="System.Drawing.Imaging\EmfType.cs" />
-   <Compile Include="System.Drawing.Imaging\Encoder.cs" />
-   <Compile Include="System.Drawing.Imaging\EncoderParameter.cs" />
-   <Compile Include="System.Drawing.Imaging\EncoderParameters.cs" />
-   <Compile Include="System.Drawing.Imaging\EncoderParameterValueType.cs" />
-   <Compile Include="System.Drawing.Imaging\EncoderValue.cs" />
-   <Compile Include="System.Drawing.Imaging\FrameDimension.cs" />
-   <Compile Include="System.Drawing.Imaging\ImageAttributes.cs" />
-   <Compile Include="System.Drawing.Imaging\ImageCodecFlags.cs" />
-   <Compile Include="System.Drawing.Imaging\ImageCodecInfo.cs" />
-   <Compile Include="System.Drawing.Imaging\ImageFlags.cs" />
-   <Compile Include="System.Drawing.Imaging\ImageFormat.cs" />
-   <Compile Include="System.Drawing.Imaging\ImageLockMode.cs" />
-   <Compile Include="System.Drawing.Imaging\Metafile.cs" />
-   <Compile Include="System.Drawing.Imaging\MetafileFrameUnit.cs" />
-   <Compile Include="System.Drawing.Imaging\MetafileHeader.cs" />
-   <Compile Include="System.Drawing.Imaging\MetafileType.cs" />
-   <Compile Include="System.Drawing.Imaging\MetaHeader.cs" />
-   <Compile Include="System.Drawing.Imaging\PaletteFlags.cs" />
-   <Compile Include="System.Drawing.Imaging\PixelFormat.cs" />
-   <Compile Include="System.Drawing.Imaging\PlayRecordCallback.cs" />
-   <Compile Include="System.Drawing.Imaging\PropertyItem.cs" />
-   <Compile Include="System.Drawing.Imaging\WmfPlaceableFileHeader.cs" />
-   <Compile Include="System.Drawing.Printing\Duplex.cs" />
-   <Compile Include="System.Drawing.Printing\InvalidPrinterException.cs" />
-   <Compile Include="System.Drawing.Printing\MarginsConverter.cs" />
-   <Compile Include="System.Drawing.Printing\Margins.cs" />
-   <Compile Include="System.Drawing.Printing\PrintingServices.cs" />
-   <Compile Include="System.Drawing.Printing\PrintingServicesWin32.cs" />
-   <Compile Include="System.Drawing.Printing\PrintingServicesUnix.cs" />
-   <Compile Include="System.Drawing.Printing\PageSettings.cs" />
-   <Compile Include="System.Drawing.Printing\PaperKind.cs" />
-   <Compile Include="System.Drawing.Printing\PaperSize.cs" />
-   <Compile Include="System.Drawing.Printing\PaperSource.cs" />
-   <Compile Include="System.Drawing.Printing\PaperSourceKind.cs" />
-   <Compile Include="System.Drawing.Printing\PreviewPageInfo.cs" />
-   <Compile Include="System.Drawing.Printing\PreviewPrintController.cs" />
-   <Compile Include="System.Drawing.Printing\PrintController.cs" />
-   <Compile Include="System.Drawing.Printing\PrintDocument.cs" />
-   <Compile Include="System.Drawing.Printing\PrinterResolution.cs" />
-   <Compile Include="System.Drawing.Printing\PrinterResolutionKind.cs" />
-   <Compile Include="System.Drawing.Printing\PrinterSettings.cs" />
-   <Compile Include="System.Drawing.Printing\PrinterUnit.cs" />
-   <Compile Include="System.Drawing.Printing\PrinterUnitConvert.cs" />
-   <Compile Include="System.Drawing.Printing\PrintEventArgs.cs" />
-   <Compile Include="System.Drawing.Printing\PrintEventHandler.cs" />
-   <Compile Include="System.Drawing.Printing\PrintingPermissionAttribute.cs" />
-   <Compile Include="System.Drawing.Printing\PrintingPermission.cs" />
-   <Compile Include="System.Drawing.Printing\PrintingPermissionLevel.cs" />
-   <Compile Include="System.Drawing.Printing\PrintAction.cs" />
-   <Compile Include="System.Drawing.Printing\PrintPageEventArgs.cs" />
-   <Compile Include="System.Drawing.Printing\PrintPageEventHandler.cs" />
-   <Compile Include="System.Drawing.Printing\PrintRange.cs" />
-   <Compile Include="System.Drawing.Printing\QueryPageSettingsEventArgs.cs" />
-   <Compile Include="System.Drawing.Printing\QueryPageSettingsEventHandler.cs" />
-   <Compile Include="System.Drawing.Printing\StandardPrintController.cs" />
-   <Compile Include="System.Drawing.Text\FontCollection.cs" />
-   <Compile Include="System.Drawing.Text\PrivateFontCollection.cs" />
-   <Compile Include="System.Drawing.Text\GenericFontFamilies.cs" />
-   <Compile Include="System.Drawing.Text\HotkeyPrefix.cs" />
-   <Compile Include="System.Drawing.Text\InstalledFontCollection.cs" />
-   <Compile Include="System.Drawing.Text\TextRenderingHint.cs" />
+   <Compile Include="Assembly\AssemblyInfo.cs" />\r
+   <Compile Include="..\..\build\common\Consts.cs" />\r
+   <Compile Include="..\..\build\common\Locale.cs" />\r
+   <Compile Include="System.Drawing\Bitmap.cs" />\r
+   <Compile Include="System.Drawing\Brush.cs" />\r
+   <Compile Include="System.Drawing\Brushes.cs" />\r
+   <Compile Include="System.Drawing\BufferedGraphics.cs" />\r
+   <Compile Include="System.Drawing\BufferedGraphicsManager.cs" />\r
+   <Compile Include="System.Drawing\BufferedGraphicsContext.cs" />\r
+   <Compile Include="System.Drawing\CharacterRange.cs" />\r
+   <Compile Include="System.Drawing\macFunctions.cs" />\r
+   <Compile Include="System.Drawing\ColorConverter.cs" />\r
+   <Compile Include="System.Drawing\Color.cs" />\r
+   <Compile Include="System.Drawing\ColorTranslator.cs" />\r
+   <Compile Include="System.Drawing\ComIStreamMarshaler.cs" />\r
+   <Compile Include="System.Drawing\ComIStreamWrapper.cs" />\r
+   <Compile Include="System.Drawing\ContentAlignment.cs" />\r
+   <Compile Include="System.Drawing\CopyPixelOperation.cs" />\r
+   <Compile Include="System.Drawing\Font.cs" />\r
+   <Compile Include="System.Drawing\FontConverter.cs" />\r
+   <Compile Include="System.Drawing\FontFamily.cs" />\r
+   <Compile Include="System.Drawing\FontStyle.cs" />\r
+   <Compile Include="System.Drawing\Graphics.cs" />\r
+   <Compile Include="System.Drawing\GraphicsUnit.cs" />\r
+   <Compile Include="System.Drawing\gdipEnums.cs" />\r
+   <Compile Include="System.Drawing\gdipFunctions.cs" />\r
+   <Compile Include="System.Drawing\gdipStructs.cs" />\r
+   <Compile Include="System.Drawing\KnownColor.cs" />\r
+   <Compile Include="System.Drawing\KnownColors.cs" />\r
+   <Compile Include="System.Drawing\IconConverter.cs" />\r
+   <Compile Include="System.Drawing\Icon.cs" />\r
+   <Compile Include="System.Drawing\IDeviceContext.cs" />\r
+   <Compile Include="System.Drawing\ImageAnimator.cs" />\r
+   <Compile Include="System.Drawing\ImageConverter.cs" />\r
+   <Compile Include="System.Drawing\Image.cs" />\r
+   <Compile Include="System.Drawing\ImageFormatConverter.cs" />\r
+   <Compile Include="System.Drawing\Pen.cs" />\r
+   <Compile Include="System.Drawing\Pens.cs" />\r
+   <Compile Include="System.Drawing\PointConverter.cs" />\r
+   <Compile Include="System.Drawing\Point.cs" />\r
+   <Compile Include="System.Drawing\PointF.cs" />\r
+   <Compile Include="System.Drawing\RectangleConverter.cs" />\r
+   <Compile Include="System.Drawing\Rectangle.cs" />\r
+   <Compile Include="System.Drawing\RectangleF.cs" />\r
+   <Compile Include="System.Drawing\Region.cs" />\r
+   <Compile Include="System.Drawing\RotateFlipType.cs" />\r
+   <Compile Include="System.Drawing\SizeConverter.cs" />\r
+   <Compile Include="System.Drawing\Size.cs" />\r
+   <Compile Include="System.Drawing\SizeF.cs" />\r
+   <Compile Include="System.Drawing\SizeFConverter.cs" />\r
+   <Compile Include="System.Drawing\SolidBrush.cs" />\r
+   <Compile Include="System.Drawing\SRDescriptionAttribute.cs" />\r
+   <Compile Include="System.Drawing\StringAligment.cs" />\r
+   <Compile Include="System.Drawing\StringDigitSubstitute.cs" />\r
+   <Compile Include="System.Drawing\StringFormat.cs" />\r
+   <Compile Include="System.Drawing\StringFormatFlags.cs" />\r
+   <Compile Include="System.Drawing\StringTrimming.cs" />\r
+   <Compile Include="System.Drawing\StringUnit.cs" />\r
+   <Compile Include="System.Drawing\SystemBrushes.cs" />\r
+   <Compile Include="System.Drawing\SystemColors.cs" />\r
+   <Compile Include="System.Drawing\SystemFonts.cs" />\r
+   <Compile Include="System.Drawing\SystemIcons.cs" />\r
+   <Compile Include="System.Drawing\SystemPens.cs" />\r
+   <Compile Include="System.Drawing\TextureBrush.cs" />\r
+   <Compile Include="System.Drawing\ToolboxBitmapAttribute.cs" />\r
+   <Compile Include="System.Drawing.Design\UITypeEditorEditStyle.cs" />\r
+   <Compile Include="System.Drawing.Design\IPropertyValueUIService.cs" />\r
+   <Compile Include="System.Drawing.Design\IToolboxItemProvider.cs" />\r
+   <Compile Include="System.Drawing.Design\PropertyValueItem.cs" />\r
+   <Compile Include="System.Drawing.Design\PropertyValueUIHandler.cs" />\r
+   <Compile Include="System.Drawing.Design\PropertyValueUIItemInvokeHandler.cs" />\r
+   <Compile Include="System.Drawing.Design\CategoryNameCollection.cs" />\r
+   <Compile Include="System.Drawing.Design\IToolboxService.cs" />\r
+   <Compile Include="System.Drawing.Design\IToolboxUser.cs" />\r
+   <Compile Include="System.Drawing.Design\PaintValueEventArgs.cs" />\r
+   <Compile Include="System.Drawing.Design\ToolboxComponentsCreatedEventArgs.cs" />\r
+   <Compile Include="System.Drawing.Design\ToolboxComponentsCreatedEventHandler.cs" />\r
+   <Compile Include="System.Drawing.Design\ToolboxComponentsCreatingEventArgs.cs" />\r
+   <Compile Include="System.Drawing.Design\ToolboxComponentsCreatingEventHandler.cs" />\r
+   <Compile Include="System.Drawing.Design\ToolboxItemCreatorCallback.cs" />\r
+   <Compile Include="System.Drawing.Design\ToolboxItem.cs" />\r
+   <Compile Include="System.Drawing.Design\UITypeEditor.cs" />\r
+   <Compile Include="System.Drawing.Design\ToolboxItemCollection.cs" />\r
+   <Compile Include="System.Drawing.Drawing2D\AdjustableArrowCap.cs" />\r
+   <Compile Include="System.Drawing.Drawing2D\Blend.cs" />\r
+   <Compile Include="System.Drawing.Drawing2D\ColorBlend.cs" />\r
+   <Compile Include="System.Drawing.Drawing2D\CombineMode.cs" />\r
+   <Compile Include="System.Drawing.Drawing2D\CompostingMode.cs" />\r
+   <Compile Include="System.Drawing.Drawing2D\CompostingQuality.cs" />\r
+   <Compile Include="System.Drawing.Drawing2D\CoordinateSpace.cs" />\r
+   <Compile Include="System.Drawing.Drawing2D\CustomLineCap.cs" />\r
+   <Compile Include="System.Drawing.Drawing2D\DashCap.cs" />\r
+   <Compile Include="System.Drawing.Drawing2D\DashStyle.cs" />\r
+   <Compile Include="System.Drawing.Drawing2D\FillMode.cs" />\r
+   <Compile Include="System.Drawing.Drawing2D\FlushIntention.cs" />\r
+   <Compile Include="System.Drawing.Drawing2D\GraphicsContainer.cs" />\r
+   <Compile Include="System.Drawing.Drawing2D\GraphicsPath.cs" />\r
+   <Compile Include="System.Drawing.Drawing2D\GraphicsPathIterator.cs" />\r
+   <Compile Include="System.Drawing.Drawing2D\GraphicsState.cs" />\r
+   <Compile Include="System.Drawing.Drawing2D\HatchBrush.cs" />\r
+   <Compile Include="System.Drawing.Drawing2D\HatchStyle.cs" />\r
+   <Compile Include="System.Drawing.Drawing2D\InterpolationMode.cs" />\r
+   <Compile Include="System.Drawing.Drawing2D\LinearGradientBrush.cs" />\r
+   <Compile Include="System.Drawing.Drawing2D\LinearGradientMode.cs" />\r
+   <Compile Include="System.Drawing.Drawing2D\LineCap.cs" />\r
+   <Compile Include="System.Drawing.Drawing2D\LineJoin.cs" />\r
+   <Compile Include="System.Drawing.Drawing2D\Matrix.cs" />\r
+   <Compile Include="System.Drawing.Drawing2D\MatrixOrder.cs" />\r
+   <Compile Include="System.Drawing.Drawing2D\PathData.cs" />\r
+   <Compile Include="System.Drawing.Drawing2D\PathGradientBrush.cs" />\r
+   <Compile Include="System.Drawing.Drawing2D\PathPointType.cs" />\r
+   <Compile Include="System.Drawing.Drawing2D\PenAlignment.cs" />\r
+   <Compile Include="System.Drawing.Drawing2D\PenType.cs" />\r
+   <Compile Include="System.Drawing.Drawing2D\PixelOffsetMode.cs" />\r
+   <Compile Include="System.Drawing.Drawing2D\QualityMode.cs" />\r
+   <Compile Include="System.Drawing.Drawing2D\RegionData.cs" />\r
+   <Compile Include="System.Drawing.Drawing2D\SmoothingMode.cs" />\r
+   <Compile Include="..\..\build\common\MonoTODOAttribute.cs" />\r
+   <Compile Include="System.Drawing.Drawing2D\WarpMode.cs" />\r
+   <Compile Include="System.Drawing.Drawing2D\WrapMode.cs" />\r
+   <Compile Include="System.Drawing.Imaging\BitmapData.cs" />\r
+   <Compile Include="System.Drawing.Imaging\ColorAdjustType.cs" />\r
+   <Compile Include="System.Drawing.Imaging\ColorChannelFlag.cs" />\r
+   <Compile Include="System.Drawing.Imaging\ColorMap.cs" />\r
+   <Compile Include="System.Drawing.Imaging\ColorMapType.cs" />\r
+   <Compile Include="System.Drawing.Imaging\ColorMatrix.cs" />\r
+   <Compile Include="System.Drawing.Imaging\ColorMatrixFlag.cs" />\r
+   <Compile Include="System.Drawing.Imaging\ColorMode.cs" />\r
+   <Compile Include="System.Drawing.Imaging\ColorPalette.cs" />\r
+   <Compile Include="System.Drawing.Imaging\EmfPlusRecordType.cs" />\r
+   <Compile Include="System.Drawing.Imaging\EmfType.cs" />\r
+   <Compile Include="System.Drawing.Imaging\Encoder.cs" />\r
+   <Compile Include="System.Drawing.Imaging\EncoderParameter.cs" />\r
+   <Compile Include="System.Drawing.Imaging\EncoderParameters.cs" />\r
+   <Compile Include="System.Drawing.Imaging\EncoderParameterValueType.cs" />\r
+   <Compile Include="System.Drawing.Imaging\EncoderValue.cs" />\r
+   <Compile Include="System.Drawing.Imaging\FrameDimension.cs" />\r
+   <Compile Include="System.Drawing.Imaging\ImageAttributes.cs" />\r
+   <Compile Include="System.Drawing.Imaging\ImageCodecFlags.cs" />\r
+   <Compile Include="System.Drawing.Imaging\ImageCodecInfo.cs" />\r
+   <Compile Include="System.Drawing.Imaging\ImageFlags.cs" />\r
+   <Compile Include="System.Drawing.Imaging\ImageFormat.cs" />\r
+   <Compile Include="System.Drawing.Imaging\ImageLockMode.cs" />\r
+   <Compile Include="System.Drawing.Imaging\Metafile.cs" />\r
+   <Compile Include="System.Drawing.Imaging\MetafileFrameUnit.cs" />\r
+   <Compile Include="System.Drawing.Imaging\MetafileHeader.cs" />\r
+   <Compile Include="System.Drawing.Imaging\MetafileType.cs" />\r
+   <Compile Include="System.Drawing.Imaging\MetaHeader.cs" />\r
+   <Compile Include="System.Drawing.Imaging\PaletteFlags.cs" />\r
+   <Compile Include="System.Drawing.Imaging\PixelFormat.cs" />\r
+   <Compile Include="System.Drawing.Imaging\PlayRecordCallback.cs" />\r
+   <Compile Include="System.Drawing.Imaging\PropertyItem.cs" />\r
+   <Compile Include="System.Drawing.Imaging\WmfPlaceableFileHeader.cs" />\r
+   <Compile Include="System.Drawing.Printing\Duplex.cs" />\r
+   <Compile Include="System.Drawing.Printing\InvalidPrinterException.cs" />\r
+   <Compile Include="System.Drawing.Printing\MarginsConverter.cs" />\r
+   <Compile Include="System.Drawing.Printing\Margins.cs" />\r
+   <Compile Include="System.Drawing.Printing\PrintingServices.cs" />\r
+   <Compile Include="System.Drawing.Printing\PrintingServicesWin32.cs" />\r
+   <Compile Include="System.Drawing.Printing\PrintingServicesUnix.cs" />\r
+   <Compile Include="System.Drawing.Printing\PageSettings.cs" />\r
+   <Compile Include="System.Drawing.Printing\PaperKind.cs" />\r
+   <Compile Include="System.Drawing.Printing\PaperSize.cs" />\r
+   <Compile Include="System.Drawing.Printing\PaperSource.cs" />\r
+   <Compile Include="System.Drawing.Printing\PaperSourceKind.cs" />\r
+   <Compile Include="System.Drawing.Printing\PreviewPageInfo.cs" />\r
+   <Compile Include="System.Drawing.Printing\PreviewPrintController.cs" />\r
+   <Compile Include="System.Drawing.Printing\PrintController.cs" />\r
+   <Compile Include="System.Drawing.Printing\PrintDocument.cs" />\r
+   <Compile Include="System.Drawing.Printing\PrinterResolution.cs" />\r
+   <Compile Include="System.Drawing.Printing\PrinterResolutionKind.cs" />\r
+   <Compile Include="System.Drawing.Printing\PrinterSettings.cs" />\r
+   <Compile Include="System.Drawing.Printing\PrinterUnit.cs" />\r
+   <Compile Include="System.Drawing.Printing\PrinterUnitConvert.cs" />\r
+   <Compile Include="System.Drawing.Printing\PrintEventArgs.cs" />\r
+   <Compile Include="System.Drawing.Printing\PrintEventHandler.cs" />\r
+   <Compile Include="System.Drawing.Printing\PrintingPermissionAttribute.cs" />\r
+   <Compile Include="System.Drawing.Printing\PrintingPermission.cs" />\r
+   <Compile Include="System.Drawing.Printing\PrintingPermissionLevel.cs" />\r
+   <Compile Include="System.Drawing.Printing\PrintAction.cs" />\r
+   <Compile Include="System.Drawing.Printing\PrintPageEventArgs.cs" />\r
+   <Compile Include="System.Drawing.Printing\PrintPageEventHandler.cs" />\r
+   <Compile Include="System.Drawing.Printing\PrintRange.cs" />\r
+   <Compile Include="System.Drawing.Printing\QueryPageSettingsEventArgs.cs" />\r
+   <Compile Include="System.Drawing.Printing\QueryPageSettingsEventHandler.cs" />\r
+   <Compile Include="System.Drawing.Printing\StandardPrintController.cs" />\r
+   <Compile Include="System.Drawing.Text\FontCollection.cs" />\r
+   <Compile Include="System.Drawing.Text\PrivateFontCollection.cs" />\r
+   <Compile Include="System.Drawing.Text\GenericFontFamilies.cs" />\r
+   <Compile Include="System.Drawing.Text\HotkeyPrefix.cs" />\r
+   <Compile Include="System.Drawing.Text\InstalledFontCollection.cs" />\r
+   <Compile Include="System.Drawing.Text\TextRenderingHint.cs" />\r
 \r
   </ItemGroup>\r
   <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
     <PreBuildEvent></PreBuildEvent>\r
   </PropertyGroup>\r
   <ItemGroup>\r
-    <Reference Include="mscorlib.dll">
-      <SpecificVersion>False</SpecificVersion>
-      <HintPath>mscorlib.dll</HintPath>
-    </Reference>
-    <Reference Include="mscorlib.dll">
-      <SpecificVersion>False</SpecificVersion>
-      <HintPath>mscorlib.dll</HintPath>
-    </Reference>
-    <Reference Include="System.dll">
-      <SpecificVersion>False</SpecificVersion>
-      <HintPath>System.dll</HintPath>
-    </Reference>
+    <Reference Include="mscorlib.dll">\r
+      <SpecificVersion>False</SpecificVersion>\r
+      <HintPath>mscorlib.dll</HintPath>\r
+    </Reference>\r
+    <Reference Include="mscorlib.dll">\r
+      <SpecificVersion>False</SpecificVersion>\r
+      <HintPath>mscorlib.dll</HintPath>\r
+    </Reference>\r
+    <Reference Include="System.dll">\r
+      <SpecificVersion>False</SpecificVersion>\r
+      <HintPath>System.dll</HintPath>\r
+    </Reference>\r
 \r
   </ItemGroup>\r
   <ItemGroup>\r
     <Folder Include="Properties\" />\r
   </ItemGroup>\r
-    <ItemGroup>
-    <EmbeddedResource Include="Assembly/Mono.ico">
-       <LogicalName>Mono.ico</LogicalName>
-    </EmbeddedResource>
-    <EmbeddedResource Include="Assembly/Information.ico">
-       <LogicalName>Information.ico</LogicalName>
-    </EmbeddedResource>
-    <EmbeddedResource Include="Assembly/Error.ico">
-       <LogicalName>Error.ico</LogicalName>
-    </EmbeddedResource>
-    <EmbeddedResource Include="Assembly/Warning.ico">
-       <LogicalName>Warning.ico</LogicalName>
-    </EmbeddedResource>
-    <EmbeddedResource Include="Assembly/Question.ico">
-       <LogicalName>Question.ico</LogicalName>
-    </EmbeddedResource>
-  </ItemGroup>
+    <ItemGroup>\r
+    <EmbeddedResource Include="Assembly/Mono.ico">\r
+       <LogicalName>Mono.ico</LogicalName>\r
+    </EmbeddedResource>\r
+    <EmbeddedResource Include="Assembly/Information.ico">\r
+       <LogicalName>Information.ico</LogicalName>\r
+    </EmbeddedResource>\r
+    <EmbeddedResource Include="Assembly/Error.ico">\r
+       <LogicalName>Error.ico</LogicalName>\r
+    </EmbeddedResource>\r
+    <EmbeddedResource Include="Assembly/Warning.ico">\r
+       <LogicalName>Warning.ico</LogicalName>\r
+    </EmbeddedResource>\r
+    <EmbeddedResource Include="Assembly/Question.ico">\r
+       <LogicalName>Question.ico</LogicalName>\r
+    </EmbeddedResource>\r
+  </ItemGroup>\r
+    <EmbeddedResource Include="Assembly/Shield.ico">\r
+       <LogicalName>Shield.ico</LogicalName>\r
+    </EmbeddedResource>\r
+  </ItemGroup>\r
 \r
 </Project>\r
-
+\r
index 31587108ea0762a92d9e01085c0818d2abf8f32e..95e4c85a26bb0e2b67c842bf3ef7b84043f3bc4f 100644 (file)
   </PropertyGroup>\r
   <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
   <ItemGroup>\r
-   <Compile Include="Assembly\AssemblyInfo.cs" />
-   <Compile Include="..\..\build\common\Consts.cs" />
-   <Compile Include="..\..\build\common\Locale.cs" />
-   <Compile Include="System.Drawing\Bitmap.cs" />
-   <Compile Include="System.Drawing\Brush.cs" />
-   <Compile Include="System.Drawing\Brushes.cs" />
-   <Compile Include="System.Drawing\BufferedGraphics.cs" />
-   <Compile Include="System.Drawing\BufferedGraphicsManager.cs" />
-   <Compile Include="System.Drawing\BufferedGraphicsContext.cs" />
-   <Compile Include="System.Drawing\CharacterRange.cs" />
-   <Compile Include="System.Drawing\macFunctions.cs" />
-   <Compile Include="System.Drawing\ColorConverter.cs" />
-   <Compile Include="System.Drawing\Color.cs" />
-   <Compile Include="System.Drawing\ColorTranslator.cs" />
-   <Compile Include="System.Drawing\ComIStreamMarshaler.cs" />
-   <Compile Include="System.Drawing\ComIStreamWrapper.cs" />
-   <Compile Include="System.Drawing\ContentAlignment.cs" />
-   <Compile Include="System.Drawing\CopyPixelOperation.cs" />
-   <Compile Include="System.Drawing\Font.cs" />
-   <Compile Include="System.Drawing\FontConverter.cs" />
-   <Compile Include="System.Drawing\FontFamily.cs" />
-   <Compile Include="System.Drawing\FontStyle.cs" />
-   <Compile Include="System.Drawing\Graphics.cs" />
-   <Compile Include="System.Drawing\GraphicsUnit.cs" />
-   <Compile Include="System.Drawing\gdipEnums.cs" />
-   <Compile Include="System.Drawing\gdipFunctions.cs" />
-   <Compile Include="System.Drawing\gdipStructs.cs" />
-   <Compile Include="System.Drawing\KnownColor.cs" />
-   <Compile Include="System.Drawing\KnownColors.cs" />
-   <Compile Include="System.Drawing\IconConverter.cs" />
-   <Compile Include="System.Drawing\Icon.cs" />
-   <Compile Include="System.Drawing\IDeviceContext.cs" />
-   <Compile Include="System.Drawing\ImageAnimator.cs" />
-   <Compile Include="System.Drawing\ImageConverter.cs" />
-   <Compile Include="System.Drawing\Image.cs" />
-   <Compile Include="System.Drawing\ImageFormatConverter.cs" />
-   <Compile Include="System.Drawing\Pen.cs" />
-   <Compile Include="System.Drawing\Pens.cs" />
-   <Compile Include="System.Drawing\PointConverter.cs" />
-   <Compile Include="System.Drawing\Point.cs" />
-   <Compile Include="System.Drawing\PointF.cs" />
-   <Compile Include="System.Drawing\RectangleConverter.cs" />
-   <Compile Include="System.Drawing\Rectangle.cs" />
-   <Compile Include="System.Drawing\RectangleF.cs" />
-   <Compile Include="System.Drawing\Region.cs" />
-   <Compile Include="System.Drawing\RotateFlipType.cs" />
-   <Compile Include="System.Drawing\SizeConverter.cs" />
-   <Compile Include="System.Drawing\Size.cs" />
-   <Compile Include="System.Drawing\SizeF.cs" />
-   <Compile Include="System.Drawing\SizeFConverter.cs" />
-   <Compile Include="System.Drawing\SolidBrush.cs" />
-   <Compile Include="System.Drawing\SRDescriptionAttribute.cs" />
-   <Compile Include="System.Drawing\StringAligment.cs" />
-   <Compile Include="System.Drawing\StringDigitSubstitute.cs" />
-   <Compile Include="System.Drawing\StringFormat.cs" />
-   <Compile Include="System.Drawing\StringFormatFlags.cs" />
-   <Compile Include="System.Drawing\StringTrimming.cs" />
-   <Compile Include="System.Drawing\StringUnit.cs" />
-   <Compile Include="System.Drawing\SystemBrushes.cs" />
-   <Compile Include="System.Drawing\SystemColors.cs" />
-   <Compile Include="System.Drawing\SystemFonts.cs" />
-   <Compile Include="System.Drawing\SystemIcons.cs" />
-   <Compile Include="System.Drawing\SystemPens.cs" />
-   <Compile Include="System.Drawing\TextureBrush.cs" />
-   <Compile Include="System.Drawing\ToolboxBitmapAttribute.cs" />
-   <Compile Include="System.Drawing.Design\UITypeEditorEditStyle.cs" />
-   <Compile Include="System.Drawing.Design\IPropertyValueUIService.cs" />
-   <Compile Include="System.Drawing.Design\IToolboxItemProvider.cs" />
-   <Compile Include="System.Drawing.Design\PropertyValueItem.cs" />
-   <Compile Include="System.Drawing.Design\PropertyValueUIHandler.cs" />
-   <Compile Include="System.Drawing.Design\PropertyValueUIItemInvokeHandler.cs" />
-   <Compile Include="System.Drawing.Design\CategoryNameCollection.cs" />
-   <Compile Include="System.Drawing.Design\IToolboxService.cs" />
-   <Compile Include="System.Drawing.Design\IToolboxUser.cs" />
-   <Compile Include="System.Drawing.Design\PaintValueEventArgs.cs" />
-   <Compile Include="System.Drawing.Design\ToolboxComponentsCreatedEventArgs.cs" />
-   <Compile Include="System.Drawing.Design\ToolboxComponentsCreatedEventHandler.cs" />
-   <Compile Include="System.Drawing.Design\ToolboxComponentsCreatingEventArgs.cs" />
-   <Compile Include="System.Drawing.Design\ToolboxComponentsCreatingEventHandler.cs" />
-   <Compile Include="System.Drawing.Design\ToolboxItemCreatorCallback.cs" />
-   <Compile Include="System.Drawing.Design\ToolboxItem.cs" />
-   <Compile Include="System.Drawing.Design\UITypeEditor.cs" />
-   <Compile Include="System.Drawing.Design\ToolboxItemCollection.cs" />
-   <Compile Include="System.Drawing.Drawing2D\AdjustableArrowCap.cs" />
-   <Compile Include="System.Drawing.Drawing2D\Blend.cs" />
-   <Compile Include="System.Drawing.Drawing2D\ColorBlend.cs" />
-   <Compile Include="System.Drawing.Drawing2D\CombineMode.cs" />
-   <Compile Include="System.Drawing.Drawing2D\CompostingMode.cs" />
-   <Compile Include="System.Drawing.Drawing2D\CompostingQuality.cs" />
-   <Compile Include="System.Drawing.Drawing2D\CoordinateSpace.cs" />
-   <Compile Include="System.Drawing.Drawing2D\CustomLineCap.cs" />
-   <Compile Include="System.Drawing.Drawing2D\DashCap.cs" />
-   <Compile Include="System.Drawing.Drawing2D\DashStyle.cs" />
-   <Compile Include="System.Drawing.Drawing2D\FillMode.cs" />
-   <Compile Include="System.Drawing.Drawing2D\FlushIntention.cs" />
-   <Compile Include="System.Drawing.Drawing2D\GraphicsContainer.cs" />
-   <Compile Include="System.Drawing.Drawing2D\GraphicsPath.cs" />
-   <Compile Include="System.Drawing.Drawing2D\GraphicsPathIterator.cs" />
-   <Compile Include="System.Drawing.Drawing2D\GraphicsState.cs" />
-   <Compile Include="System.Drawing.Drawing2D\HatchBrush.cs" />
-   <Compile Include="System.Drawing.Drawing2D\HatchStyle.cs" />
-   <Compile Include="System.Drawing.Drawing2D\InterpolationMode.cs" />
-   <Compile Include="System.Drawing.Drawing2D\LinearGradientBrush.cs" />
-   <Compile Include="System.Drawing.Drawing2D\LinearGradientMode.cs" />
-   <Compile Include="System.Drawing.Drawing2D\LineCap.cs" />
-   <Compile Include="System.Drawing.Drawing2D\LineJoin.cs" />
-   <Compile Include="System.Drawing.Drawing2D\Matrix.cs" />
-   <Compile Include="System.Drawing.Drawing2D\MatrixOrder.cs" />
-   <Compile Include="System.Drawing.Drawing2D\PathData.cs" />
-   <Compile Include="System.Drawing.Drawing2D\PathGradientBrush.cs" />
-   <Compile Include="System.Drawing.Drawing2D\PathPointType.cs" />
-   <Compile Include="System.Drawing.Drawing2D\PenAlignment.cs" />
-   <Compile Include="System.Drawing.Drawing2D\PenType.cs" />
-   <Compile Include="System.Drawing.Drawing2D\PixelOffsetMode.cs" />
-   <Compile Include="System.Drawing.Drawing2D\QualityMode.cs" />
-   <Compile Include="System.Drawing.Drawing2D\RegionData.cs" />
-   <Compile Include="System.Drawing.Drawing2D\SmoothingMode.cs" />
-   <Compile Include="..\..\build\common\MonoTODOAttribute.cs" />
-   <Compile Include="System.Drawing.Drawing2D\WarpMode.cs" />
-   <Compile Include="System.Drawing.Drawing2D\WrapMode.cs" />
-   <Compile Include="System.Drawing.Imaging\BitmapData.cs" />
-   <Compile Include="System.Drawing.Imaging\ColorAdjustType.cs" />
-   <Compile Include="System.Drawing.Imaging\ColorChannelFlag.cs" />
-   <Compile Include="System.Drawing.Imaging\ColorMap.cs" />
-   <Compile Include="System.Drawing.Imaging\ColorMapType.cs" />
-   <Compile Include="System.Drawing.Imaging\ColorMatrix.cs" />
-   <Compile Include="System.Drawing.Imaging\ColorMatrixFlag.cs" />
-   <Compile Include="System.Drawing.Imaging\ColorMode.cs" />
-   <Compile Include="System.Drawing.Imaging\ColorPalette.cs" />
-   <Compile Include="System.Drawing.Imaging\EmfPlusRecordType.cs" />
-   <Compile Include="System.Drawing.Imaging\EmfType.cs" />
-   <Compile Include="System.Drawing.Imaging\Encoder.cs" />
-   <Compile Include="System.Drawing.Imaging\EncoderParameter.cs" />
-   <Compile Include="System.Drawing.Imaging\EncoderParameters.cs" />
-   <Compile Include="System.Drawing.Imaging\EncoderParameterValueType.cs" />
-   <Compile Include="System.Drawing.Imaging\EncoderValue.cs" />
-   <Compile Include="System.Drawing.Imaging\FrameDimension.cs" />
-   <Compile Include="System.Drawing.Imaging\ImageAttributes.cs" />
-   <Compile Include="System.Drawing.Imaging\ImageCodecFlags.cs" />
-   <Compile Include="System.Drawing.Imaging\ImageCodecInfo.cs" />
-   <Compile Include="System.Drawing.Imaging\ImageFlags.cs" />
-   <Compile Include="System.Drawing.Imaging\ImageFormat.cs" />
-   <Compile Include="System.Drawing.Imaging\ImageLockMode.cs" />
-   <Compile Include="System.Drawing.Imaging\Metafile.cs" />
-   <Compile Include="System.Drawing.Imaging\MetafileFrameUnit.cs" />
-   <Compile Include="System.Drawing.Imaging\MetafileHeader.cs" />
-   <Compile Include="System.Drawing.Imaging\MetafileType.cs" />
-   <Compile Include="System.Drawing.Imaging\MetaHeader.cs" />
-   <Compile Include="System.Drawing.Imaging\PaletteFlags.cs" />
-   <Compile Include="System.Drawing.Imaging\PixelFormat.cs" />
-   <Compile Include="System.Drawing.Imaging\PlayRecordCallback.cs" />
-   <Compile Include="System.Drawing.Imaging\PropertyItem.cs" />
-   <Compile Include="System.Drawing.Imaging\WmfPlaceableFileHeader.cs" />
-   <Compile Include="System.Drawing.Printing\Duplex.cs" />
-   <Compile Include="System.Drawing.Printing\InvalidPrinterException.cs" />
-   <Compile Include="System.Drawing.Printing\MarginsConverter.cs" />
-   <Compile Include="System.Drawing.Printing\Margins.cs" />
-   <Compile Include="System.Drawing.Printing\PrintingServices.cs" />
-   <Compile Include="System.Drawing.Printing\PrintingServicesWin32.cs" />
-   <Compile Include="System.Drawing.Printing\PrintingServicesUnix.cs" />
-   <Compile Include="System.Drawing.Printing\PageSettings.cs" />
-   <Compile Include="System.Drawing.Printing\PaperKind.cs" />
-   <Compile Include="System.Drawing.Printing\PaperSize.cs" />
-   <Compile Include="System.Drawing.Printing\PaperSource.cs" />
-   <Compile Include="System.Drawing.Printing\PaperSourceKind.cs" />
-   <Compile Include="System.Drawing.Printing\PreviewPageInfo.cs" />
-   <Compile Include="System.Drawing.Printing\PreviewPrintController.cs" />
-   <Compile Include="System.Drawing.Printing\PrintController.cs" />
-   <Compile Include="System.Drawing.Printing\PrintDocument.cs" />
-   <Compile Include="System.Drawing.Printing\PrinterResolution.cs" />
-   <Compile Include="System.Drawing.Printing\PrinterResolutionKind.cs" />
-   <Compile Include="System.Drawing.Printing\PrinterSettings.cs" />
-   <Compile Include="System.Drawing.Printing\PrinterUnit.cs" />
-   <Compile Include="System.Drawing.Printing\PrinterUnitConvert.cs" />
-   <Compile Include="System.Drawing.Printing\PrintEventArgs.cs" />
-   <Compile Include="System.Drawing.Printing\PrintEventHandler.cs" />
-   <Compile Include="System.Drawing.Printing\PrintingPermissionAttribute.cs" />
-   <Compile Include="System.Drawing.Printing\PrintingPermission.cs" />
-   <Compile Include="System.Drawing.Printing\PrintingPermissionLevel.cs" />
-   <Compile Include="System.Drawing.Printing\PrintAction.cs" />
-   <Compile Include="System.Drawing.Printing\PrintPageEventArgs.cs" />
-   <Compile Include="System.Drawing.Printing\PrintPageEventHandler.cs" />
-   <Compile Include="System.Drawing.Printing\PrintRange.cs" />
-   <Compile Include="System.Drawing.Printing\QueryPageSettingsEventArgs.cs" />
-   <Compile Include="System.Drawing.Printing\QueryPageSettingsEventHandler.cs" />
-   <Compile Include="System.Drawing.Printing\StandardPrintController.cs" />
-   <Compile Include="System.Drawing.Text\FontCollection.cs" />
-   <Compile Include="System.Drawing.Text\PrivateFontCollection.cs" />
-   <Compile Include="System.Drawing.Text\GenericFontFamilies.cs" />
-   <Compile Include="System.Drawing.Text\HotkeyPrefix.cs" />
-   <Compile Include="System.Drawing.Text\InstalledFontCollection.cs" />
-   <Compile Include="System.Drawing.Text\TextRenderingHint.cs" />
+   <Compile Include="Assembly\AssemblyInfo.cs" />\r
+   <Compile Include="..\..\build\common\Consts.cs" />\r
+   <Compile Include="..\..\build\common\Locale.cs" />\r
+   <Compile Include="System.Drawing\Bitmap.cs" />\r
+   <Compile Include="System.Drawing\Brush.cs" />\r
+   <Compile Include="System.Drawing\Brushes.cs" />\r
+   <Compile Include="System.Drawing\BufferedGraphics.cs" />\r
+   <Compile Include="System.Drawing\BufferedGraphicsManager.cs" />\r
+   <Compile Include="System.Drawing\BufferedGraphicsContext.cs" />\r
+   <Compile Include="System.Drawing\CharacterRange.cs" />\r
+   <Compile Include="System.Drawing\macFunctions.cs" />\r
+   <Compile Include="System.Drawing\ColorConverter.cs" />\r
+   <Compile Include="System.Drawing\Color.cs" />\r
+   <Compile Include="System.Drawing\ColorTranslator.cs" />\r
+   <Compile Include="System.Drawing\ComIStreamMarshaler.cs" />\r
+   <Compile Include="System.Drawing\ComIStreamWrapper.cs" />\r
+   <Compile Include="System.Drawing\ContentAlignment.cs" />\r
+   <Compile Include="System.Drawing\CopyPixelOperation.cs" />\r
+   <Compile Include="System.Drawing\Font.cs" />\r
+   <Compile Include="System.Drawing\FontConverter.cs" />\r
+   <Compile Include="System.Drawing\FontFamily.cs" />\r
+   <Compile Include="System.Drawing\FontStyle.cs" />\r
+   <Compile Include="System.Drawing\Graphics.cs" />\r
+   <Compile Include="System.Drawing\GraphicsUnit.cs" />\r
+   <Compile Include="System.Drawing\gdipEnums.cs" />\r
+   <Compile Include="System.Drawing\gdipFunctions.cs" />\r
+   <Compile Include="System.Drawing\gdipStructs.cs" />\r
+   <Compile Include="System.Drawing\KnownColor.cs" />\r
+   <Compile Include="System.Drawing\KnownColors.cs" />\r
+   <Compile Include="System.Drawing\IconConverter.cs" />\r
+   <Compile Include="System.Drawing\Icon.cs" />\r
+   <Compile Include="System.Drawing\IDeviceContext.cs" />\r
+   <Compile Include="System.Drawing\ImageAnimator.cs" />\r
+   <Compile Include="System.Drawing\ImageConverter.cs" />\r
+   <Compile Include="System.Drawing\Image.cs" />\r
+   <Compile Include="System.Drawing\ImageFormatConverter.cs" />\r
+   <Compile Include="System.Drawing\Pen.cs" />\r
+   <Compile Include="System.Drawing\Pens.cs" />\r
+   <Compile Include="System.Drawing\PointConverter.cs" />\r
+   <Compile Include="System.Drawing\Point.cs" />\r
+   <Compile Include="System.Drawing\PointF.cs" />\r
+   <Compile Include="System.Drawing\RectangleConverter.cs" />\r
+   <Compile Include="System.Drawing\Rectangle.cs" />\r
+   <Compile Include="System.Drawing\RectangleF.cs" />\r
+   <Compile Include="System.Drawing\Region.cs" />\r
+   <Compile Include="System.Drawing\RotateFlipType.cs" />\r
+   <Compile Include="System.Drawing\SizeConverter.cs" />\r
+   <Compile Include="System.Drawing\Size.cs" />\r
+   <Compile Include="System.Drawing\SizeF.cs" />\r
+   <Compile Include="System.Drawing\SizeFConverter.cs" />\r
+   <Compile Include="System.Drawing\SolidBrush.cs" />\r
+   <Compile Include="System.Drawing\SRDescriptionAttribute.cs" />\r
+   <Compile Include="System.Drawing\StringAligment.cs" />\r
+   <Compile Include="System.Drawing\StringDigitSubstitute.cs" />\r
+   <Compile Include="System.Drawing\StringFormat.cs" />\r
+   <Compile Include="System.Drawing\StringFormatFlags.cs" />\r
+   <Compile Include="System.Drawing\StringTrimming.cs" />\r
+   <Compile Include="System.Drawing\StringUnit.cs" />\r
+   <Compile Include="System.Drawing\SystemBrushes.cs" />\r
+   <Compile Include="System.Drawing\SystemColors.cs" />\r
+   <Compile Include="System.Drawing\SystemFonts.cs" />\r
+   <Compile Include="System.Drawing\SystemIcons.cs" />\r
+   <Compile Include="System.Drawing\SystemPens.cs" />\r
+   <Compile Include="System.Drawing\TextureBrush.cs" />\r
+   <Compile Include="System.Drawing\ToolboxBitmapAttribute.cs" />\r
+   <Compile Include="System.Drawing.Design\UITypeEditorEditStyle.cs" />\r
+   <Compile Include="System.Drawing.Design\IPropertyValueUIService.cs" />\r
+   <Compile Include="System.Drawing.Design\IToolboxItemProvider.cs" />\r
+   <Compile Include="System.Drawing.Design\PropertyValueItem.cs" />\r
+   <Compile Include="System.Drawing.Design\PropertyValueUIHandler.cs" />\r
+   <Compile Include="System.Drawing.Design\PropertyValueUIItemInvokeHandler.cs" />\r
+   <Compile Include="System.Drawing.Design\CategoryNameCollection.cs" />\r
+   <Compile Include="System.Drawing.Design\IToolboxService.cs" />\r
+   <Compile Include="System.Drawing.Design\IToolboxUser.cs" />\r
+   <Compile Include="System.Drawing.Design\PaintValueEventArgs.cs" />\r
+   <Compile Include="System.Drawing.Design\ToolboxComponentsCreatedEventArgs.cs" />\r
+   <Compile Include="System.Drawing.Design\ToolboxComponentsCreatedEventHandler.cs" />\r
+   <Compile Include="System.Drawing.Design\ToolboxComponentsCreatingEventArgs.cs" />\r
+   <Compile Include="System.Drawing.Design\ToolboxComponentsCreatingEventHandler.cs" />\r
+   <Compile Include="System.Drawing.Design\ToolboxItemCreatorCallback.cs" />\r
+   <Compile Include="System.Drawing.Design\ToolboxItem.cs" />\r
+   <Compile Include="System.Drawing.Design\UITypeEditor.cs" />\r
+   <Compile Include="System.Drawing.Design\ToolboxItemCollection.cs" />\r
+   <Compile Include="System.Drawing.Drawing2D\AdjustableArrowCap.cs" />\r
+   <Compile Include="System.Drawing.Drawing2D\Blend.cs" />\r
+   <Compile Include="System.Drawing.Drawing2D\ColorBlend.cs" />\r
+   <Compile Include="System.Drawing.Drawing2D\CombineMode.cs" />\r
+   <Compile Include="System.Drawing.Drawing2D\CompostingMode.cs" />\r
+   <Compile Include="System.Drawing.Drawing2D\CompostingQuality.cs" />\r
+   <Compile Include="System.Drawing.Drawing2D\CoordinateSpace.cs" />\r
+   <Compile Include="System.Drawing.Drawing2D\CustomLineCap.cs" />\r
+   <Compile Include="System.Drawing.Drawing2D\DashCap.cs" />\r
+   <Compile Include="System.Drawing.Drawing2D\DashStyle.cs" />\r
+   <Compile Include="System.Drawing.Drawing2D\FillMode.cs" />\r
+   <Compile Include="System.Drawing.Drawing2D\FlushIntention.cs" />\r
+   <Compile Include="System.Drawing.Drawing2D\GraphicsContainer.cs" />\r
+   <Compile Include="System.Drawing.Drawing2D\GraphicsPath.cs" />\r
+   <Compile Include="System.Drawing.Drawing2D\GraphicsPathIterator.cs" />\r
+   <Compile Include="System.Drawing.Drawing2D\GraphicsState.cs" />\r
+   <Compile Include="System.Drawing.Drawing2D\HatchBrush.cs" />\r
+   <Compile Include="System.Drawing.Drawing2D\HatchStyle.cs" />\r
+   <Compile Include="System.Drawing.Drawing2D\InterpolationMode.cs" />\r
+   <Compile Include="System.Drawing.Drawing2D\LinearGradientBrush.cs" />\r
+   <Compile Include="System.Drawing.Drawing2D\LinearGradientMode.cs" />\r
+   <Compile Include="System.Drawing.Drawing2D\LineCap.cs" />\r
+   <Compile Include="System.Drawing.Drawing2D\LineJoin.cs" />\r
+   <Compile Include="System.Drawing.Drawing2D\Matrix.cs" />\r
+   <Compile Include="System.Drawing.Drawing2D\MatrixOrder.cs" />\r
+   <Compile Include="System.Drawing.Drawing2D\PathData.cs" />\r
+   <Compile Include="System.Drawing.Drawing2D\PathGradientBrush.cs" />\r
+   <Compile Include="System.Drawing.Drawing2D\PathPointType.cs" />\r
+   <Compile Include="System.Drawing.Drawing2D\PenAlignment.cs" />\r
+   <Compile Include="System.Drawing.Drawing2D\PenType.cs" />\r
+   <Compile Include="System.Drawing.Drawing2D\PixelOffsetMode.cs" />\r
+   <Compile Include="System.Drawing.Drawing2D\QualityMode.cs" />\r
+   <Compile Include="System.Drawing.Drawing2D\RegionData.cs" />\r
+   <Compile Include="System.Drawing.Drawing2D\SmoothingMode.cs" />\r
+   <Compile Include="..\..\build\common\MonoTODOAttribute.cs" />\r
+   <Compile Include="System.Drawing.Drawing2D\WarpMode.cs" />\r
+   <Compile Include="System.Drawing.Drawing2D\WrapMode.cs" />\r
+   <Compile Include="System.Drawing.Imaging\BitmapData.cs" />\r
+   <Compile Include="System.Drawing.Imaging\ColorAdjustType.cs" />\r
+   <Compile Include="System.Drawing.Imaging\ColorChannelFlag.cs" />\r
+   <Compile Include="System.Drawing.Imaging\ColorMap.cs" />\r
+   <Compile Include="System.Drawing.Imaging\ColorMapType.cs" />\r
+   <Compile Include="System.Drawing.Imaging\ColorMatrix.cs" />\r
+   <Compile Include="System.Drawing.Imaging\ColorMatrixFlag.cs" />\r
+   <Compile Include="System.Drawing.Imaging\ColorMode.cs" />\r
+   <Compile Include="System.Drawing.Imaging\ColorPalette.cs" />\r
+   <Compile Include="System.Drawing.Imaging\EmfPlusRecordType.cs" />\r
+   <Compile Include="System.Drawing.Imaging\EmfType.cs" />\r
+   <Compile Include="System.Drawing.Imaging\Encoder.cs" />\r
+   <Compile Include="System.Drawing.Imaging\EncoderParameter.cs" />\r
+   <Compile Include="System.Drawing.Imaging\EncoderParameters.cs" />\r
+   <Compile Include="System.Drawing.Imaging\EncoderParameterValueType.cs" />\r
+   <Compile Include="System.Drawing.Imaging\EncoderValue.cs" />\r
+   <Compile Include="System.Drawing.Imaging\FrameDimension.cs" />\r
+   <Compile Include="System.Drawing.Imaging\ImageAttributes.cs" />\r
+   <Compile Include="System.Drawing.Imaging\ImageCodecFlags.cs" />\r
+   <Compile Include="System.Drawing.Imaging\ImageCodecInfo.cs" />\r
+   <Compile Include="System.Drawing.Imaging\ImageFlags.cs" />\r
+   <Compile Include="System.Drawing.Imaging\ImageFormat.cs" />\r
+   <Compile Include="System.Drawing.Imaging\ImageLockMode.cs" />\r
+   <Compile Include="System.Drawing.Imaging\Metafile.cs" />\r
+   <Compile Include="System.Drawing.Imaging\MetafileFrameUnit.cs" />\r
+   <Compile Include="System.Drawing.Imaging\MetafileHeader.cs" />\r
+   <Compile Include="System.Drawing.Imaging\MetafileType.cs" />\r
+   <Compile Include="System.Drawing.Imaging\MetaHeader.cs" />\r
+   <Compile Include="System.Drawing.Imaging\PaletteFlags.cs" />\r
+   <Compile Include="System.Drawing.Imaging\PixelFormat.cs" />\r
+   <Compile Include="System.Drawing.Imaging\PlayRecordCallback.cs" />\r
+   <Compile Include="System.Drawing.Imaging\PropertyItem.cs" />\r
+   <Compile Include="System.Drawing.Imaging\WmfPlaceableFileHeader.cs" />\r
+   <Compile Include="System.Drawing.Printing\Duplex.cs" />\r
+   <Compile Include="System.Drawing.Printing\InvalidPrinterException.cs" />\r
+   <Compile Include="System.Drawing.Printing\MarginsConverter.cs" />\r
+   <Compile Include="System.Drawing.Printing\Margins.cs" />\r
+   <Compile Include="System.Drawing.Printing\PrintingServices.cs" />\r
+   <Compile Include="System.Drawing.Printing\PrintingServicesWin32.cs" />\r
+   <Compile Include="System.Drawing.Printing\PrintingServicesUnix.cs" />\r
+   <Compile Include="System.Drawing.Printing\PageSettings.cs" />\r
+   <Compile Include="System.Drawing.Printing\PaperKind.cs" />\r
+   <Compile Include="System.Drawing.Printing\PaperSize.cs" />\r
+   <Compile Include="System.Drawing.Printing\PaperSource.cs" />\r
+   <Compile Include="System.Drawing.Printing\PaperSourceKind.cs" />\r
+   <Compile Include="System.Drawing.Printing\PreviewPageInfo.cs" />\r
+   <Compile Include="System.Drawing.Printing\PreviewPrintController.cs" />\r
+   <Compile Include="System.Drawing.Printing\PrintController.cs" />\r
+   <Compile Include="System.Drawing.Printing\PrintDocument.cs" />\r
+   <Compile Include="System.Drawing.Printing\PrinterResolution.cs" />\r
+   <Compile Include="System.Drawing.Printing\PrinterResolutionKind.cs" />\r
+   <Compile Include="System.Drawing.Printing\PrinterSettings.cs" />\r
+   <Compile Include="System.Drawing.Printing\PrinterUnit.cs" />\r
+   <Compile Include="System.Drawing.Printing\PrinterUnitConvert.cs" />\r
+   <Compile Include="System.Drawing.Printing\PrintEventArgs.cs" />\r
+   <Compile Include="System.Drawing.Printing\PrintEventHandler.cs" />\r
+   <Compile Include="System.Drawing.Printing\PrintingPermissionAttribute.cs" />\r
+   <Compile Include="System.Drawing.Printing\PrintingPermission.cs" />\r
+   <Compile Include="System.Drawing.Printing\PrintingPermissionLevel.cs" />\r
+   <Compile Include="System.Drawing.Printing\PrintAction.cs" />\r
+   <Compile Include="System.Drawing.Printing\PrintPageEventArgs.cs" />\r
+   <Compile Include="System.Drawing.Printing\PrintPageEventHandler.cs" />\r
+   <Compile Include="System.Drawing.Printing\PrintRange.cs" />\r
+   <Compile Include="System.Drawing.Printing\QueryPageSettingsEventArgs.cs" />\r
+   <Compile Include="System.Drawing.Printing\QueryPageSettingsEventHandler.cs" />\r
+   <Compile Include="System.Drawing.Printing\StandardPrintController.cs" />\r
+   <Compile Include="System.Drawing.Text\FontCollection.cs" />\r
+   <Compile Include="System.Drawing.Text\PrivateFontCollection.cs" />\r
+   <Compile Include="System.Drawing.Text\GenericFontFamilies.cs" />\r
+   <Compile Include="System.Drawing.Text\HotkeyPrefix.cs" />\r
+   <Compile Include="System.Drawing.Text\InstalledFontCollection.cs" />\r
+   <Compile Include="System.Drawing.Text\TextRenderingHint.cs" />\r
 \r
   </ItemGroup>\r
   <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
     <PreBuildEvent></PreBuildEvent>\r
   </PropertyGroup>\r
   <ItemGroup>\r
-    <Reference Include="mscorlib.dll">
-      <SpecificVersion>False</SpecificVersion>
-      <HintPath>mscorlib.dll</HintPath>
-    </Reference>
-    <Reference Include="mscorlib.dll">
-      <SpecificVersion>False</SpecificVersion>
-      <HintPath>mscorlib.dll</HintPath>
-    </Reference>
-    <Reference Include="System.dll">
-      <SpecificVersion>False</SpecificVersion>
-      <HintPath>System.dll</HintPath>
-    </Reference>
+    <Reference Include="mscorlib.dll">\r
+      <SpecificVersion>False</SpecificVersion>\r
+      <HintPath>mscorlib.dll</HintPath>\r
+    </Reference>\r
+    <Reference Include="mscorlib.dll">\r
+      <SpecificVersion>False</SpecificVersion>\r
+      <HintPath>mscorlib.dll</HintPath>\r
+    </Reference>\r
+    <Reference Include="System.dll">\r
+      <SpecificVersion>False</SpecificVersion>\r
+      <HintPath>System.dll</HintPath>\r
+    </Reference>\r
 \r
   </ItemGroup>\r
   <ItemGroup>\r
     <Folder Include="Properties\" />\r
   </ItemGroup>\r
-    <ItemGroup>
-    <EmbeddedResource Include="Assembly/Mono.ico">
-       <LogicalName>Mono.ico</LogicalName>
-    </EmbeddedResource>
-    <EmbeddedResource Include="Assembly/Information.ico">
-       <LogicalName>Information.ico</LogicalName>
-    </EmbeddedResource>
-    <EmbeddedResource Include="Assembly/Error.ico">
-       <LogicalName>Error.ico</LogicalName>
-    </EmbeddedResource>
-    <EmbeddedResource Include="Assembly/Warning.ico">
-       <LogicalName>Warning.ico</LogicalName>
-    </EmbeddedResource>
-    <EmbeddedResource Include="Assembly/Question.ico">
-       <LogicalName>Question.ico</LogicalName>
-    </EmbeddedResource>
-  </ItemGroup>
+    <ItemGroup>\r
+    <EmbeddedResource Include="Assembly/Mono.ico">\r
+       <LogicalName>Mono.ico</LogicalName>\r
+    </EmbeddedResource>\r
+    <EmbeddedResource Include="Assembly/Information.ico">\r
+       <LogicalName>Information.ico</LogicalName>\r
+    </EmbeddedResource>\r
+    <EmbeddedResource Include="Assembly/Error.ico">\r
+       <LogicalName>Error.ico</LogicalName>\r
+    </EmbeddedResource>\r
+    <EmbeddedResource Include="Assembly/Warning.ico">\r
+       <LogicalName>Warning.ico</LogicalName>\r
+    </EmbeddedResource>\r
+    <EmbeddedResource Include="Assembly/Question.ico">\r
+       <LogicalName>Question.ico</LogicalName>\r
+    </EmbeddedResource>\r
+    <EmbeddedResource Include="Assembly/Shield.ico">\r
+       <LogicalName>Shield.ico</LogicalName>\r
+    </EmbeddedResource>\r
+  </ItemGroup>\r
 \r
 </Project>\r
-
+\r
index 836df2ec25e298b404dd7b08f9caea9f8417cf29..75145623fe38f73d5996e0a370a85fc19e0b0ec2 100644 (file)
@@ -12,7 +12,6 @@
     <NoStdLib>true</NoStdLib>\r
     <AllowUnsafeBlocks>true</AllowUnsafeBlocks>\r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
-    <RootNamespace></RootNamespace>\r
     <AssemblyName>System.Drawing_test_net_2_0</AssemblyName>\r
     <TargetFrameworkVersion>v2.0</TargetFrameworkVersion>\r
     <FileAlignment>512</FileAlignment>\r
   </PropertyGroup>\r
   <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
     <PlatformTarget>AnyCPU</PlatformTarget>\r
-    <DebugSymbols>true</DebugSymbols>\r
+    <DebugSymbols>True</DebugSymbols>\r
     <DebugType>full</DebugType>\r
-    <NoWarn>1699,618,219,169,1595</NoWarn>\r
-    <Optimize>false</Optimize>\r
+    <Optimize>False</Optimize>\r
     <DefineConstants>DEBUG;TRACE;NET_1_1;NET_2_0;TEST</DefineConstants>\r
     <ErrorReport>prompt</ErrorReport>\r
     <WarningLevel>4</WarningLevel>\r
     <AdditionalLibPaths>./../../class/lib/net_2_0</AdditionalLibPaths>\r
+    <OutputPath>.</OutputPath>\r
   </PropertyGroup>\r
   <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
-    <PlatformTarget>AnyCPU</PlatformTarget>  \r
+    <PlatformTarget>AnyCPU</PlatformTarget>\r
     <DebugType>pdbonly</DebugType>\r
-    <NoWarn>1699,618,219,169,1595</NoWarn>\r
-    <Optimize>true</Optimize>\r
+    <Optimize>True</Optimize>\r
     <DefineConstants>NET_1_1;NET_2_0;TEST</DefineConstants>\r
     <ErrorReport>prompt</ErrorReport>\r
     <WarningLevel>4</WarningLevel>\r
     <AdditionalLibPaths>./../../class/lib/net_2_0</AdditionalLibPaths>\r
+    <OutputPath>.</OutputPath>\r
   </PropertyGroup>\r
   <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
   <ItemGroup>\r
-   <Compile Include="..\..\build\common\Locale.cs" />
-   <Compile Include="System.Drawing\gdipEnums.cs" />
-   <Compile Include="System.Drawing\gdipFunctions.cs" />
-   <Compile Include="System.Drawing\gdipStructs.cs" />
-   <Compile Include="Test\HostIgnoreList.cs" />
-   <Compile Include="Test\System.Drawing\ColorTranslator.cs" />
-   <Compile Include="Test\System.Drawing\ColorConverter.cs" />
-   <Compile Include="Test\System.Drawing\FontFamilyTest.cs" />
-   <Compile Include="Test\System.Drawing\GDIPlusTest.cs" />
-   <Compile Include="Test\System.Drawing\PenTest.cs" />
-   <Compile Include="Test\System.Drawing\RegionDataTest.cs" />
-   <Compile Include="Test\System.Drawing\RegionNonRectTest.cs" />
-   <Compile Include="Test\System.Drawing\SolidBrushTest.cs" />
-   <Compile Include="Test\System.Drawing\SystemFontsTest.cs" />
-   <Compile Include="Test\System.Drawing\SystemIconsTest.cs" />
-   <Compile Include="Test\System.Drawing\TestBitmap.cs" />
-   <Compile Include="Test\System.Drawing\TestBrushes.cs" />
-   <Compile Include="Test\System.Drawing\TestColor.cs" />
-   <Compile Include="Test\System.Drawing\TestFont.cs" />
-   <Compile Include="Test\System.Drawing\TestFontConverter.cs" />
-   <Compile Include="Test\System.Drawing\TestGraphics.cs" />
-   <Compile Include="Test\System.Drawing\TestImage.cs" />
-   <Compile Include="Test\System.Drawing\TestPens.cs" />
-   <Compile Include="Test\System.Drawing\TestPoint.cs" />
-   <Compile Include="Test\System.Drawing\TestPointConverter.cs" />
-   <Compile Include="Test\System.Drawing\TestPointF.cs" />
-   <Compile Include="Test\System.Drawing\TestRectangle.cs" />
-   <Compile Include="Test\System.Drawing\TestRectangleConverter.cs" />
-   <Compile Include="Test\System.Drawing\TestRectangleF.cs" />
-   <Compile Include="Test\System.Drawing\TestRegion.cs" />
-   <Compile Include="Test\System.Drawing\TestSize.cs" />
-   <Compile Include="Test\System.Drawing\TestSizeConverter.cs" />
-   <Compile Include="Test\System.Drawing\TestSizeFConverter.cs" />
-   <Compile Include="Test\System.Drawing\TestSizeF.cs" />
-   <Compile Include="Test\System.Drawing\TestStringFormat.cs" />
-   <Compile Include="Test\System.Drawing\TestSystemBrushes.cs" />
-   <Compile Include="Test\System.Drawing\TestSystemPens.cs" />
-   <Compile Include="Test\System.Drawing\TestImageConverter.cs" />
-   <Compile Include="Test\System.Drawing\TestImageFormatConverter.cs" />
-   <Compile Include="Test\System.Drawing\TestIconConverter.cs" />
-   <Compile Include="Test\System.Drawing\TestIcon.cs" />
-   <Compile Include="Test\System.Drawing\TextureBrushTest.cs" />
-   <Compile Include="Test\System.Drawing.Design\TestToolboxItem.cs" />
-   <Compile Include="Test\System.Drawing.Design\UITypeEditorTest.cs" />
-   <Compile Include="Test\System.Drawing.Drawing2D\GraphicsPathTest.cs" />
-   <Compile Include="Test\System.Drawing.Drawing2D\LinearGradientBrushTest.cs" />
-   <Compile Include="Test\System.Drawing.Drawing2D\PathDataTest.cs" />
-   <Compile Include="Test\System.Drawing.Drawing2D\PathGradientBrushTest.cs" />
-   <Compile Include="Test\System.Drawing.Drawing2D\TestBlend.cs" />
-   <Compile Include="Test\System.Drawing.Drawing2D\TestColorBlend.cs" />
-   <Compile Include="Test\System.Drawing.Drawing2D\TestHatchBrush.cs" />
-   <Compile Include="Test\System.Drawing.Drawing2D\TestMatrix.cs" />
-   <Compile Include="Test\System.Drawing.Imaging\EmfPlusRecordTypeTest.cs" />
-   <Compile Include="Test\System.Drawing.Imaging\FrameDimensionTest.cs" />
-   <Compile Include="Test\System.Drawing.Imaging\GifCodecTest.cs" />
-   <Compile Include="Test\System.Drawing.Imaging\IconCodecTest.cs" />
-   <Compile Include="Test\System.Drawing.Imaging\MetafileTest.cs" />
-   <Compile Include="Test\System.Drawing.Imaging\MetaHeaderTest.cs" />
-   <Compile Include="Test\System.Drawing.Imaging\PngCodecTest.cs" />
-   <Compile Include="Test\System.Drawing.Imaging\TestImageCodecInfo.cs" />
-   <Compile Include="Test\System.Drawing.Imaging\TestImageFormat.cs" />
-   <Compile Include="Test\System.Drawing.Imaging\TestBmpCodec.cs" />
-   <Compile Include="Test\System.Drawing.Imaging\TestJpegCodec.cs" />
-   <Compile Include="Test\System.Drawing.Imaging\TestColorMatrix.cs" />
-   <Compile Include="Test\System.Drawing.Imaging\TestImageAttributes.cs" />
-   <Compile Include="Test\System.Drawing.Imaging\TiffCodecTest.cs" />
-   <Compile Include="Test\System.Drawing.Imaging\WmfPlaceableFileHeaderTest.cs" />
-   <Compile Include="Test\System.Drawing.Printing\MarginsTest.cs" />
-   <Compile Include="Test\System.Drawing.Printing\PageSettingsTest.cs" />
-   <Compile Include="Test\System.Drawing.Printing\PageSourceTest.cs" />
-   <Compile Include="Test\System.Drawing.Printing\PaperSizeTest.cs" />
-   <Compile Include="Test\System.Drawing.Printing\PrinterUnitConvertTest.cs" />
-   <Compile Include="Test\System.Drawing.Printing\PrintingPermissionAttributeTest.cs" />
-   <Compile Include="Test\System.Drawing.Printing\PrintingPermissionTest.cs" />
-   <Compile Include="Test\System.Drawing.Printing\PrintingServicesUnixTest.cs" />
-   <Compile Include="Test\System.Drawing.Text\PrivateFontCollectionTest.cs" />
-   <Compile Include="Test\System.Drawing.Text\InstalledFontCollectionTest.cs" />
-   <Compile Include="Test\System.Drawing\BitmapCas.cs" />
-   <Compile Include="Test\System.Drawing\GraphicsCas.cs" />
-   <Compile Include="Test\System.Drawing\RegionCas.cs" />
-   <Compile Include="Test\System.Drawing.Design\CategoryNameCollectionCas.cs" />
-   <Compile Include="Test\System.Drawing.Design\PaintValueEventArgsCas.cs" />
-   <Compile Include="Test\System.Drawing.Design\PropertyValueUIItemCas.cs" />
-   <Compile Include="Test\System.Drawing.Design\ToolboxComponentsCreatedEventArgsCas.cs" />
-   <Compile Include="Test\System.Drawing.Design\ToolboxComponentsCreatingEventArgsCas.cs" />
-   <Compile Include="Test\System.Drawing.Design\ToolboxItemCas.cs" />
-   <Compile Include="Test\System.Drawing.Design\ToolboxItemCollectionCas.cs" />
-   <Compile Include="Test\System.Drawing.Design\UITypeEditorCas.cs" />
-   <Compile Include="Test\System.Drawing.Text\PrivateFontCollectionCas.cs" />
-\r
+    <Compile Include="..\..\build\common\Locale.cs" />\r
+    <Compile Include="System.Drawing\gdipEnums.cs" />\r
+    <Compile Include="System.Drawing\gdipFunctions.cs" />\r
+    <Compile Include="System.Drawing\gdipStructs.cs" />\r
+    <Compile Include="Test\HostIgnoreList.cs" />\r
+    <Compile Include="Test\System.Drawing\ColorTranslator.cs" />\r
+    <Compile Include="Test\System.Drawing\ColorConverter.cs" />\r
+    <Compile Include="Test\System.Drawing\FontFamilyTest.cs" />\r
+    <Compile Include="Test\System.Drawing\GDIPlusTest.cs" />\r
+    <Compile Include="Test\System.Drawing\PenTest.cs" />\r
+    <Compile Include="Test\System.Drawing\RegionDataTest.cs" />\r
+    <Compile Include="Test\System.Drawing\RegionNonRectTest.cs" />\r
+    <Compile Include="Test\System.Drawing\SolidBrushTest.cs" />\r
+    <Compile Include="Test\System.Drawing\SystemFontsTest.cs" />\r
+    <Compile Include="Test\System.Drawing\SystemIconsTest.cs" />\r
+    <Compile Include="Test\System.Drawing\TestBitmap.cs" />\r
+    <Compile Include="Test\System.Drawing\TestBrushes.cs" />\r
+    <Compile Include="Test\System.Drawing\TestColor.cs" />\r
+    <Compile Include="Test\System.Drawing\TestFont.cs" />\r
+    <Compile Include="Test\System.Drawing\TestFontConverter.cs" />\r
+    <Compile Include="Test\System.Drawing\TestGraphics.cs" />\r
+    <Compile Include="Test\System.Drawing\TestImage.cs" />\r
+    <Compile Include="Test\System.Drawing\TestPens.cs" />\r
+    <Compile Include="Test\System.Drawing\TestPoint.cs" />\r
+    <Compile Include="Test\System.Drawing\TestPointConverter.cs" />\r
+    <Compile Include="Test\System.Drawing\TestPointF.cs" />\r
+    <Compile Include="Test\System.Drawing\TestRectangle.cs" />\r
+    <Compile Include="Test\System.Drawing\TestRectangleConverter.cs" />\r
+    <Compile Include="Test\System.Drawing\TestRectangleF.cs" />\r
+    <Compile Include="Test\System.Drawing\TestRegion.cs" />\r
+    <Compile Include="Test\System.Drawing\TestSize.cs" />\r
+    <Compile Include="Test\System.Drawing\TestSizeConverter.cs" />\r
+    <Compile Include="Test\System.Drawing\TestSizeFConverter.cs" />\r
+    <Compile Include="Test\System.Drawing\TestSizeF.cs" />\r
+    <Compile Include="Test\System.Drawing\TestStringFormat.cs" />\r
+    <Compile Include="Test\System.Drawing\TestSystemBrushes.cs" />\r
+    <Compile Include="Test\System.Drawing\TestSystemPens.cs" />\r
+    <Compile Include="Test\System.Drawing\TestImageConverter.cs" />\r
+    <Compile Include="Test\System.Drawing\TestImageFormatConverter.cs" />\r
+    <Compile Include="Test\System.Drawing\TestIconConverter.cs" />\r
+    <Compile Include="Test\System.Drawing\TestIcon.cs" />\r
+    <Compile Include="Test\System.Drawing\TextureBrushTest.cs" />\r
+    <Compile Include="Test\System.Drawing.Design\TestToolboxItem.cs" />\r
+    <Compile Include="Test\System.Drawing.Design\UITypeEditorTest.cs" />\r
+    <Compile Include="Test\System.Drawing.Drawing2D\GraphicsPathTest.cs" />\r
+    <Compile Include="Test\System.Drawing.Drawing2D\LinearGradientBrushTest.cs" />\r
+    <Compile Include="Test\System.Drawing.Drawing2D\PathDataTest.cs" />\r
+    <Compile Include="Test\System.Drawing.Drawing2D\PathGradientBrushTest.cs" />\r
+    <Compile Include="Test\System.Drawing.Drawing2D\TestBlend.cs" />\r
+    <Compile Include="Test\System.Drawing.Drawing2D\TestColorBlend.cs" />\r
+    <Compile Include="Test\System.Drawing.Drawing2D\TestHatchBrush.cs" />\r
+    <Compile Include="Test\System.Drawing.Drawing2D\TestMatrix.cs" />\r
+    <Compile Include="Test\System.Drawing.Imaging\EmfPlusRecordTypeTest.cs" />\r
+    <Compile Include="Test\System.Drawing.Imaging\FrameDimensionTest.cs" />\r
+    <Compile Include="Test\System.Drawing.Imaging\GifCodecTest.cs" />\r
+    <Compile Include="Test\System.Drawing.Imaging\IconCodecTest.cs" />\r
+    <Compile Include="Test\System.Drawing.Imaging\MetafileTest.cs" />\r
+    <Compile Include="Test\System.Drawing.Imaging\MetaHeaderTest.cs" />\r
+    <Compile Include="Test\System.Drawing.Imaging\PngCodecTest.cs" />\r
+    <Compile Include="Test\System.Drawing.Imaging\TestImageCodecInfo.cs" />\r
+    <Compile Include="Test\System.Drawing.Imaging\TestImageFormat.cs" />\r
+    <Compile Include="Test\System.Drawing.Imaging\TestBmpCodec.cs" />\r
+    <Compile Include="Test\System.Drawing.Imaging\TestJpegCodec.cs" />\r
+    <Compile Include="Test\System.Drawing.Imaging\TestColorMatrix.cs" />\r
+    <Compile Include="Test\System.Drawing.Imaging\TestImageAttributes.cs" />\r
+    <Compile Include="Test\System.Drawing.Imaging\TiffCodecTest.cs" />\r
+    <Compile Include="Test\System.Drawing.Imaging\WmfPlaceableFileHeaderTest.cs" />\r
+    <Compile Include="Test\System.Drawing.Printing\MarginsTest.cs" />\r
+    <Compile Include="Test\System.Drawing.Printing\PageSettingsTest.cs" />\r
+    <Compile Include="Test\System.Drawing.Printing\PageSourceTest.cs" />\r
+    <Compile Include="Test\System.Drawing.Printing\PaperSizeTest.cs" />\r
+    <Compile Include="Test\System.Drawing.Printing\PrinterUnitConvertTest.cs" />\r
+    <Compile Include="Test\System.Drawing.Printing\PrintingPermissionAttributeTest.cs" />\r
+    <Compile Include="Test\System.Drawing.Printing\PrintingPermissionTest.cs" />\r
+    <Compile Include="Test\System.Drawing.Printing\PrintingServicesUnixTest.cs" />\r
+    <Compile Include="Test\System.Drawing.Text\PrivateFontCollectionTest.cs" />\r
+    <Compile Include="Test\System.Drawing.Text\InstalledFontCollectionTest.cs" />\r
+    <Compile Include="Test\System.Drawing\BitmapCas.cs" />\r
+    <Compile Include="Test\System.Drawing\GraphicsCas.cs" />\r
+    <Compile Include="Test\System.Drawing\RegionCas.cs" />\r
+    <Compile Include="Test\System.Drawing.Design\CategoryNameCollectionCas.cs" />\r
+    <Compile Include="Test\System.Drawing.Design\PaintValueEventArgsCas.cs" />\r
+    <Compile Include="Test\System.Drawing.Design\PropertyValueUIItemCas.cs" />\r
+    <Compile Include="Test\System.Drawing.Design\ToolboxComponentsCreatedEventArgsCas.cs" />\r
+    <Compile Include="Test\System.Drawing.Design\ToolboxComponentsCreatingEventArgsCas.cs" />\r
+    <Compile Include="Test\System.Drawing.Design\ToolboxItemCas.cs" />\r
+    <Compile Include="Test\System.Drawing.Design\ToolboxItemCollectionCas.cs" />\r
+    <Compile Include="Test\System.Drawing.Design\UITypeEditorCas.cs" />\r
+    <Compile Include="Test\System.Drawing.Text\PrivateFontCollectionCas.cs" />\r
   </ItemGroup>\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>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent></PreBuildEvent>\r
+    <PreBuildEvent>\r
+    </PreBuildEvent>\r
   </PropertyGroup>\r
   <ItemGroup>\r
-    <Reference Include="mscorlib.dll">
-      <SpecificVersion>False</SpecificVersion>
-      <HintPath>mscorlib.dll</HintPath>
-    </Reference>
-    <Reference Include="./../../class/lib/net_2_0/System.Drawing.dll">
-      <SpecificVersion>False</SpecificVersion>
-      <HintPath>./../../class/lib/net_2_0/System.Drawing.dll</HintPath>
-    </Reference>
-    <Reference Include="mscorlib.dll">
-      <SpecificVersion>False</SpecificVersion>
-      <HintPath>mscorlib.dll</HintPath>
-    </Reference>
-    <Reference Include="System.dll">
-      <SpecificVersion>False</SpecificVersion>
-      <HintPath>System.dll</HintPath>
-    </Reference>
-    <Reference Include="System.Drawing.dll">
-      <SpecificVersion>False</SpecificVersion>
-      <HintPath>System.Drawing.dll</HintPath>
-    </Reference>
-    <Reference Include="System.Runtime.Serialization.Formatters.Soap.dll">
-      <SpecificVersion>False</SpecificVersion>
-      <HintPath>System.Runtime.Serialization.Formatters.Soap.dll</HintPath>
-    </Reference>
-    <Reference Include="System.Xml.dll">
-      <SpecificVersion>False</SpecificVersion>
-      <HintPath>System.Xml.dll</HintPath>
-    </Reference>
-    <Reference Include="nunit.framework" />
-\r
+    <Reference Include="mscorlib.dll">\r
+      <HintPath>mscorlib.dll</HintPath>\r
+    </Reference>\r
+    <Reference Include="System.dll">\r
+      <HintPath>System.dll</HintPath>\r
+    </Reference>\r
+    <Reference Include="System.Drawing.dll">\r
+      <HintPath>System.Drawing.dll</HintPath>\r
+    </Reference>\r
+    <Reference Include="System.Runtime.Serialization.Formatters.Soap.dll">\r
+      <HintPath>System.Runtime.Serialization.Formatters.Soap.dll</HintPath>\r
+    </Reference>\r
+    <Reference Include="System.Xml.dll">\r
+      <HintPath>System.Xml.dll</HintPath>\r
+    </Reference>\r
+    <Reference Include="nunit.framework" />\r
+    <Reference Include="System.Drawing">\r
+      <HintPath>..\lib\net_2_0\System.Drawing.dll</HintPath>\r
+    </Reference>\r
   </ItemGroup>\r
   <ItemGroup>\r
     <Folder Include="Properties\" />\r
   </ItemGroup>\r
-    <ItemGroup>
-    <EmbeddedResource Include="Assembly/Mono.ico">
-       <LogicalName>Mono.ico</LogicalName>
-    </EmbeddedResource>
-    <EmbeddedResource Include="Assembly/Information.ico">
-       <LogicalName>Information.ico</LogicalName>
-    </EmbeddedResource>
-    <EmbeddedResource Include="Assembly/Error.ico">
-       <LogicalName>Error.ico</LogicalName>
-    </EmbeddedResource>
-    <EmbeddedResource Include="Assembly/Warning.ico">
-       <LogicalName>Warning.ico</LogicalName>
-    </EmbeddedResource>
-    <EmbeddedResource Include="Assembly/Question.ico">
-       <LogicalName>Question.ico</LogicalName>
-    </EmbeddedResource>
-    <EmbeddedResource Include="Test/resources/indexed.png">
-       <LogicalName>indexed.png</LogicalName>
-    </EmbeddedResource>
-  </ItemGroup>
-\r
+  <ItemGroup>\r
+    <EmbeddedResource Include="Assembly\Mono.ico">\r
+      <LogicalName>Mono.ico</LogicalName>\r
+    </EmbeddedResource>\r
+    <EmbeddedResource Include="Assembly\Information.ico">\r
+      <LogicalName>Information.ico</LogicalName>\r
+    </EmbeddedResource>\r
+    <EmbeddedResource Include="Assembly\Error.ico">\r
+      <LogicalName>Error.ico</LogicalName>\r
+    </EmbeddedResource>\r
+    <EmbeddedResource Include="Assembly\Warning.ico">\r
+      <LogicalName>Warning.ico</LogicalName>\r
+    </EmbeddedResource>\r
+    <EmbeddedResource Include="Assembly\Question.ico">\r
+      <LogicalName>Question.ico</LogicalName>\r
+    </EmbeddedResource>\r
+    <EmbeddedResource Include="Test\resources\indexed.png">\r
+      <LogicalName>indexed.png</LogicalName>\r
+    </EmbeddedResource>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <None Include="Assembly\Shield.ico" />\r
+  </ItemGroup>\r
 </Project>\r
-
index c718473b3ee685e243483aec5230080ef08e497f..40d16fcbe270b7bc23de9340c19834e1f16d1db1 100644 (file)
     <NoStdLib>true</NoStdLib>\r
     <AllowUnsafeBlocks>true</AllowUnsafeBlocks>\r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
-    <RootNamespace></RootNamespace>\r
     <AssemblyName>System.Drawing_test_net_4_0</AssemblyName>\r
-    <TargetFrameworkVersion>v4.0</TargetFrameworkVersion>\r
     <FileAlignment>512</FileAlignment>\r
     <!-- Filter out System.Core added by: Microsoft.NETFramework.props  -->\r
     <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
   </PropertyGroup>\r
   <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
     <PlatformTarget>AnyCPU</PlatformTarget>\r
-    <DebugSymbols>true</DebugSymbols>\r
+    <DebugSymbols>True</DebugSymbols>\r
     <DebugType>full</DebugType>\r
-    <NoWarn>1699,618,219,169,1595</NoWarn>\r
-    <Optimize>false</Optimize>\r
+    <Optimize>False</Optimize>\r
     <DefineConstants>DEBUG;TRACE;NET_1_1;NET_2_0;NET_3_0;NET_3_5;NET_4_0;TEST</DefineConstants>\r
     <ErrorReport>prompt</ErrorReport>\r
     <WarningLevel>4</WarningLevel>\r
     <AdditionalLibPaths>./../../class/lib/net_4_0</AdditionalLibPaths>\r
+    <OutputPath>.</OutputPath>\r
   </PropertyGroup>\r
   <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
-    <PlatformTarget>AnyCPU</PlatformTarget>  \r
+    <PlatformTarget>AnyCPU</PlatformTarget>\r
     <DebugType>pdbonly</DebugType>\r
-    <NoWarn>1699,618,219,169,1595</NoWarn>\r
-    <Optimize>true</Optimize>\r
+    <Optimize>True</Optimize>\r
     <DefineConstants>NET_1_1;NET_2_0;NET_3_0;NET_3_5;NET_4_0;TEST</DefineConstants>\r
     <ErrorReport>prompt</ErrorReport>\r
     <WarningLevel>4</WarningLevel>\r
     <AdditionalLibPaths>./../../class/lib/net_4_0</AdditionalLibPaths>\r
+    <OutputPath>.</OutputPath>\r
   </PropertyGroup>\r
   <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
   <ItemGroup>\r
-   <Compile Include="..\..\build\common\Locale.cs" />
-   <Compile Include="System.Drawing\gdipEnums.cs" />
-   <Compile Include="System.Drawing\gdipFunctions.cs" />
-   <Compile Include="System.Drawing\gdipStructs.cs" />
-   <Compile Include="Test\HostIgnoreList.cs" />
-   <Compile Include="Test\System.Drawing\ColorTranslator.cs" />
-   <Compile Include="Test\System.Drawing\ColorConverter.cs" />
-   <Compile Include="Test\System.Drawing\FontFamilyTest.cs" />
-   <Compile Include="Test\System.Drawing\GDIPlusTest.cs" />
-   <Compile Include="Test\System.Drawing\PenTest.cs" />
-   <Compile Include="Test\System.Drawing\RegionDataTest.cs" />
-   <Compile Include="Test\System.Drawing\RegionNonRectTest.cs" />
-   <Compile Include="Test\System.Drawing\SolidBrushTest.cs" />
-   <Compile Include="Test\System.Drawing\SystemFontsTest.cs" />
-   <Compile Include="Test\System.Drawing\SystemIconsTest.cs" />
-   <Compile Include="Test\System.Drawing\TestBitmap.cs" />
-   <Compile Include="Test\System.Drawing\TestBrushes.cs" />
-   <Compile Include="Test\System.Drawing\TestColor.cs" />
-   <Compile Include="Test\System.Drawing\TestFont.cs" />
-   <Compile Include="Test\System.Drawing\TestFontConverter.cs" />
-   <Compile Include="Test\System.Drawing\TestGraphics.cs" />
-   <Compile Include="Test\System.Drawing\TestImage.cs" />
-   <Compile Include="Test\System.Drawing\TestPens.cs" />
-   <Compile Include="Test\System.Drawing\TestPoint.cs" />
-   <Compile Include="Test\System.Drawing\TestPointConverter.cs" />
-   <Compile Include="Test\System.Drawing\TestPointF.cs" />
-   <Compile Include="Test\System.Drawing\TestRectangle.cs" />
-   <Compile Include="Test\System.Drawing\TestRectangleConverter.cs" />
-   <Compile Include="Test\System.Drawing\TestRectangleF.cs" />
-   <Compile Include="Test\System.Drawing\TestRegion.cs" />
-   <Compile Include="Test\System.Drawing\TestSize.cs" />
-   <Compile Include="Test\System.Drawing\TestSizeConverter.cs" />
-   <Compile Include="Test\System.Drawing\TestSizeFConverter.cs" />
-   <Compile Include="Test\System.Drawing\TestSizeF.cs" />
-   <Compile Include="Test\System.Drawing\TestStringFormat.cs" />
-   <Compile Include="Test\System.Drawing\TestSystemBrushes.cs" />
-   <Compile Include="Test\System.Drawing\TestSystemPens.cs" />
-   <Compile Include="Test\System.Drawing\TestImageConverter.cs" />
-   <Compile Include="Test\System.Drawing\TestImageFormatConverter.cs" />
-   <Compile Include="Test\System.Drawing\TestIconConverter.cs" />
-   <Compile Include="Test\System.Drawing\TestIcon.cs" />
-   <Compile Include="Test\System.Drawing\TextureBrushTest.cs" />
-   <Compile Include="Test\System.Drawing.Design\TestToolboxItem.cs" />
-   <Compile Include="Test\System.Drawing.Design\UITypeEditorTest.cs" />
-   <Compile Include="Test\System.Drawing.Drawing2D\GraphicsPathTest.cs" />
-   <Compile Include="Test\System.Drawing.Drawing2D\LinearGradientBrushTest.cs" />
-   <Compile Include="Test\System.Drawing.Drawing2D\PathDataTest.cs" />
-   <Compile Include="Test\System.Drawing.Drawing2D\PathGradientBrushTest.cs" />
-   <Compile Include="Test\System.Drawing.Drawing2D\TestBlend.cs" />
-   <Compile Include="Test\System.Drawing.Drawing2D\TestColorBlend.cs" />
-   <Compile Include="Test\System.Drawing.Drawing2D\TestHatchBrush.cs" />
-   <Compile Include="Test\System.Drawing.Drawing2D\TestMatrix.cs" />
-   <Compile Include="Test\System.Drawing.Imaging\EmfPlusRecordTypeTest.cs" />
-   <Compile Include="Test\System.Drawing.Imaging\FrameDimensionTest.cs" />
-   <Compile Include="Test\System.Drawing.Imaging\GifCodecTest.cs" />
-   <Compile Include="Test\System.Drawing.Imaging\IconCodecTest.cs" />
-   <Compile Include="Test\System.Drawing.Imaging\MetafileTest.cs" />
-   <Compile Include="Test\System.Drawing.Imaging\MetaHeaderTest.cs" />
-   <Compile Include="Test\System.Drawing.Imaging\PngCodecTest.cs" />
-   <Compile Include="Test\System.Drawing.Imaging\TestImageCodecInfo.cs" />
-   <Compile Include="Test\System.Drawing.Imaging\TestImageFormat.cs" />
-   <Compile Include="Test\System.Drawing.Imaging\TestBmpCodec.cs" />
-   <Compile Include="Test\System.Drawing.Imaging\TestJpegCodec.cs" />
-   <Compile Include="Test\System.Drawing.Imaging\TestColorMatrix.cs" />
-   <Compile Include="Test\System.Drawing.Imaging\TestImageAttributes.cs" />
-   <Compile Include="Test\System.Drawing.Imaging\TiffCodecTest.cs" />
-   <Compile Include="Test\System.Drawing.Imaging\WmfPlaceableFileHeaderTest.cs" />
-   <Compile Include="Test\System.Drawing.Printing\MarginsTest.cs" />
-   <Compile Include="Test\System.Drawing.Printing\PageSettingsTest.cs" />
-   <Compile Include="Test\System.Drawing.Printing\PageSourceTest.cs" />
-   <Compile Include="Test\System.Drawing.Printing\PaperSizeTest.cs" />
-   <Compile Include="Test\System.Drawing.Printing\PrinterUnitConvertTest.cs" />
-   <Compile Include="Test\System.Drawing.Printing\PrintingPermissionAttributeTest.cs" />
-   <Compile Include="Test\System.Drawing.Printing\PrintingPermissionTest.cs" />
-   <Compile Include="Test\System.Drawing.Printing\PrintingServicesUnixTest.cs" />
-   <Compile Include="Test\System.Drawing.Text\PrivateFontCollectionTest.cs" />
-   <Compile Include="Test\System.Drawing.Text\InstalledFontCollectionTest.cs" />
-   <Compile Include="Test\System.Drawing\BitmapCas.cs" />
-   <Compile Include="Test\System.Drawing\GraphicsCas.cs" />
-   <Compile Include="Test\System.Drawing\RegionCas.cs" />
-   <Compile Include="Test\System.Drawing.Design\CategoryNameCollectionCas.cs" />
-   <Compile Include="Test\System.Drawing.Design\PaintValueEventArgsCas.cs" />
-   <Compile Include="Test\System.Drawing.Design\PropertyValueUIItemCas.cs" />
-   <Compile Include="Test\System.Drawing.Design\ToolboxComponentsCreatedEventArgsCas.cs" />
-   <Compile Include="Test\System.Drawing.Design\ToolboxComponentsCreatingEventArgsCas.cs" />
-   <Compile Include="Test\System.Drawing.Design\ToolboxItemCas.cs" />
-   <Compile Include="Test\System.Drawing.Design\ToolboxItemCollectionCas.cs" />
-   <Compile Include="Test\System.Drawing.Design\UITypeEditorCas.cs" />
-   <Compile Include="Test\System.Drawing.Text\PrivateFontCollectionCas.cs" />
-\r
+    <Compile Include="..\..\build\common\Locale.cs" />\r
+    <Compile Include="System.Drawing\gdipEnums.cs" />\r
+    <Compile Include="System.Drawing\gdipFunctions.cs" />\r
+    <Compile Include="System.Drawing\gdipStructs.cs" />\r
+    <Compile Include="Test\HostIgnoreList.cs" />\r
+    <Compile Include="Test\System.Drawing\ColorTranslator.cs" />\r
+    <Compile Include="Test\System.Drawing\ColorConverter.cs" />\r
+    <Compile Include="Test\System.Drawing\FontFamilyTest.cs" />\r
+    <Compile Include="Test\System.Drawing\GDIPlusTest.cs" />\r
+    <Compile Include="Test\System.Drawing\PenTest.cs" />\r
+    <Compile Include="Test\System.Drawing\RegionDataTest.cs" />\r
+    <Compile Include="Test\System.Drawing\RegionNonRectTest.cs" />\r
+    <Compile Include="Test\System.Drawing\SolidBrushTest.cs" />\r
+    <Compile Include="Test\System.Drawing\SystemFontsTest.cs" />\r
+    <Compile Include="Test\System.Drawing\SystemIconsTest.cs" />\r
+    <Compile Include="Test\System.Drawing\TestBitmap.cs" />\r
+    <Compile Include="Test\System.Drawing\TestBrushes.cs" />\r
+    <Compile Include="Test\System.Drawing\TestColor.cs" />\r
+    <Compile Include="Test\System.Drawing\TestFont.cs" />\r
+    <Compile Include="Test\System.Drawing\TestFontConverter.cs" />\r
+    <Compile Include="Test\System.Drawing\TestGraphics.cs" />\r
+    <Compile Include="Test\System.Drawing\TestImage.cs" />\r
+    <Compile Include="Test\System.Drawing\TestPens.cs" />\r
+    <Compile Include="Test\System.Drawing\TestPoint.cs" />\r
+    <Compile Include="Test\System.Drawing\TestPointConverter.cs" />\r
+    <Compile Include="Test\System.Drawing\TestPointF.cs" />\r
+    <Compile Include="Test\System.Drawing\TestRectangle.cs" />\r
+    <Compile Include="Test\System.Drawing\TestRectangleConverter.cs" />\r
+    <Compile Include="Test\System.Drawing\TestRectangleF.cs" />\r
+    <Compile Include="Test\System.Drawing\TestRegion.cs" />\r
+    <Compile Include="Test\System.Drawing\TestSize.cs" />\r
+    <Compile Include="Test\System.Drawing\TestSizeConverter.cs" />\r
+    <Compile Include="Test\System.Drawing\TestSizeFConverter.cs" />\r
+    <Compile Include="Test\System.Drawing\TestSizeF.cs" />\r
+    <Compile Include="Test\System.Drawing\TestStringFormat.cs" />\r
+    <Compile Include="Test\System.Drawing\TestSystemBrushes.cs" />\r
+    <Compile Include="Test\System.Drawing\TestSystemPens.cs" />\r
+    <Compile Include="Test\System.Drawing\TestImageConverter.cs" />\r
+    <Compile Include="Test\System.Drawing\TestImageFormatConverter.cs" />\r
+    <Compile Include="Test\System.Drawing\TestIconConverter.cs" />\r
+    <Compile Include="Test\System.Drawing\TestIcon.cs" />\r
+    <Compile Include="Test\System.Drawing\TextureBrushTest.cs" />\r
+    <Compile Include="Test\System.Drawing.Design\TestToolboxItem.cs" />\r
+    <Compile Include="Test\System.Drawing.Design\UITypeEditorTest.cs" />\r
+    <Compile Include="Test\System.Drawing.Drawing2D\GraphicsPathTest.cs" />\r
+    <Compile Include="Test\System.Drawing.Drawing2D\LinearGradientBrushTest.cs" />\r
+    <Compile Include="Test\System.Drawing.Drawing2D\PathDataTest.cs" />\r
+    <Compile Include="Test\System.Drawing.Drawing2D\PathGradientBrushTest.cs" />\r
+    <Compile Include="Test\System.Drawing.Drawing2D\TestBlend.cs" />\r
+    <Compile Include="Test\System.Drawing.Drawing2D\TestColorBlend.cs" />\r
+    <Compile Include="Test\System.Drawing.Drawing2D\TestHatchBrush.cs" />\r
+    <Compile Include="Test\System.Drawing.Drawing2D\TestMatrix.cs" />\r
+    <Compile Include="Test\System.Drawing.Imaging\EmfPlusRecordTypeTest.cs" />\r
+    <Compile Include="Test\System.Drawing.Imaging\FrameDimensionTest.cs" />\r
+    <Compile Include="Test\System.Drawing.Imaging\GifCodecTest.cs" />\r
+    <Compile Include="Test\System.Drawing.Imaging\IconCodecTest.cs" />\r
+    <Compile Include="Test\System.Drawing.Imaging\MetafileTest.cs" />\r
+    <Compile Include="Test\System.Drawing.Imaging\MetaHeaderTest.cs" />\r
+    <Compile Include="Test\System.Drawing.Imaging\PngCodecTest.cs" />\r
+    <Compile Include="Test\System.Drawing.Imaging\TestImageCodecInfo.cs" />\r
+    <Compile Include="Test\System.Drawing.Imaging\TestImageFormat.cs" />\r
+    <Compile Include="Test\System.Drawing.Imaging\TestBmpCodec.cs" />\r
+    <Compile Include="Test\System.Drawing.Imaging\TestJpegCodec.cs" />\r
+    <Compile Include="Test\System.Drawing.Imaging\TestColorMatrix.cs" />\r
+    <Compile Include="Test\System.Drawing.Imaging\TestImageAttributes.cs" />\r
+    <Compile Include="Test\System.Drawing.Imaging\TiffCodecTest.cs" />\r
+    <Compile Include="Test\System.Drawing.Imaging\WmfPlaceableFileHeaderTest.cs" />\r
+    <Compile Include="Test\System.Drawing.Printing\MarginsTest.cs" />\r
+    <Compile Include="Test\System.Drawing.Printing\PageSettingsTest.cs" />\r
+    <Compile Include="Test\System.Drawing.Printing\PageSourceTest.cs" />\r
+    <Compile Include="Test\System.Drawing.Printing\PaperSizeTest.cs" />\r
+    <Compile Include="Test\System.Drawing.Printing\PrinterUnitConvertTest.cs" />\r
+    <Compile Include="Test\System.Drawing.Printing\PrintingPermissionAttributeTest.cs" />\r
+    <Compile Include="Test\System.Drawing.Printing\PrintingPermissionTest.cs" />\r
+    <Compile Include="Test\System.Drawing.Printing\PrintingServicesUnixTest.cs" />\r
+    <Compile Include="Test\System.Drawing.Text\PrivateFontCollectionTest.cs" />\r
+    <Compile Include="Test\System.Drawing.Text\InstalledFontCollectionTest.cs" />\r
+    <Compile Include="Test\System.Drawing\BitmapCas.cs" />\r
+    <Compile Include="Test\System.Drawing\GraphicsCas.cs" />\r
+    <Compile Include="Test\System.Drawing\RegionCas.cs" />\r
+    <Compile Include="Test\System.Drawing.Design\CategoryNameCollectionCas.cs" />\r
+    <Compile Include="Test\System.Drawing.Design\PaintValueEventArgsCas.cs" />\r
+    <Compile Include="Test\System.Drawing.Design\PropertyValueUIItemCas.cs" />\r
+    <Compile Include="Test\System.Drawing.Design\ToolboxComponentsCreatedEventArgsCas.cs" />\r
+    <Compile Include="Test\System.Drawing.Design\ToolboxComponentsCreatingEventArgsCas.cs" />\r
+    <Compile Include="Test\System.Drawing.Design\ToolboxItemCas.cs" />\r
+    <Compile Include="Test\System.Drawing.Design\ToolboxItemCollectionCas.cs" />\r
+    <Compile Include="Test\System.Drawing.Design\UITypeEditorCas.cs" />\r
+    <Compile Include="Test\System.Drawing.Text\PrivateFontCollectionCas.cs" />\r
   </ItemGroup>\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>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent></PreBuildEvent>\r
+    <PreBuildEvent>\r
+    </PreBuildEvent>\r
   </PropertyGroup>\r
   <ItemGroup>\r
-    <Reference Include="mscorlib.dll">
-      <SpecificVersion>False</SpecificVersion>
-      <HintPath>mscorlib.dll</HintPath>
-    </Reference>
-    <Reference Include="./../../class/lib/net_4_0/System.Drawing.dll">
-      <SpecificVersion>False</SpecificVersion>
-      <HintPath>./../../class/lib/net_4_0/System.Drawing.dll</HintPath>
-    </Reference>
-    <Reference Include="mscorlib.dll">
-      <SpecificVersion>False</SpecificVersion>
-      <HintPath>mscorlib.dll</HintPath>
-    </Reference>
-    <Reference Include="System.dll">
-      <SpecificVersion>False</SpecificVersion>
-      <HintPath>System.dll</HintPath>
-    </Reference>
-    <Reference Include="System.Drawing.dll">
-      <SpecificVersion>False</SpecificVersion>
-      <HintPath>System.Drawing.dll</HintPath>
-    </Reference>
-    <Reference Include="System.Runtime.Serialization.Formatters.Soap.dll">
-      <SpecificVersion>False</SpecificVersion>
-      <HintPath>System.Runtime.Serialization.Formatters.Soap.dll</HintPath>
-    </Reference>
-    <Reference Include="System.Xml.dll">
-      <SpecificVersion>False</SpecificVersion>
-      <HintPath>System.Xml.dll</HintPath>
-    </Reference>
-    <Reference Include="nunit.framework" />
-\r
+    <Reference Include="mscorlib.dll">\r
+      <HintPath>mscorlib.dll</HintPath>\r
+    </Reference>\r
+    <Reference Include="System.dll">\r
+      <HintPath>System.dll</HintPath>\r
+    </Reference>\r
+    <Reference Include="System.Drawing.dll">\r
+      <HintPath>System.Drawing.dll</HintPath>\r
+    </Reference>\r
+    <Reference Include="System.Runtime.Serialization.Formatters.Soap.dll">\r
+      <HintPath>System.Runtime.Serialization.Formatters.Soap.dll</HintPath>\r
+    </Reference>\r
+    <Reference Include="System.Xml.dll">\r
+      <HintPath>System.Xml.dll</HintPath>\r
+    </Reference>\r
+    <Reference Include="nunit.framework" />\r
+    <Reference Include="System.Drawing">\r
+      <HintPath>..\lib\net_4_0\System.Drawing.dll</HintPath>\r
+    </Reference>\r
   </ItemGroup>\r
   <ItemGroup>\r
     <Folder Include="Properties\" />\r
   </ItemGroup>\r
-    <ItemGroup>
-    <EmbeddedResource Include="Assembly/Mono.ico">
-       <LogicalName>Mono.ico</LogicalName>
-    </EmbeddedResource>
-    <EmbeddedResource Include="Assembly/Information.ico">
-       <LogicalName>Information.ico</LogicalName>
-    </EmbeddedResource>
-    <EmbeddedResource Include="Assembly/Error.ico">
-       <LogicalName>Error.ico</LogicalName>
-    </EmbeddedResource>
-    <EmbeddedResource Include="Assembly/Warning.ico">
-       <LogicalName>Warning.ico</LogicalName>
-    </EmbeddedResource>
-    <EmbeddedResource Include="Assembly/Question.ico">
-       <LogicalName>Question.ico</LogicalName>
-    </EmbeddedResource>
-    <EmbeddedResource Include="Test/resources/indexed.png">
-       <LogicalName>indexed.png</LogicalName>
-    </EmbeddedResource>
-  </ItemGroup>
-\r
+  <ItemGroup>\r
+    <EmbeddedResource Include="Assembly\Mono.ico">\r
+      <LogicalName>Mono.ico</LogicalName>\r
+    </EmbeddedResource>\r
+    <EmbeddedResource Include="Assembly\Information.ico">\r
+      <LogicalName>Information.ico</LogicalName>\r
+    </EmbeddedResource>\r
+    <EmbeddedResource Include="Assembly\Error.ico">\r
+      <LogicalName>Error.ico</LogicalName>\r
+    </EmbeddedResource>\r
+    <EmbeddedResource Include="Assembly\Warning.ico">\r
+      <LogicalName>Warning.ico</LogicalName>\r
+    </EmbeddedResource>\r
+    <EmbeddedResource Include="Assembly\Question.ico">\r
+      <LogicalName>Question.ico</LogicalName>\r
+    </EmbeddedResource>\r
+    <EmbeddedResource Include="Test\resources\indexed.png">\r
+      <LogicalName>indexed.png</LogicalName>\r
+    </EmbeddedResource>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <None Include="Assembly\Shield.ico" />\r
+  </ItemGroup>\r
 </Project>\r
-
index 7120c53714d0d5f6a9a057123e39a181b5d46c43..2e2b2359c6f8df2020da44b5926bf3277914a505 100644 (file)
@@ -12,7 +12,6 @@
     <NoStdLib>true</NoStdLib>\r
     <AllowUnsafeBlocks>true</AllowUnsafeBlocks>\r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
-    <RootNamespace></RootNamespace>\r
     <AssemblyName>System.Drawing_test_net_4_5</AssemblyName>\r
     <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
     <FileAlignment>512</FileAlignment>\r
   </PropertyGroup>\r
   <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
     <PlatformTarget>AnyCPU</PlatformTarget>\r
-    <DebugSymbols>true</DebugSymbols>\r
+    <DebugSymbols>True</DebugSymbols>\r
     <DebugType>full</DebugType>\r
-    <NoWarn>1699,618,219,169,1595</NoWarn>\r
-    <Optimize>false</Optimize>\r
+    <Optimize>False</Optimize>\r
     <DefineConstants>DEBUG;TRACE;NET_1_1;NET_2_0;NET_3_0;NET_3_5;NET_4_0;NET_4_5;TEST</DefineConstants>\r
     <ErrorReport>prompt</ErrorReport>\r
     <WarningLevel>4</WarningLevel>\r
     <AdditionalLibPaths>./../../class/lib/net_4_5</AdditionalLibPaths>\r
+    <OutputPath>.</OutputPath>\r
   </PropertyGroup>\r
   <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
-    <PlatformTarget>AnyCPU</PlatformTarget>  \r
+    <PlatformTarget>AnyCPU</PlatformTarget>\r
     <DebugType>pdbonly</DebugType>\r
-    <NoWarn>1699,618,219,169,1595</NoWarn>\r
-    <Optimize>true</Optimize>\r
+    <Optimize>True</Optimize>\r
     <DefineConstants>NET_1_1;NET_2_0;NET_3_0;NET_3_5;NET_4_0;NET_4_5;TEST</DefineConstants>\r
     <ErrorReport>prompt</ErrorReport>\r
     <WarningLevel>4</WarningLevel>\r
     <AdditionalLibPaths>./../../class/lib/net_4_5</AdditionalLibPaths>\r
+    <OutputPath>.</OutputPath>\r
   </PropertyGroup>\r
   <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
   <ItemGroup>\r
-   <Compile Include="..\..\build\common\Locale.cs" />
-   <Compile Include="System.Drawing\gdipEnums.cs" />
-   <Compile Include="System.Drawing\gdipFunctions.cs" />
-   <Compile Include="System.Drawing\gdipStructs.cs" />
-   <Compile Include="Test\HostIgnoreList.cs" />
-   <Compile Include="Test\System.Drawing\ColorTranslator.cs" />
-   <Compile Include="Test\System.Drawing\ColorConverter.cs" />
-   <Compile Include="Test\System.Drawing\FontFamilyTest.cs" />
-   <Compile Include="Test\System.Drawing\GDIPlusTest.cs" />
-   <Compile Include="Test\System.Drawing\PenTest.cs" />
-   <Compile Include="Test\System.Drawing\RegionDataTest.cs" />
-   <Compile Include="Test\System.Drawing\RegionNonRectTest.cs" />
-   <Compile Include="Test\System.Drawing\SolidBrushTest.cs" />
-   <Compile Include="Test\System.Drawing\SystemFontsTest.cs" />
-   <Compile Include="Test\System.Drawing\SystemIconsTest.cs" />
-   <Compile Include="Test\System.Drawing\TestBitmap.cs" />
-   <Compile Include="Test\System.Drawing\TestBrushes.cs" />
-   <Compile Include="Test\System.Drawing\TestColor.cs" />
-   <Compile Include="Test\System.Drawing\TestFont.cs" />
-   <Compile Include="Test\System.Drawing\TestFontConverter.cs" />
-   <Compile Include="Test\System.Drawing\TestGraphics.cs" />
-   <Compile Include="Test\System.Drawing\TestImage.cs" />
-   <Compile Include="Test\System.Drawing\TestPens.cs" />
-   <Compile Include="Test\System.Drawing\TestPoint.cs" />
-   <Compile Include="Test\System.Drawing\TestPointConverter.cs" />
-   <Compile Include="Test\System.Drawing\TestPointF.cs" />
-   <Compile Include="Test\System.Drawing\TestRectangle.cs" />
-   <Compile Include="Test\System.Drawing\TestRectangleConverter.cs" />
-   <Compile Include="Test\System.Drawing\TestRectangleF.cs" />
-   <Compile Include="Test\System.Drawing\TestRegion.cs" />
-   <Compile Include="Test\System.Drawing\TestSize.cs" />
-   <Compile Include="Test\System.Drawing\TestSizeConverter.cs" />
-   <Compile Include="Test\System.Drawing\TestSizeFConverter.cs" />
-   <Compile Include="Test\System.Drawing\TestSizeF.cs" />
-   <Compile Include="Test\System.Drawing\TestStringFormat.cs" />
-   <Compile Include="Test\System.Drawing\TestSystemBrushes.cs" />
-   <Compile Include="Test\System.Drawing\TestSystemPens.cs" />
-   <Compile Include="Test\System.Drawing\TestImageConverter.cs" />
-   <Compile Include="Test\System.Drawing\TestImageFormatConverter.cs" />
-   <Compile Include="Test\System.Drawing\TestIconConverter.cs" />
-   <Compile Include="Test\System.Drawing\TestIcon.cs" />
-   <Compile Include="Test\System.Drawing\TextureBrushTest.cs" />
-   <Compile Include="Test\System.Drawing.Design\TestToolboxItem.cs" />
-   <Compile Include="Test\System.Drawing.Design\UITypeEditorTest.cs" />
-   <Compile Include="Test\System.Drawing.Drawing2D\GraphicsPathTest.cs" />
-   <Compile Include="Test\System.Drawing.Drawing2D\LinearGradientBrushTest.cs" />
-   <Compile Include="Test\System.Drawing.Drawing2D\PathDataTest.cs" />
-   <Compile Include="Test\System.Drawing.Drawing2D\PathGradientBrushTest.cs" />
-   <Compile Include="Test\System.Drawing.Drawing2D\TestBlend.cs" />
-   <Compile Include="Test\System.Drawing.Drawing2D\TestColorBlend.cs" />
-   <Compile Include="Test\System.Drawing.Drawing2D\TestHatchBrush.cs" />
-   <Compile Include="Test\System.Drawing.Drawing2D\TestMatrix.cs" />
-   <Compile Include="Test\System.Drawing.Imaging\EmfPlusRecordTypeTest.cs" />
-   <Compile Include="Test\System.Drawing.Imaging\FrameDimensionTest.cs" />
-   <Compile Include="Test\System.Drawing.Imaging\GifCodecTest.cs" />
-   <Compile Include="Test\System.Drawing.Imaging\IconCodecTest.cs" />
-   <Compile Include="Test\System.Drawing.Imaging\MetafileTest.cs" />
-   <Compile Include="Test\System.Drawing.Imaging\MetaHeaderTest.cs" />
-   <Compile Include="Test\System.Drawing.Imaging\PngCodecTest.cs" />
-   <Compile Include="Test\System.Drawing.Imaging\TestImageCodecInfo.cs" />
-   <Compile Include="Test\System.Drawing.Imaging\TestImageFormat.cs" />
-   <Compile Include="Test\System.Drawing.Imaging\TestBmpCodec.cs" />
-   <Compile Include="Test\System.Drawing.Imaging\TestJpegCodec.cs" />
-   <Compile Include="Test\System.Drawing.Imaging\TestColorMatrix.cs" />
-   <Compile Include="Test\System.Drawing.Imaging\TestImageAttributes.cs" />
-   <Compile Include="Test\System.Drawing.Imaging\TiffCodecTest.cs" />
-   <Compile Include="Test\System.Drawing.Imaging\WmfPlaceableFileHeaderTest.cs" />
-   <Compile Include="Test\System.Drawing.Printing\MarginsTest.cs" />
-   <Compile Include="Test\System.Drawing.Printing\PageSettingsTest.cs" />
-   <Compile Include="Test\System.Drawing.Printing\PageSourceTest.cs" />
-   <Compile Include="Test\System.Drawing.Printing\PaperSizeTest.cs" />
-   <Compile Include="Test\System.Drawing.Printing\PrinterUnitConvertTest.cs" />
-   <Compile Include="Test\System.Drawing.Printing\PrintingPermissionAttributeTest.cs" />
-   <Compile Include="Test\System.Drawing.Printing\PrintingPermissionTest.cs" />
-   <Compile Include="Test\System.Drawing.Printing\PrintingServicesUnixTest.cs" />
-   <Compile Include="Test\System.Drawing.Text\PrivateFontCollectionTest.cs" />
-   <Compile Include="Test\System.Drawing.Text\InstalledFontCollectionTest.cs" />
-   <Compile Include="Test\System.Drawing\BitmapCas.cs" />
-   <Compile Include="Test\System.Drawing\GraphicsCas.cs" />
-   <Compile Include="Test\System.Drawing\RegionCas.cs" />
-   <Compile Include="Test\System.Drawing.Design\CategoryNameCollectionCas.cs" />
-   <Compile Include="Test\System.Drawing.Design\PaintValueEventArgsCas.cs" />
-   <Compile Include="Test\System.Drawing.Design\PropertyValueUIItemCas.cs" />
-   <Compile Include="Test\System.Drawing.Design\ToolboxComponentsCreatedEventArgsCas.cs" />
-   <Compile Include="Test\System.Drawing.Design\ToolboxComponentsCreatingEventArgsCas.cs" />
-   <Compile Include="Test\System.Drawing.Design\ToolboxItemCas.cs" />
-   <Compile Include="Test\System.Drawing.Design\ToolboxItemCollectionCas.cs" />
-   <Compile Include="Test\System.Drawing.Design\UITypeEditorCas.cs" />
-   <Compile Include="Test\System.Drawing.Text\PrivateFontCollectionCas.cs" />
-\r
+    <Compile Include="..\..\build\common\Locale.cs" />\r
+    <Compile Include="System.Drawing\gdipEnums.cs" />\r
+    <Compile Include="System.Drawing\gdipFunctions.cs" />\r
+    <Compile Include="System.Drawing\gdipStructs.cs" />\r
+    <Compile Include="Test\HostIgnoreList.cs" />\r
+    <Compile Include="Test\System.Drawing\ColorTranslator.cs" />\r
+    <Compile Include="Test\System.Drawing\ColorConverter.cs" />\r
+    <Compile Include="Test\System.Drawing\FontFamilyTest.cs" />\r
+    <Compile Include="Test\System.Drawing\GDIPlusTest.cs" />\r
+    <Compile Include="Test\System.Drawing\PenTest.cs" />\r
+    <Compile Include="Test\System.Drawing\RegionDataTest.cs" />\r
+    <Compile Include="Test\System.Drawing\RegionNonRectTest.cs" />\r
+    <Compile Include="Test\System.Drawing\SolidBrushTest.cs" />\r
+    <Compile Include="Test\System.Drawing\SystemFontsTest.cs" />\r
+    <Compile Include="Test\System.Drawing\SystemIconsTest.cs" />\r
+    <Compile Include="Test\System.Drawing\TestBitmap.cs" />\r
+    <Compile Include="Test\System.Drawing\TestBrushes.cs" />\r
+    <Compile Include="Test\System.Drawing\TestColor.cs" />\r
+    <Compile Include="Test\System.Drawing\TestFont.cs" />\r
+    <Compile Include="Test\System.Drawing\TestFontConverter.cs" />\r
+    <Compile Include="Test\System.Drawing\TestGraphics.cs" />\r
+    <Compile Include="Test\System.Drawing\TestImage.cs" />\r
+    <Compile Include="Test\System.Drawing\TestPens.cs" />\r
+    <Compile Include="Test\System.Drawing\TestPoint.cs" />\r
+    <Compile Include="Test\System.Drawing\TestPointConverter.cs" />\r
+    <Compile Include="Test\System.Drawing\TestPointF.cs" />\r
+    <Compile Include="Test\System.Drawing\TestRectangle.cs" />\r
+    <Compile Include="Test\System.Drawing\TestRectangleConverter.cs" />\r
+    <Compile Include="Test\System.Drawing\TestRectangleF.cs" />\r
+    <Compile Include="Test\System.Drawing\TestRegion.cs" />\r
+    <Compile Include="Test\System.Drawing\TestSize.cs" />\r
+    <Compile Include="Test\System.Drawing\TestSizeConverter.cs" />\r
+    <Compile Include="Test\System.Drawing\TestSizeFConverter.cs" />\r
+    <Compile Include="Test\System.Drawing\TestSizeF.cs" />\r
+    <Compile Include="Test\System.Drawing\TestStringFormat.cs" />\r
+    <Compile Include="Test\System.Drawing\TestSystemBrushes.cs" />\r
+    <Compile Include="Test\System.Drawing\TestSystemPens.cs" />\r
+    <Compile Include="Test\System.Drawing\TestImageConverter.cs" />\r
+    <Compile Include="Test\System.Drawing\TestImageFormatConverter.cs" />\r
+    <Compile Include="Test\System.Drawing\TestIconConverter.cs" />\r
+    <Compile Include="Test\System.Drawing\TestIcon.cs" />\r
+    <Compile Include="Test\System.Drawing\TextureBrushTest.cs" />\r
+    <Compile Include="Test\System.Drawing.Design\TestToolboxItem.cs" />\r
+    <Compile Include="Test\System.Drawing.Design\UITypeEditorTest.cs" />\r
+    <Compile Include="Test\System.Drawing.Drawing2D\GraphicsPathTest.cs" />\r
+    <Compile Include="Test\System.Drawing.Drawing2D\LinearGradientBrushTest.cs" />\r
+    <Compile Include="Test\System.Drawing.Drawing2D\PathDataTest.cs" />\r
+    <Compile Include="Test\System.Drawing.Drawing2D\PathGradientBrushTest.cs" />\r
+    <Compile Include="Test\System.Drawing.Drawing2D\TestBlend.cs" />\r
+    <Compile Include="Test\System.Drawing.Drawing2D\TestColorBlend.cs" />\r
+    <Compile Include="Test\System.Drawing.Drawing2D\TestHatchBrush.cs" />\r
+    <Compile Include="Test\System.Drawing.Drawing2D\TestMatrix.cs" />\r
+    <Compile Include="Test\System.Drawing.Imaging\EmfPlusRecordTypeTest.cs" />\r
+    <Compile Include="Test\System.Drawing.Imaging\FrameDimensionTest.cs" />\r
+    <Compile Include="Test\System.Drawing.Imaging\GifCodecTest.cs" />\r
+    <Compile Include="Test\System.Drawing.Imaging\IconCodecTest.cs" />\r
+    <Compile Include="Test\System.Drawing.Imaging\MetafileTest.cs" />\r
+    <Compile Include="Test\System.Drawing.Imaging\MetaHeaderTest.cs" />\r
+    <Compile Include="Test\System.Drawing.Imaging\PngCodecTest.cs" />\r
+    <Compile Include="Test\System.Drawing.Imaging\TestImageCodecInfo.cs" />\r
+    <Compile Include="Test\System.Drawing.Imaging\TestImageFormat.cs" />\r
+    <Compile Include="Test\System.Drawing.Imaging\TestBmpCodec.cs" />\r
+    <Compile Include="Test\System.Drawing.Imaging\TestJpegCodec.cs" />\r
+    <Compile Include="Test\System.Drawing.Imaging\TestColorMatrix.cs" />\r
+    <Compile Include="Test\System.Drawing.Imaging\TestImageAttributes.cs" />\r
+    <Compile Include="Test\System.Drawing.Imaging\TiffCodecTest.cs" />\r
+    <Compile Include="Test\System.Drawing.Imaging\WmfPlaceableFileHeaderTest.cs" />\r
+    <Compile Include="Test\System.Drawing.Printing\MarginsTest.cs" />\r
+    <Compile Include="Test\System.Drawing.Printing\PageSettingsTest.cs" />\r
+    <Compile Include="Test\System.Drawing.Printing\PageSourceTest.cs" />\r
+    <Compile Include="Test\System.Drawing.Printing\PaperSizeTest.cs" />\r
+    <Compile Include="Test\System.Drawing.Printing\PrinterUnitConvertTest.cs" />\r
+    <Compile Include="Test\System.Drawing.Printing\PrintingPermissionAttributeTest.cs" />\r
+    <Compile Include="Test\System.Drawing.Printing\PrintingPermissionTest.cs" />\r
+    <Compile Include="Test\System.Drawing.Printing\PrintingServicesUnixTest.cs" />\r
+    <Compile Include="Test\System.Drawing.Text\PrivateFontCollectionTest.cs" />\r
+    <Compile Include="Test\System.Drawing.Text\InstalledFontCollectionTest.cs" />\r
+    <Compile Include="Test\System.Drawing\BitmapCas.cs" />\r
+    <Compile Include="Test\System.Drawing\GraphicsCas.cs" />\r
+    <Compile Include="Test\System.Drawing\RegionCas.cs" />\r
+    <Compile Include="Test\System.Drawing.Design\CategoryNameCollectionCas.cs" />\r
+    <Compile Include="Test\System.Drawing.Design\PaintValueEventArgsCas.cs" />\r
+    <Compile Include="Test\System.Drawing.Design\PropertyValueUIItemCas.cs" />\r
+    <Compile Include="Test\System.Drawing.Design\ToolboxComponentsCreatedEventArgsCas.cs" />\r
+    <Compile Include="Test\System.Drawing.Design\ToolboxComponentsCreatingEventArgsCas.cs" />\r
+    <Compile Include="Test\System.Drawing.Design\ToolboxItemCas.cs" />\r
+    <Compile Include="Test\System.Drawing.Design\ToolboxItemCollectionCas.cs" />\r
+    <Compile Include="Test\System.Drawing.Design\UITypeEditorCas.cs" />\r
+    <Compile Include="Test\System.Drawing.Text\PrivateFontCollectionCas.cs" />\r
   </ItemGroup>\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>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent></PreBuildEvent>\r
+    <PreBuildEvent>\r
+    </PreBuildEvent>\r
   </PropertyGroup>\r
   <ItemGroup>\r
-    <Reference Include="mscorlib.dll">
-      <SpecificVersion>False</SpecificVersion>
-      <HintPath>mscorlib.dll</HintPath>
-    </Reference>
-    <Reference Include="./../../class/lib/net_4_5/System.Drawing.dll">
-      <SpecificVersion>False</SpecificVersion>
-      <HintPath>./../../class/lib/net_4_5/System.Drawing.dll</HintPath>
-    </Reference>
-    <Reference Include="mscorlib.dll">
-      <SpecificVersion>False</SpecificVersion>
-      <HintPath>mscorlib.dll</HintPath>
-    </Reference>
-    <Reference Include="System.dll">
-      <SpecificVersion>False</SpecificVersion>
-      <HintPath>System.dll</HintPath>
-    </Reference>
-    <Reference Include="System.Drawing.dll">
-      <SpecificVersion>False</SpecificVersion>
-      <HintPath>System.Drawing.dll</HintPath>
-    </Reference>
-    <Reference Include="System.Runtime.Serialization.Formatters.Soap.dll">
-      <SpecificVersion>False</SpecificVersion>
-      <HintPath>System.Runtime.Serialization.Formatters.Soap.dll</HintPath>
-    </Reference>
-    <Reference Include="System.Xml.dll">
-      <SpecificVersion>False</SpecificVersion>
-      <HintPath>System.Xml.dll</HintPath>
-    </Reference>
-    <Reference Include="nunit.framework" />
-\r
+    <Reference Include="mscorlib.dll">\r
+      <HintPath>mscorlib.dll</HintPath>\r
+    </Reference>\r
+    <Reference Include="System.dll">\r
+      <HintPath>System.dll</HintPath>\r
+    </Reference>\r
+    <Reference Include="System.Drawing.dll">\r
+      <HintPath>System.Drawing.dll</HintPath>\r
+    </Reference>\r
+    <Reference Include="System.Runtime.Serialization.Formatters.Soap.dll">\r
+      <HintPath>System.Runtime.Serialization.Formatters.Soap.dll</HintPath>\r
+    </Reference>\r
+    <Reference Include="System.Xml.dll">\r
+      <HintPath>System.Xml.dll</HintPath>\r
+    </Reference>\r
+    <Reference Include="nunit.framework" />\r
+    <Reference Include="System.Drawing">\r
+      <HintPath>..\lib\net_4_5\System.Drawing.dll</HintPath>\r
+    </Reference>\r
   </ItemGroup>\r
   <ItemGroup>\r
     <Folder Include="Properties\" />\r
   </ItemGroup>\r
-    <ItemGroup>
-    <EmbeddedResource Include="Assembly/Mono.ico">
-       <LogicalName>Mono.ico</LogicalName>
-    </EmbeddedResource>
-    <EmbeddedResource Include="Assembly/Information.ico">
-       <LogicalName>Information.ico</LogicalName>
-    </EmbeddedResource>
-    <EmbeddedResource Include="Assembly/Error.ico">
-       <LogicalName>Error.ico</LogicalName>
-    </EmbeddedResource>
-    <EmbeddedResource Include="Assembly/Warning.ico">
-       <LogicalName>Warning.ico</LogicalName>
-    </EmbeddedResource>
-    <EmbeddedResource Include="Assembly/Question.ico">
-       <LogicalName>Question.ico</LogicalName>
-    </EmbeddedResource>
-    <EmbeddedResource Include="Test/resources/indexed.png">
-       <LogicalName>indexed.png</LogicalName>
-    </EmbeddedResource>
-  </ItemGroup>
-\r
+  <ItemGroup>\r
+    <EmbeddedResource Include="Assembly\Mono.ico">\r
+      <LogicalName>Mono.ico</LogicalName>\r
+    </EmbeddedResource>\r
+    <EmbeddedResource Include="Assembly\Information.ico">\r
+      <LogicalName>Information.ico</LogicalName>\r
+    </EmbeddedResource>\r
+    <EmbeddedResource Include="Assembly\Error.ico">\r
+      <LogicalName>Error.ico</LogicalName>\r
+    </EmbeddedResource>\r
+    <EmbeddedResource Include="Assembly\Warning.ico">\r
+      <LogicalName>Warning.ico</LogicalName>\r
+    </EmbeddedResource>\r
+    <EmbeddedResource Include="Assembly\Question.ico">\r
+      <LogicalName>Question.ico</LogicalName>\r
+    </EmbeddedResource>\r
+    <EmbeddedResource Include="Test\resources\indexed.png">\r
+      <LogicalName>indexed.png</LogicalName>\r
+    </EmbeddedResource>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <None Include="Assembly\Shield.ico" />\r
+  </ItemGroup>\r
 </Project>\r
-
index 2638031963a4bf6716332ac6a5ab92a0e3e896b5..7c07c2bf6c0eaf7ab20cb1132cac726b60418c17 100644 (file)
@@ -2,6 +2,7 @@
 // System.Drawing.Icon.cs
 //
 // Authors:
+//   Gary Barnett (gary.barnett.mono@gmail.com)
 //   Dennis Hayes (dennish@Raytek.com)
 //   Andreas Nahr (ClassDevelopment@A-SoftTech.com)
 //   Sanjay Gupta (gsanjay@novell.com)
@@ -53,7 +54,7 @@ namespace System.Drawing
        public sealed class Icon : MarshalByRefObject, ISerializable, ICloneable, IDisposable
        {
                [StructLayout(LayoutKind.Sequential)]
-               internal struct IconDirEntry {
+               internal struct IconDirEntry {          
                        internal byte   width;          // Width of icon
                        internal byte   height;         // Height of icon
                        internal byte   colorCount;     // colors in icon 
@@ -62,6 +63,7 @@ namespace System.Drawing
                        internal ushort bitCount;       // Bits per pixel
                        internal uint   bytesInRes;     // bytes in resource
                        internal uint   imageOffset;    // position in file 
+                       internal bool   ignore;         // for unsupported images (vista 256 png)
                }; 
 
                [StructLayout(LayoutKind.Sequential)]
@@ -87,19 +89,28 @@ namespace System.Drawing
                        internal uint   biClrImportant; 
                };
 
+               [StructLayout(LayoutKind.Sequential)]   // added baseclass for non bmp image format support
+               internal abstract class ImageData {
+               };
+
                [StructLayout(LayoutKind.Sequential)]
-               internal struct IconImage {
+               internal class IconImage : ImageData {
                        internal BitmapInfoHeader       iconHeader;     //image header
                        internal uint []                iconColors;     //colors table
                        internal byte []                iconXOR;        // bits for XOR mask
                        internal byte []                iconAND;        //bits for AND mask
-               };      
+               };
+
+               [StructLayout(LayoutKind.Sequential)]
+               internal class IconDump : ImageData {
+                       internal byte []                data;
+               };
 
                private Size iconSize;
                private IntPtr handle = IntPtr.Zero;
                private IconDir iconDir;
                private ushort id;
-               private IconImage [] imageData;
+               private ImageData [] imageData;
                private bool undisposable;
                private bool disposed;
                private Bitmap bitmap;
@@ -152,28 +163,43 @@ namespace System.Drawing
 
                                for (ushort i=0; i < count; i++) {
                                        IconDirEntry ide = iconDir.idEntries [i];
-                                       if ((ide.height == size.Height) || (ide.width == size.Width)) {
+                                       if (((ide.height == size.Height) || (ide.width == size.Width)) && !ide.ignore) {
                                                id = i;
                                                break;
                                        }
                                }
 
                                // if a perfect match isn't found we look for the biggest icon *smaller* than specified
-                               if (id == UInt16.MaxValue) {
+                               if (id == UInt16.MaxValue) { 
                                        int requested = Math.Min (size.Height, size.Width);
-                                       IconDirEntry best = iconDir.idEntries [0];
-                                       for (ushort i=1; i < count; i++) {
+                                       // previously best set to 1st image, as this might not be smallest changed loop to check all
+                                       IconDirEntry? best = null; 
+                                       for (ushort i=0; i < count; i++) {
                                                IconDirEntry ide = iconDir.idEntries [i];
-                                               if ((ide.height < requested) || (ide.width < requested)) {
-                                                       if ((ide.height > best.height) || (ide.width > best.width))
+                                               if (((ide.height < requested) || (ide.width < requested)) && !ide.ignore) {
+                                                       if (best == null) {
+                                                               best = ide;
+                                                               id = i;
+                                                       } else if ((ide.height > best.Value.height) || (ide.width > best.Value.width)) {
+                                                               best = ide;
                                                                id = i;
+                                                       }
                                                }
                                        }
                                }
 
                                // last one, if nothing better can be found
+                               if (id == UInt16.MaxValue) {
+                                       int i = count;
+                                       while (id == UInt16.MaxValue && i > 0) {
+                                               i--;
+                                               if (!iconDir.idEntries [i].ignore)
+                                                       id = (ushort) i;
+                                       }
+                               }
+
                                if (id == UInt16.MaxValue)
-                                       id = (ushort) (count - 1);
+                                       throw new ArgumentException ("Icon", "No valid icon image found");
 
                                iconSize.Height = iconDir.idEntries [id].height;
                                iconSize.Width = iconDir.idEntries [id].width;
@@ -353,6 +379,11 @@ namespace System.Drawing
                        writer.Write (ii.iconAND);
                }
 
+               private void SaveIconDump (BinaryWriter writer, IconDump id)
+               {
+                       writer.Write (id.data);
+               }
+
                private void SaveIconDirEntry (BinaryWriter writer, IconDirEntry ide, uint offset)
                {
                        writer.Write (ide.width);
@@ -377,10 +408,20 @@ namespace System.Drawing
                        }
 
                        for (int i=0; i < (int)count; i++) {
-                               SaveIconImage (writer, imageData [i]);
+
+                               //FIXME: HACK: 1 (out of the 8) vista type icons had additional bytes (value:0)
+                               //between images. This fixes the issue, but perhaps shouldnt include in production?
+                               while (writer.BaseStream.Length < iconDir.idEntries[i].imageOffset)
+                                       writer.Write ((byte) 0);
+
+                               if (imageData [i] is IconDump)
+                                       SaveIconDump (writer, (IconDump) imageData [i]);
+                               else
+                                       SaveIconImage (writer, (IconImage) imageData [i]);
                        }
                }
-
+               // TODO: check image not ignored (presently this method doesnt seem to be called unless width/height 
+               // refer to image)
                private void SaveBestSingleIcon (BinaryWriter writer, int width, int height)
                {
                        writer.Write (iconDir.idReserved);
@@ -401,7 +442,7 @@ namespace System.Drawing
                        }
 
                        SaveIconDirEntry (writer, iconDir.idEntries [best], 22);
-                       SaveIconImage (writer, imageData [best]);
+                       SaveIconImage (writer, (IconImage) imageData [best]);
                }
 
                private void SaveBitmapAsIcon (BinaryWriter writer)
@@ -490,7 +531,7 @@ namespace System.Drawing
                        if (imageData == null)
                                return new Bitmap (32, 32);
 
-                       IconImage ii = imageData [id];
+                       IconImage ii = (IconImage) imageData [id];
                        BitmapInfoHeader bih = ii.iconHeader;
                        int biHeight = bih.biHeight / 2;
 
@@ -574,7 +615,6 @@ namespace System.Drawing
                                        bitmap = BuildBitmapOnWin32 ();
                                }
                        }
-
                        return bitmap;
                }
 
@@ -661,7 +701,9 @@ namespace System.Drawing
                                throw new System.ArgumentException ("Invalid Argument", "stream");
 
                        ushort dirEntryCount = reader.ReadUInt16();
-                       ArrayList entries = new ArrayList (dirEntryCount);
+                       imageData = new ImageData [dirEntryCount]; 
+                       iconDir.idCount = dirEntryCount; 
+                       iconDir.idEntries = new IconDirEntry [dirEntryCount];
                        bool sizeObtained = false;
                        // now read in the IconDirEntry structures
                        for (int i = 0; i < dirEntryCount; i++) {
@@ -685,18 +727,21 @@ Console.WriteLine ("\tide.bitCount: {0}", ide.bitCount);
 Console.WriteLine ("\tide.bytesInRes: {0}", ide.bytesInRes);
 Console.WriteLine ("\tide.imageOffset: {0}", ide.imageOffset);
 #endif
-
+                               // Vista 256x256 icons points directly to a PNG bitmap
                                // 256x256 icons are decoded as 0x0 (width and height are encoded as BYTE)
-                               // and we ignore them just like MS does (at least up to fx 2.0)
+                               // and we ignore them just like MS does (at least up to fx 2.0) 
+                               // Added: storing data so it can be saved back
                                if ((ide.width == 0) && (ide.height == 0))
-                                       continue;
+                                       ide.ignore = true;
+                               else
+                                       ide.ignore = false;
 
-                               int index = entries.Add (ide);
+                               iconDir.idEntries [i] = ide;
 
                                //is this is the best fit??
                                if (!sizeObtained) {
-                                       if ((ide.height == height) || (ide.width == width)) {
-                                               this.id = (ushort) index;
+                                       if (((ide.height == height) || (ide.width == width)) && !ide.ignore) {
+                                               this.id = (ushort) i;
                                                sizeObtained = true;
                                                this.iconSize.Height = ide.height;
                                                this.iconSize.Width = ide.width;
@@ -704,22 +749,22 @@ Console.WriteLine ("\tide.imageOffset: {0}", ide.imageOffset);
                                }
                        }
 
-                       // Vista 256x256 icons points directly to a PNG bitmap
-                       dirEntryCount = (ushort) entries.Count;
-                       if (dirEntryCount == 0)
-                               throw new Win32Exception (0, "No valid icon entry were found.");
+                       // throw error if no valid entries found
+                       int valid = 0;
+                       for (int i = 0; i < dirEntryCount; i++) {
+                               if (!(iconDir.idEntries [i].ignore))
+                                       valid++;
+                       }
 
-                       iconDir.idCount = dirEntryCount;
-                       imageData = new IconImage [dirEntryCount];
-                       iconDir.idEntries = new IconDirEntry [dirEntryCount];
-                       entries.CopyTo (iconDir.idEntries);
+                       if (valid == 0) 
+                               throw new Win32Exception (0, "No valid icon entry were found.");
 
-                       //if we havent found the best match, return the one with the
-                       //largest size. Is this approach correct??
+                       // if we havent found the best match, return the one with the
+                       // largest size. Is this approach correct??
                        if (!sizeObtained){
                                uint largestSize = 0;
-                               for (int j=0; j<dirEntryCount; j++){
-                                       if (iconDir.idEntries [j].bytesInRes >= largestSize   {
+                               for (int j=0; j<dirEntryCount; j++){ 
+                                       if (iconDir.idEntries [j].bytesInRes >= largestSize && !iconDir.idEntries [j].ignore)   {
                                                largestSize = iconDir.idEntries [j].bytesInRes;
                                                this.id = (ushort) j;
                                                this.iconSize.Height = iconDir.idEntries [j].height;
@@ -729,8 +774,18 @@ Console.WriteLine ("\tide.imageOffset: {0}", ide.imageOffset);
                        }
                        
                        //now read in the icon data
-                       for (int j = 0; j<dirEntryCount; j++)
+                       for (int j = 0; j<dirEntryCount; j++) 
                        {
+                               // process ignored into IconDump
+                               if (iconDir.idEntries [j].ignore) {
+                                       IconDump id = new IconDump ();
+                                       stream.Seek (iconDir.idEntries [j].imageOffset, SeekOrigin.Begin);
+                                       id.data = new byte [iconDir.idEntries [j].bytesInRes];
+                                       stream.Read (id.data, 0, id.data.Length);
+                                       imageData [j] = id;
+                                       continue;
+                               }
+                               // standard image
                                IconImage iidata = new IconImage();
                                BitmapInfoHeader bih = new BitmapInfoHeader();
                                stream.Seek (iconDir.idEntries [j].imageOffset, SeekOrigin.Begin);
index 67da4402508e4464f494ac9b1024295088d300f5..e99f2daef32c9ea9379fa4610f3e41d9c4f3259c 100644 (file)
@@ -41,17 +41,19 @@ namespace System.Drawing {
                private const int Error_Hand = 2;
                private const int Exclamation_Warning = 3;
                private const int Question_ = 4;
+               private const int Shield_ = 5;
 
                static SystemIcons ()
                {
                        // we minimize the # of icons to load since most of them are duplicates
-                       icons = new Icon [5];
+                       icons = new Icon [6];
                        // we use an internal .ctor to ensure the SystemIcons can't de disposed
                        icons [Application_Winlogo] = new Icon ("Mono.ico", true);
                        icons [Asterisk_Information] = new Icon ("Information.ico", true);
                        icons [Error_Hand] = new Icon ("Error.ico", true);
                        icons [Exclamation_Warning] = new Icon ("Warning.ico", true);
                        icons [Question_] = new Icon ("Question.ico", true);
+                       icons [Shield_] = new Icon ("Shield.ico", true);
                }
 
                private SystemIcons ()
@@ -101,5 +103,9 @@ namespace System.Drawing {
                public static Icon WinLogo {
                        get { return icons [Application_Winlogo]; }
                }
+
+               public static Icon Shield {
+                       get { return icons [Shield_]; }
+               }
        }
 }
index 5c8f3097c01451b7cfe3f6ced5e06d36445cc17f..36568741c3ffaf922423b1279f01a5e57d230522 100644 (file)
@@ -2,6 +2,7 @@
 // Icon class testing unit
 //
 // Authors:
+//     Gary Barnett <gary.barnett.mono@gmail.com>
 //     Sanjay Gupta <gsanjay@novell.com>
 //     Sebastien Pouliot  <sebastien@ximian.com>
 //
@@ -144,6 +145,48 @@ namespace MonoTests.System.Drawing {
                        Assert.AreEqual (32, non_square.Width, "Width");
                }
 
+               [Test]
+               public void Constructor_Icon_GetNormalSizeFromIconWith256 ()
+               {
+                       string filepath = TestBitmap.getInFile ("bitmaps/323511.ico");
+
+                       Icon orig = new Icon (filepath);
+                       Assert.AreEqual (32,orig.Height);
+                       Assert.AreEqual (32,orig.Width);
+
+                       Icon ret = new Icon (orig, 48, 48);
+                       Assert.AreEqual (48, ret.Height);
+                       Assert.AreEqual (48, ret.Width);
+               }
+
+               [Test]
+               public void Constructor_Icon_DoesntReturn256Passing0 ()
+               {
+                       string filepath = TestBitmap.getInFile ("bitmaps/323511.ico");
+                       
+                       Icon orig = new Icon (filepath);
+                       Assert.AreEqual (32,orig.Height);
+                       Assert.AreEqual (32,orig.Width);
+                       
+                       Icon ret = new Icon (orig, 0, 0);
+                       Assert.AreNotEqual (0, ret.Height);
+                       Assert.AreNotEqual (0, ret.Width);
+               }
+
+               [Test]
+               public void Constructor_Icon_DoesntReturn256Passing1 ()
+               {
+                       string filepath = TestBitmap.getInFile ("bitmaps/323511.ico");
+                       
+                       Icon orig = new Icon (filepath);
+                       Assert.AreEqual (32,orig.Height);
+                       Assert.AreEqual (32,orig.Width);
+                       
+                       Icon ret = new Icon (orig, 1, 1);
+                       Assert.AreNotEqual (0, ret.Height);
+                       Assert.AreNotEqual (0, ret.Width);
+               }
+
                [Test]
                [ExpectedException (typeof (ArgumentException))]
                public void Constructor_StreamNull ()
@@ -361,22 +404,19 @@ namespace MonoTests.System.Drawing {
                [Test] // bug #410608
                public void Save_256 ()
                {
-                       if (RunningOnUnix)
-                               Assert.Ignore ("Depends on bug #323511");
-
-                       using (Icon icon = new Icon (TestBitmap.getInFile ("bitmaps/323511.ico"))) {
-                               // FIXME: use this instead after bug #415809 is fixed
-                               //SaveAndCompare ("256", icon, true);
+                       string filepath = TestBitmap.getInFile ("bitmaps/323511.ico");
 
-                               MemoryStream ms = new MemoryStream ();
-                               icon.Save (ms);
-                               ms.Position = 0;
-
-                               using (Icon loaded = new Icon (ms)) {
-                                       Assert.AreEqual (icon.Height, loaded.Height, "Loaded.Height");
-                                       Assert.AreEqual (icon.Width, loaded.Width, "Loaded.Width");
-                               }
+                       using (Icon icon = new Icon (filepath)) {
+                               // bug #415809 fixed
+                               SaveAndCompare ("256", icon, true);
                        }
+
+                       // binary comparison
+                       var orig = new MemoryStream (File.ReadAllBytes (filepath));
+                       var saved = new MemoryStream ();
+                       using (Icon icon = new Icon (filepath))
+                               icon.Save (saved);
+                       FileAssert.AreEqual (orig, saved, "binary comparison");
                }
 
                [Test]
@@ -480,9 +520,6 @@ namespace MonoTests.System.Drawing {
 #endif
                public void Icon256ToBitmap ()
                {
-                       if (RunningOnUnix)
-                               Assert.Ignore ("Depends on bug #323511");
-
                        using (FileStream fs = File.OpenRead (TestBitmap.getInFile ("bitmaps/415581.ico"))) {
                                Icon icon = new Icon (fs, 48, 48);
                                using (Bitmap b = icon.ToBitmap ()) {
@@ -507,6 +544,31 @@ namespace MonoTests.System.Drawing {
                        }
                }
 
+               [Test]
+               public void Icon256ToBitmap_Request0 ()
+               {
+                       // 415581.ico has 2 images, the 256 and 48
+                       using (FileStream fs = File.OpenRead (TestBitmap.getInFile ("bitmaps/415581.ico"))) {
+                               Icon icon = new Icon (fs, 0, 0);
+                               using (Bitmap b = icon.ToBitmap ()) {
+                                       Assert.AreEqual (0, b.Palette.Entries.Length, "#B1");
+                                       Assert.AreEqual (48, b.Height, "#B2");
+                                       Assert.AreEqual (48, b.Width, "#B3");
+                                       Assert.IsTrue (b.RawFormat.Equals (ImageFormat.MemoryBmp), "#B4");
+                                       Assert.AreEqual (2, b.Flags, "#B5");
+                               }
+                       }
+               }
+
+               [Test, ExpectedException ()] //ToDo: System.ComponentModel.Win32Exception
+               public void Only256InFile ()
+               {
+                       using (FileStream fs = File.OpenRead (TestBitmap.getInFile ("bitmaps/only256.ico"))) {
+                               Icon icon = new Icon (fs, 0, 0);
+                       }
+               }
+
+
 #if NET_2_0
                [Test]
                [ExpectedException (typeof (ArgumentException))]
diff --git a/mcs/class/System.Drawing/Test/System.Drawing/bitmaps/only256.ico b/mcs/class/System.Drawing/Test/System.Drawing/bitmaps/only256.ico
new file mode 100644 (file)
index 0000000..d6fdd64
Binary files /dev/null and b/mcs/class/System.Drawing/Test/System.Drawing/bitmaps/only256.ico differ
index 4238ea679910fe084e845630d9762654630a8a0d..41fbdab65758e75505e964bf9f839522fea5f609 100644 (file)
@@ -13,7 +13,8 @@ System.Net.Http.Properties.Resources.resources: ../../../external/aspnetwebstack
 
 LIB_MCS_FLAGS = -r:System.Core.dll -r:System.dll -r:System.Net.Http.dll -r:System.Xml.dll -r:System.Runtime.Serialization.dll -r:System.Xml.Linq.dll -r:System.Data.dll -r:System.Configuration.dll \
                -d:ASPNETMVC -keyfile:../winfx.pub -delaysign \
-               -resource:System.Net.Http.Properties.CommonWebApiResources.resources
+               -resource:System.Net.Http.Properties.CommonWebApiResources.resources \
+               -resource:System.Net.Http.Properties.Resources.resources
 
 include ../../build/library.make
 
index 3ebed3f2046e2f8f4557fbec0bc8c0d0d422aaea..bf3a437c83ca6f6fc0bf1386970bdefb77a0022b 100644 (file)
     <EmbeddedResource Include="System.Net.Http.Properties.CommonWebApiResources.resources">
        <LogicalName>System.Net.Http.Properties.CommonWebApiResources.resources</LogicalName>
     </EmbeddedResource>
+    <EmbeddedResource Include="System.Net.Http.Properties.Resources.resources">
+       <LogicalName>System.Net.Http.Properties.Resources.resources</LogicalName>
+    </EmbeddedResource>
   </ItemGroup>
 \r
 </Project>\r
diff --git a/mcs/class/System.Net.Http/HtppLibrary.csproj b/mcs/class/System.Net.Http/HtppLibrary.csproj
new file mode 100644 (file)
index 0000000..3ddc293
--- /dev/null
@@ -0,0 +1,103 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>8.0.30703</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{1067A7EF-857F-4045-AB01-013CA131EA32}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>HtppLibrary</RootNamespace>\r
+    <AssemblyName>HtppLibrary</AssemblyName>\r
+    <FileAlignment>512</FileAlignment>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <Optimize>false</Optimize>\r
+    <OutputPath>bin\Debug\</OutputPath>\r
+    <DefineConstants>TRACE;DEBUG;NET_1_1;NET_2_0;NET_4_0;NET_4_5;MOBILE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <Optimize>true</Optimize>\r
+    <OutputPath>bin\Release\</OutputPath>\r
+    <DefineConstants>TRACE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <Reference Include="System" />\r
+    <Reference Include="System.Core" />\r
+    <Reference Include="System.Xml.Linq" />\r
+    <Reference Include="System.Data.DataSetExtensions" />\r
+    <Reference Include="System.Data" />\r
+    <Reference Include="System.Xml" />\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Compile Include="Properties\AssemblyInfo.cs" />\r
+    <Compile Include="System.Net.Http.Headers\AuthenticationHeaderValue.cs" />\r
+    <Compile Include="System.Net.Http.Headers\CacheControlHeaderValue.cs" />\r
+    <Compile Include="System.Net.Http.Headers\CollectionExtensions.cs" />\r
+    <Compile Include="System.Net.Http.Headers\ContentDispositionHeaderValue.cs" />\r
+    <Compile Include="System.Net.Http.Headers\ContentRangeHeaderValue.cs" />\r
+    <Compile Include="System.Net.Http.Headers\EntityTagHeaderValue.cs" />\r
+    <Compile Include="System.Net.Http.Headers\HashCodeCalculator.cs" />\r
+    <Compile Include="System.Net.Http.Headers\HeaderInfo.cs" />\r
+    <Compile Include="System.Net.Http.Headers\HttpContentHeaders.cs" />\r
+    <Compile Include="System.Net.Http.Headers\HttpHeaderKind.cs" />\r
+    <Compile Include="System.Net.Http.Headers\HttpHeaders.cs" />\r
+    <Compile Include="System.Net.Http.Headers\HttpHeaderValueCollection.cs" />\r
+    <Compile Include="System.Net.Http.Headers\HttpRequestHeaders.cs" />\r
+    <Compile Include="System.Net.Http.Headers\HttpResponseHeaders.cs" />\r
+    <Compile Include="System.Net.Http.Headers\Lexer.cs" />\r
+    <Compile Include="System.Net.Http.Headers\MediaTypeHeaderValue.cs" />\r
+    <Compile Include="System.Net.Http.Headers\MediaTypeWithQualityHeaderValue.cs" />\r
+    <Compile Include="System.Net.Http.Headers\NameValueHeaderValue.cs" />\r
+    <Compile Include="System.Net.Http.Headers\NameValueWithParametersHeaderValue.cs" />\r
+    <Compile Include="System.Net.Http.Headers\Parser.cs" />\r
+    <Compile Include="System.Net.Http.Headers\ProductHeaderValue.cs" />\r
+    <Compile Include="System.Net.Http.Headers\ProductInfoHeaderValue.cs" />\r
+    <Compile Include="System.Net.Http.Headers\QualityValue.cs" />\r
+    <Compile Include="System.Net.Http.Headers\RangeConditionHeaderValue.cs" />\r
+    <Compile Include="System.Net.Http.Headers\RangeHeaderValue.cs" />\r
+    <Compile Include="System.Net.Http.Headers\RangeItemHeaderValue.cs" />\r
+    <Compile Include="System.Net.Http.Headers\RetryConditionHeaderValue.cs" />\r
+    <Compile Include="System.Net.Http.Headers\StringWithQualityHeaderValue.cs" />\r
+    <Compile Include="System.Net.Http.Headers\TransferCodingHeaderValue.cs" />\r
+    <Compile Include="System.Net.Http.Headers\TransferCodingWithQualityHeaderValue.cs" />\r
+    <Compile Include="System.Net.Http.Headers\ViaHeaderValue.cs" />\r
+    <Compile Include="System.Net.Http.Headers\WarningHeaderValue.cs" />\r
+    <Compile Include="System.Net.Http\ByteArrayContent.cs" />\r
+    <Compile Include="System.Net.Http\ClientCertificateOption.cs" />\r
+    <Compile Include="System.Net.Http\DelegatingHandler.cs" />\r
+    <Compile Include="System.Net.Http\FormUrlEncodedContent.cs" />\r
+    <Compile Include="System.Net.Http\HttpClient.cs" />\r
+    <Compile Include="System.Net.Http\HttpClientHandler.cs" />\r
+    <Compile Include="System.Net.Http\HttpCompletionOption.cs" />\r
+    <Compile Include="System.Net.Http\HttpContent.cs" />\r
+    <Compile Include="System.Net.Http\HttpMessageHandler.cs" />\r
+    <Compile Include="System.Net.Http\HttpMethod.cs" />\r
+    <Compile Include="System.Net.Http\HttpRequestException.cs" />\r
+    <Compile Include="System.Net.Http\HttpRequestMessage.cs" />\r
+    <Compile Include="System.Net.Http\HttpResponseMessage.cs" />\r
+    <Compile Include="System.Net.Http\MessageProcessingHandler.cs" />\r
+    <Compile Include="System.Net.Http\MultipartContent.cs" />\r
+    <Compile Include="System.Net.Http\StreamContent.cs" />\r
+    <Compile Include="System.Net.Http\StringContent.cs" />\r
+    <Compile Include="System.Net.Http\MultipartFormDataContent.cs" />\r
+  </ItemGroup>\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="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+</Project>
\ No newline at end of file
index 7499285e5a44b8f27e7e32f496ef5ba00c3c7658..eb336f70d87b43a048592bfa00181f251b22b19b 100644 (file)
@@ -307,9 +307,9 @@ namespace System.Net.Http
                                                headers.AddValue (header.Key, value);
                                        }
                                }
-                               
+
                                var stream = wrequest.GetRequestStream ();
-                               await request.Content.CopyToAsync (stream);
+                               await request.Content.CopyToAsync (stream).ConfigureAwait (false);
                        }
 
                        // FIXME: GetResponseAsync does not accept cancellationToken
index ad068a598d41e04b27f727d85cfaf8d70aeaf29b..40cbde3a6abf0ecb6a553adca54834b4e94b267d 100644 (file)
@@ -85,6 +85,9 @@ namespace System.Net.Http
                        if (stream == null)
                                throw new ArgumentNullException ("stream");
 
+                       if (buffer != null)
+                               return buffer.CopyToAsync (stream);
+
                        return SerializeToStreamAsync (stream, context);
                }
 
@@ -137,6 +140,9 @@ namespace System.Net.Http
                        if (disposed)
                                throw new ObjectDisposedException (GetType ().ToString ());
 
+                       if (buffer != null)
+                               return new MemoryStream (buffer.GetBuffer (), 0, (int)buffer.Length, false);
+
                        if (stream == null)
                                stream = await CreateContentReadStreamAsync ().ConfigureAwait (false);
 
index 9db2950a785dae36f91b3846959fb012b330bc1e..b4a541afab286291a3e2d2a026354002f25a4315 100644 (file)
@@ -175,6 +175,18 @@ namespace MonoTests.System.Net.Http
                        Assert.IsTrue (hit, "#10");
                }
 
+               [Test]
+               public void CopyToAsync_ClosedInput ()
+               {
+                       var stream = new MemoryStream (new byte[] { 1 });
+                       var content = new StreamContent (stream);
+                       Assert.IsTrue (content.LoadIntoBufferAsync ().Wait (3000), "#1");
+                       stream.Close ();
+
+                       var stream_out = new MemoryStream (10);
+                       Assert.IsTrue (content.CopyToAsync (stream_out).Wait (3000), "#2");
+               }
+
                [Test]
                public void Headers ()
                {
@@ -366,5 +378,19 @@ namespace MonoTests.System.Net.Http
                        var res = sc.ReadAsStreamAsync ().Result;
                        Assert.AreEqual (77, res.ReadByte (), "#1");
                }
+
+               [Test]
+               public void ReadAsStreamAsync_ClosedInput ()
+               {
+                       var stream = new MemoryStream (new byte[] { 1 });
+                       var content = new StreamContent (stream);
+                       Assert.IsTrue (content.LoadIntoBufferAsync ().Wait (3000), "#1");
+                       stream.Close ();
+
+                       var stream_read = content.ReadAsStreamAsync ().Result;
+                       Assert.IsTrue (stream_read.CanSeek, "#2");
+                       Assert.AreEqual (0, stream_read.Position, "#3");        
+                       Assert.AreEqual (1, stream_read.Length, "#4");
+               }
        }
 }
index 8fd2335c79255f98c69aae01de54f9c66234e771..7c00043b8abcf99392d2538d71200a4edc04b597 100644 (file)
@@ -69,21 +69,10 @@ namespace System.Runtime.Serialization.Formatters.Soap {
                }\r
                \r
                public object Deserialize(Stream serializationStream, HeaderHandler handler) {\r
-                       object objReturn = null;\r
                        SoapReader soapReader = new SoapReader(_binder, _selector, _context);\r
-                       CultureInfo savedCi = CultureInfo.CurrentCulture;\r
-                       try {\r
-                               Thread.CurrentThread.CurrentCulture = new CultureInfo("en-US");\r
-                               objReturn = soapReader.Deserialize(serializationStream, _topObject);\r
-                       }\r
-                       finally {\r
-                               Thread.CurrentThread.CurrentCulture = savedCi;\r
-                       }\r
-                       return objReturn;\r
+                       return soapReader.Deserialize(serializationStream, _topObject);\r
                }\r
-               \r
-               \r
-               \r
+\r
                public void Serialize(Stream serializationStream, object graph) {\r
                        Serialize(serializationStream, graph, null);\r
                }\r
@@ -96,15 +85,7 @@ namespace System.Runtime.Serialization.Formatters.Soap {
                        if(graph == null)\r
                                throw new ArgumentNullException("graph");\r
                        SoapWriter soapWriter = new SoapWriter(serializationStream, _selector, _context, _topObject);\r
-                       CultureInfo savedCi = CultureInfo.CurrentCulture;\r
-                       try {\r
-                               Thread.CurrentThread.CurrentCulture = new CultureInfo("en-US");\r
-                               soapWriter.Serialize (graph, headers, _typeFormat, _assemblyFormat);\r
-                       }\r
-                       finally {\r
-                               Thread.CurrentThread.CurrentCulture = savedCi;\r
-                       }\r
-                       \r
+                       soapWriter.Serialize (graph, headers, _typeFormat, _assemblyFormat);\r
                }\r
                \r
                public ISurrogateSelector SurrogateSelector {\r
index ddff2fdc5348e3df41cefd6e38c85b195aca419c..d2a076e4b82a48961fd0197dfdc89ff28de70a4d 100644 (file)
@@ -33,6 +33,8 @@ using System.Xml;
 using System.Xml.Schema;\r
 using System.Reflection;\r
 using System.Collections;\r
+using System.Threading;\r
+using System.Globalization;\r
 using System.Runtime.Remoting;\r
 using System.Runtime.Serialization;\r
 using System.Runtime.Remoting.Messaging;\r
@@ -89,7 +91,21 @@ namespace System.Runtime.Serialization.Formatters.Soap {
 \r
                #region Public Methods\r
 \r
-               public object Deserialize(Stream inStream, ISoapMessage soapMessage) \r
+               public object Deserialize(Stream inStream, ISoapMessage soapMessage)\r
+               {\r
+                       var savedCi = CultureInfo.CurrentCulture;\r
+                       try {\r
+                               Thread.CurrentThread.CurrentCulture = new CultureInfo("en-US");\r
+                               Deserialize_inner(inStream, soapMessage);\r
+                       }\r
+                       finally {\r
+                               Thread.CurrentThread.CurrentCulture = savedCi;\r
+                       }\r
+\r
+                       return TopObject;\r
+               }\r
+\r
+               void Deserialize_inner(Stream inStream, ISoapMessage soapMessage)\r
                {\r
                        ArrayList headers = null;\r
                        xmlReader = new XmlTextReader(inStream);\r
@@ -147,8 +163,6 @@ namespace System.Runtime.Serialization.Formatters.Soap {
                        {\r
                                if(xmlReader != null) xmlReader.Close();\r
                        }\r
-\r
-                       return TopObject;\r
                }\r
                \r
                #endregion\r
index b5e704fcbc8b44d289e8332952d94554b183a018..1bc703e216f67314855e70cb54523e91452170cb 100644 (file)
@@ -29,6 +29,7 @@
 \r
 using System;\r
 using System.IO;\r
+using System.Threading;\r
 using System.Reflection;\r
 using System.Collections;\r
 using System.Runtime.Remoting;\r
@@ -197,6 +198,21 @@ namespace System.Runtime.Serialization.Formatters.Soap {
 \r
 \r
                internal void Serialize (object objGraph, Header[] headers, FormatterTypeStyle typeFormat, FormatterAssemblyStyle assemblyFormat)\r
+               {\r
+                       CultureInfo savedCi = CultureInfo.CurrentCulture;\r
+                       try {\r
+                               Thread.CurrentThread.CurrentCulture = new CultureInfo("en-US");\r
+                               Serialize_inner (objGraph, headers, typeFormat, assemblyFormat);\r
+                       } finally {\r
+                               Thread.CurrentThread.CurrentCulture = savedCi;\r
+                       }\r
+\r
+#if NET_2_0 && !TARGET_JVM\r
+                       _manager.RaiseOnSerializedEvent ();\r
+#endif\r
+               }\r
+\r
+               void Serialize_inner (object objGraph, Header[] headers, FormatterTypeStyle typeFormat, FormatterAssemblyStyle assemblyFormat)\r
                {\r
                        _typeFormat = typeFormat;\r
                        _assemblyFormat = assemblyFormat;\r
@@ -280,10 +296,6 @@ namespace System.Runtime.Serialization.Formatters.Soap {
                        _xmlWriter.WriteFullEndElement(); // the body element\r
                        _xmlWriter.WriteFullEndElement(); // the envelope element\r
                        _xmlWriter.Flush();\r
-\r
-#if NET_2_0 && !TARGET_JVM\r
-                       _manager.RaiseOnSerializedEvent ();\r
-#endif\r
                }\r
                \r
                private void WriteObjectQueue ()\r
index 107f14e2cb2c4b1d131ab8991bc4ab1dd1ba7ed0..3dd914db71bd48309df4f6a987248553a1e0b3ab 100644 (file)
@@ -2,6 +2,8 @@
 using System;\r
 using System.Collections;\r
 using System.Reflection;\r
+using System.Threading;\r
+using System.Globalization;\r
 using System.Runtime.Remoting;\r
 using System.Runtime.Remoting.Messaging;\r
 using System.Runtime.Serialization;\r
@@ -382,6 +384,42 @@ namespace MonoTests.System.Runtime.Serialization.Formatters.Soap {
                        Assertion.AssertEquals ("#6", typeof(string), ts[0]);\r
                        Assertion.AssertEquals ("#7", typeof(SignatureTest[]), ts[1]);\r
                }\r
+\r
+               [Test]\r
+               public void TestCulture ()\r
+               {\r
+                       var currentCulture = Thread.CurrentThread.CurrentCulture;\r
+                       try {\r
+                               Thread.CurrentThread.CurrentCulture = new CultureInfo ("de-DE");\r
+\r
+                               var ms = new MemoryStream ();\r
+                               var test = new CultureTest ();\r
+\r
+                               _soapFormatter.Serialize(ms, test);\r
+                               ms.Position = 0;\r
+                               _soapFormatter.Deserialize(ms);\r
+                       } finally {\r
+                               Thread.CurrentThread.CurrentCulture = currentCulture;\r
+                       }\r
+               }\r
+\r
+               [Serializable]\r
+               public class CultureTest\r
+               {\r
+                       [OnDeserialized]\r
+                       public void OnDeserialization (StreamingContext context)\r
+                       {\r
+                               var ci = Thread.CurrentThread.CurrentCulture;\r
+                               Assertion.AssertEquals("#1", "German (Germany)", ci.EnglishName);\r
+                       }\r
+                       \r
+                       [OnSerialized]\r
+                       public void OnSerialized (StreamingContext context)\r
+                       {\r
+                               var ci = Thread.CurrentThread.CurrentCulture;\r
+                               Assertion.AssertEquals("#2", "German (Germany)", ci.EnglishName);\r
+                       }\r
+               }\r
        }\r
        \r
        [Serializable]\r
index 1ddb249990596a2b309a27825b433b0cdf390ec2..60d0cb40cb1f3acf8a3b8f0af0cc26022468f20d 100644 (file)
@@ -7,19 +7,24 @@ RESOURCE_FILES = \
 
 LIBRARY = System.Runtime.Serialization.dll
 LIB_MCS_FLAGS = \
-                       /nowarn:168,169,219,414 \
-               /r:System.dll \
-               /r:System.Xml.dll \
+               /nowarn:168,169,219,414 \
+               /r:System.dll \
+               /r:System.Xml.dll \
                /r:System.Core.dll \
-               $(RESOURCE_FILES:%=/resource:%)
+               $(RESOURCE_FILES:%=/resource:%)
 
 ifneq (2.1, $(FRAMEWORK_VERSION))
 LIB_MCS_FLAGS += /d:NET_3_0 /r:System.Data.dll /r:System.Configuration.dll
 endif
 
-TEST_MCS_FLAGS = $(LIB_MCS_FLAGS) /r:System.ServiceModel.dll
+TEST_RESOURCE_FILES = \
+       Test/Resources/WSDL/collections.wsdl    \
+       Test/Resources/WSDL/custom-collections.wsdl
 
-EXTRA_DISTFILES = $(RESOURCE_FILES) \
+TEST_MCS_FLAGS = $(LIB_MCS_FLAGS) /r:System.ServiceModel.dll /r:System.Web.Services.dll \
+       $(TEST_RESOURCE_FILES:%=/resource:%)
+
+EXTRA_DISTFILES = $(RESOURCE_FILES) $(TEST_RESOURCE_FILES) \
        Test/Resources/FrameworkTypes/* \
        Test/Resources/Schemas/*.xsd \
        Test/System.Runtime.Serialization/one.xml
index 78097a8e487a8a7fc795ccfa9795f80975f262a3..e5b5a3c586d98e2fea3ca82d0569012273bba740 100644 (file)
@@ -55,6 +55,7 @@
    <Compile Include="Test\System.Runtime.Serialization\XmlObjectSerializerTest.cs" />
    <Compile Include="Test\System.Runtime.Serialization\XsdDataContractExporterTest.cs" />
    <Compile Include="Test\System.Runtime.Serialization\XsdDataContractImporterTest.cs" />
+   <Compile Include="Test\System.Runtime.Serialization\CollectionSerialization.cs" />
    <Compile Include="Test\System.Xml\UniqueIdTest.cs" />
    <Compile Include="Test\System.Xml\XmlBinaryDictionaryReaderTest.cs" />
    <Compile Include="Test\System.Xml\XmlBinaryDictionaryWriterTest.cs" />
index 9461f4e6e80793371f36c671c874989964cc2b5a..7683313df9f91a2d27bc595c775161cf85896d67 100644 (file)
@@ -55,6 +55,7 @@
    <Compile Include="Test\System.Runtime.Serialization\XmlObjectSerializerTest.cs" />
    <Compile Include="Test\System.Runtime.Serialization\XsdDataContractExporterTest.cs" />
    <Compile Include="Test\System.Runtime.Serialization\XsdDataContractImporterTest.cs" />
+   <Compile Include="Test\System.Runtime.Serialization\CollectionSerialization.cs" />
    <Compile Include="Test\System.Xml\UniqueIdTest.cs" />
    <Compile Include="Test\System.Xml\XmlBinaryDictionaryReaderTest.cs" />
    <Compile Include="Test\System.Xml\XmlBinaryDictionaryWriterTest.cs" />
index 648775258ab026741870b1f2107d08f36cdcc7bc..5b7ebb0e2023d4550b6d36ee99a107c0c2862b7a 100644 (file)
@@ -55,6 +55,7 @@
    <Compile Include="Test\System.Runtime.Serialization\XmlObjectSerializerTest.cs" />
    <Compile Include="Test\System.Runtime.Serialization\XsdDataContractExporterTest.cs" />
    <Compile Include="Test\System.Runtime.Serialization\XsdDataContractImporterTest.cs" />
+   <Compile Include="Test\System.Runtime.Serialization\CollectionSerialization.cs" />
    <Compile Include="Test\System.Xml\UniqueIdTest.cs" />
    <Compile Include="Test\System.Xml\XmlBinaryDictionaryReaderTest.cs" />
    <Compile Include="Test\System.Xml\XmlBinaryDictionaryWriterTest.cs" />
index 45fd1f7091315903859c8d9ca9f7bccc80d15eee..78303b50826803d957ee6a20e47925175b1200b2 100755 (executable)
@@ -455,21 +455,24 @@ namespace System.Runtime.Serialization
 
                        QName rootQName = null;
                        XmlDictionaryString name, ns;
-                       if (DataContractResolver != null && DataContractResolver.TryResolveType (graph.GetType (), type, default_resolver, out name, out ns))
+                       var graphType = graph.GetType ();
+                       if (DataContractResolver != null && DataContractResolver.TryResolveType (graphType, type, default_resolver, out name, out ns))
                                rootQName = new QName (name.Value, ns.Value);
 
                        // It is error unless 1) TypeResolver resolved the type name, 2) the object is the exact type, 3) the object is known or 4) the type is primitive.
 
-                       if (rootQName == null &&
-                           graph.GetType () != type &&
-                           IsUnknownType (graph.GetType ()))
-                               throw new SerializationException (String.Format ("Type '{0}' is unexpected. The type should either be registered as a known type, or DataContractResolver should be used.", graph.GetType ()));
+                       QName collectionQName;
+                       if (KnownTypeCollection.IsInterchangeableCollectionType (type, graphType, out collectionQName)) {
+                               graphType = type;
+                               rootQName = collectionQName;
+                       } else if (graphType != type && rootQName == null && IsUnknownType (type, graphType))
+                               throw new SerializationException (String.Format ("Type '{0}' is unexpected. The type should either be registered as a known type, or DataContractResolver should be used.", graphType));
 
                        QName instName = rootQName;
                        rootQName = rootQName ?? known_types.GetQName (rootType);
-                       QName graph_qname = known_types.GetQName (graph.GetType ());
+                       QName graph_qname = known_types.GetQName (graphType);
 
-                       known_types.Add (graph.GetType ());
+                       known_types.Add (graphType);
 
                        if (names_filled)
                                writer.WriteStartElement (root_name.Value, root_ns.Value);
@@ -491,7 +494,7 @@ namespace System.Runtime.Serialization
                        /* Different names */
                        known_types.Add (rootType);
 
-                       instName = instName ?? KnownTypeCollection.GetPredefinedTypeName (graph.GetType ());
+                       instName = instName ?? KnownTypeCollection.GetPredefinedTypeName (graphType);
                        if (instName == QName.Empty)
                                /* Not a primitive type */
                                instName = graph_qname;
@@ -507,6 +510,16 @@ namespace System.Runtime.Serialization
 */
                }
 
+               bool IsUnknownType (Type contractType, Type type)
+               {
+                       if (type.IsArray) {
+                               if (KnownTypeCollection.GetAttribute<CollectionDataContractAttribute> (contractType) != null ||
+                                   KnownTypeCollection.GetAttribute<DataContractAttribute> (contractType) != null)
+                                       return true;
+                       }
+                       return IsUnknownType (type);
+               }
+
                bool IsUnknownType (Type type)
                {
                        if (known_types.Contains (type) ||
index 946e5aa5af5e7c1c9ebb9b553d69bfd79152ff83..8db9136f7002c8db5e1911eec31952ed9662804c 100755 (executable)
@@ -89,6 +89,20 @@ namespace System.Runtime.Serialization
                        foreach (var t in type.GetInterfaces ())
                                yield return t;
                }
+
+               public static bool ImplementsInterface (this Type type, Type iface)
+               {
+                       foreach (var t in type.GetInterfacesOrSelfInterface ()) {
+                               if (t == iface)
+                                       return true;
+                       }
+
+                       var baseType = type.BaseType;
+                       if (baseType != null)
+                               return baseType.ImplementsInterface (iface);
+                       
+                       return false;
+               }
        }
 
        internal sealed class KnownTypeCollection : Collection<Type>
@@ -571,8 +585,10 @@ namespace System.Runtime.Serialization
                                return qname;
 
                        Type element = GetCollectionElementType (type);
-                       if (element != null)
-                               return GetCollectionQName (element);
+                       if (element != null) {
+                               if (type.IsInterface || IsCustomCollectionType (type, element))
+                                       return GetCollectionQName (element);
+                       }
 
                        if (GetAttribute<SerializableAttribute> (type) != null)
                                return GetSerializableQName (type);
@@ -775,7 +791,7 @@ namespace System.Runtime.Serialization
                                if (i.IsGenericType && i.GetGenericTypeDefinition ().Equals (typeof (IEnumerable<>)))
                                        return i.GetGenericArguments () [0];
                        foreach (Type i in ifaces)
-                               if (i == typeof (IList))
+                               if (i == typeof (IEnumerable))
                                        return typeof (object);
                        return null;
                }
@@ -794,7 +810,9 @@ namespace System.Runtime.Serialization
 
                        Type element = GetCollectionElementType (type);
                        if (element == null)
-                               throw new InvalidOperationException (String.Format ("Type '{0}' is marked as collection contract, but it is not a collection", type));
+                               throw new InvalidDataContractException (String.Format ("Type '{0}' is marked as collection contract, but it is not a collection", type));
+                       if (type.GetMethod ("Add", new Type[] { element }) == null)
+                               throw new InvalidDataContractException (String.Format ("Type '{0}' is marked as collection contract, but missing a public \"Add\" method", type));
 
                        TryRegister (element); // must be registered before the name conflict check.
 
@@ -820,6 +838,17 @@ namespace System.Runtime.Serialization
 
                        TryRegister (element);
 
+                       /*
+                        * To qualify as a custom collection type, a type must have
+                        * a public parameterless constructor and an "Add" method
+                        * with the correct parameter type in addition to implementing
+                        * one of the collection interfaces.
+                        * 
+                        */
+
+                       if (!type.IsArray && type.IsClass && !IsCustomCollectionType (type, element))
+                               return null;
+
                        QName qname = GetCollectionQName (element);
 
                        var map = FindUserMap (qname, element);
@@ -836,6 +865,86 @@ namespace System.Runtime.Serialization
                        return ret;
                }
 
+               static bool IsCustomCollectionType (Type type, Type elementType)
+               {
+                       if (!type.IsClass)
+                               return false;
+                       if (type.GetConstructor (new Type [0]) == null)
+                               return false;
+                       if (type.GetMethod ("Add", new Type[] { elementType }) == null)
+                               return false;
+
+                       return true;
+               }
+
+               internal static bool IsInterchangeableCollectionType (Type contractType, Type graphType,
+                                                                     out QName collectionQName)
+               {
+                       collectionQName = null;
+                       if (GetAttribute<CollectionDataContractAttribute> (contractType) != null)
+                               return false;
+
+                       var type = contractType;
+                       if (type.IsGenericType)
+                               type = type.GetGenericTypeDefinition ();
+
+                       var elementType = GetCollectionElementType (contractType);
+                       if (elementType == null)
+                               return false;
+                       
+                       if (contractType.IsArray) {
+                               if (!graphType.IsArray || !elementType.Equals (graphType.GetElementType ()))
+                                       throw new InvalidCastException (String.Format ("Type '{0}' cannot be converted into '{1}'.", graphType.GetElementType (), elementType));
+                       } else if (!contractType.IsInterface) {
+                               if (GetAttribute<SerializableAttribute> (contractType) == null)
+                                       return false;
+
+                               var graphElementType = GetCollectionElementType (graphType);
+                               if (elementType != graphElementType)
+                                       return false;
+
+                               if (!IsCustomCollectionType (contractType, elementType))
+                                       return false;
+                       } else if (type.Equals (typeof (IEnumerable)) || type.Equals (typeof (IList)) ||
+                                  type.Equals (typeof (ICollection))) {
+                               if (!graphType.ImplementsInterface (contractType))
+                                       return false;
+                       } else if (type.Equals (typeof (IEnumerable<>)) || type.Equals (typeof (IList<>)) ||
+                                  type.Equals (typeof (ICollection<>))) {
+                               var graphElementType = GetCollectionElementType (graphType);
+                               if (graphElementType != elementType)
+                                       throw new InvalidCastException (String.Format (
+                                               "Cannot convert type '{0}' into '{1}'.", graphType, contractType));
+
+                               if (!graphType.ImplementsInterface (contractType))
+                                       return false;
+                       } else {
+                               return false;
+                       }
+
+                       collectionQName = GetCollectionQName (elementType);
+                       return true;
+               }
+
+               static bool ImplementsInterface (Type type, Type iface)
+               {
+                       foreach (var i in type.GetInterfacesOrSelfInterface ())
+                               if (iface == i)
+                                       return true;
+                                       
+                       return false;
+               }
+
+
+               static bool TypeImplementsIEnumerable (Type type)
+               {
+                       foreach (var iface in type.GetInterfacesOrSelfInterface ())
+                               if (iface == typeof (IEnumerable) || (iface.IsGenericType && iface.GetGenericTypeDefinition () == typeof (IEnumerable<>)))
+                                       return true;
+                       
+                       return false;
+               }
+
                static bool TypeImplementsIDictionary (Type type)
                {
                        foreach (var iface in type.GetInterfacesOrSelfInterface ())
index 18f0bf1f906b24024faf8da57b5a53d332655a5b..90d2a0fc43f977d07f10757bf4265bb115d224f7 100644 (file)
@@ -1,10 +1,12 @@
 //
 // XsdDataContractImporter.cs
 //
-// Author:
+// Authors:
 //     Atsushi Enomoto <atsushi@ximian.com>
+//      Martin Baulig <martin.baulig@xamarin.com>
 //
 // Copyright (C) 2010 Novell, Inc.  http://www.novell.com
+//               2012 Xamarin, Inc.
 //
 // Permission is hereby granted, free of charge, to any person obtaining
 // a copy of this software and associated documentation files (the
@@ -29,6 +31,7 @@
 using System;
 using System.CodeDom;
 using System.CodeDom.Compiler;
+using System.Collections;
 using System.Collections.Generic;
 using System.IO;
 using System.Linq;
@@ -458,6 +461,11 @@ namespace System.Runtime.Serialization
                                return qn;
                        }
 
+                       if (element.ElementSchemaType != null) {
+                               if (IsCollectionType (element.ElementSchemaType))
+                                       elname = element.ElementSchemaType.QualifiedName;
+                       }
+
                        // FIXME: use element to fill nillable and arrays.
                        var qname =
                                elname != null && !elname.Equals (QName.Empty) ? elname :
@@ -656,6 +664,43 @@ namespace System.Runtime.Serialization
                        }
                }
 
+               // Returns false if it should remove the imported type.
+               bool IsCollectionType (XmlSchemaType type)
+               {
+                       var complex = type as XmlSchemaComplexType;
+                       if (complex == null)
+                               return false;
+
+                       var seq = complex.Particle as XmlSchemaSequence;
+                       if (seq == null)
+                               return false;
+
+                       if (seq.Items.Count == 1 && seq.Items [0] is XmlSchemaAny && complex.Parent is XmlSchemaElement)
+                               return false;
+
+                       if (type.Annotation != null) {
+                               foreach (var ann in type.Annotation.Items) {
+                                       var ai = ann as XmlSchemaAppInfo;
+                                       if (ai != null && ai.Markup != null &&
+                                           ai.Markup.Length > 0 &&
+                                           ai.Markup [0].NodeType == XmlNodeType.Element &&
+                                           ai.Markup [0].LocalName == "IsDictionary" &&
+                                           ai.Markup [0].NamespaceURI == KnownTypeCollection.MSSimpleNamespace)
+                                               return true;
+                               }
+                       }
+                                       
+                       if (seq.Items.Count != 1)
+                               return false;
+
+                       var pt = (XmlSchemaParticle) seq.Items [0];
+                       var xe = pt as XmlSchemaElement;
+                       if (pt.MaxOccursString != "unbounded")
+                               return false;
+
+                       return !(pt is XmlSchemaAny);
+               }
+
                // Returns false if it should remove the imported type.
                bool ImportComplexType (CodeTypeDeclaration td, XmlSchemaSet schemas, XmlSchemaComplexType type, XmlQualifiedName qname)
                {
@@ -721,6 +766,33 @@ namespace System.Runtime.Serialization
                                }
                        }
 
+                       /*
+                        * Collection Type Support:
+                        * 
+                        * We need to distinguish between normal array/dictionary collections and
+                        * custom collection types which use [CollectionDataContract].
+                        * 
+                        * The name of a normal collection type starts with "ArrayOf" and uses the
+                        * element type's namespace.  We use the collection type directly and don't
+                        * generate a proxy class for these.
+                        * 
+                        * The collection type (and the base class or a custom collection's proxy type)
+                        * is dermined by 'ImportOptions.ReferencedCollectionTypes'.  The default is to
+                        * use an array for list collections and Dictionary<,> for dictionaries.
+                        * 
+                        * Note that my implementation currently only checks for generic type definitions
+                        * in the 'ImportOptions.ReferencedCollectionTypes' - it looks for something that
+                        * implements IEnumerable<T> or IDictionary<K,V>.  This is not complete, but it's
+                        * all that's necessary to support different collection types in a GUI.
+                        * 
+                        * Simply use
+                        *     var options = new ImportOptions ();
+                        *     options.ReferencedCollectionTypes.Add (typeof (LinkedList<>));
+                        *     options.ReferencedCollectionTypes.Add (typeof (SortedList<,>));
+                        * to configure these; see XsdDataContractImportTest2.cs for some examples.
+                        * 
+                        */
+
                        if (seq.Items.Count == 1) {
                                var pt = (XmlSchemaParticle) seq.Items [0];
                                var xe = pt as XmlSchemaElement;
@@ -734,24 +806,9 @@ namespace System.Runtime.Serialization
                                                var v = seq2 != null && seq2.Items.Count == 2 ? seq2.Items [1] as XmlSchemaElement : null;
                                                if (k == null || v == null)
                                                        throw new InvalidDataContractException (String.Format ("Invalid Dictionary contract type '{0}'. A Dictionary schema type must have a sequence particle which contains exactly two schema elements for key and value.", type.QualifiedName));
-                                               Import (schemas, k.ElementSchemaType);
-                                               Import (schemas, v.ElementSchemaType);
-                                               td.BaseTypes.Add (new CodeTypeReference ("System.Collections.Generic.Dictionary", GetCodeTypeReference (k.ElementSchemaType.QualifiedName), GetCodeTypeReference (v.ElementSchemaType.QualifiedName)));
-                                               AddTypeAttributes (td, type, xe, k, v);
-                                               return true;
-                                       } else if (type.QualifiedName.Namespace == KnownTypeCollection.MSArraysNamespace &&
-                                                  IsPredefinedType (xe.ElementSchemaType.QualifiedName)) {
-                                               // then this CodeTypeDeclaration is to be removed, and CodeTypeReference to this type should be an array instead.
-                                               var cti = imported_types.First (i => i.XsdType == type);
-                                               cti.ClrType = new CodeTypeReference (GetCodeTypeReference (xe.ElementSchemaType.QualifiedName), 1);
-                                       
-                                               return false;
+                                               return ImportCollectionType (td, schemas, type, k, v);
                                        }
-                                       else
-                                               Import (schemas, xe.ElementSchemaType);
-                                       td.BaseTypes.Add (new CodeTypeReference ("System.Collections.Generic.List", GetCodeTypeReference (xe.ElementSchemaType.QualifiedName)));
-                                       AddTypeAttributes (td, type, xe);
-                                       return true;
+                                       return ImportCollectionType (td, schemas, type, xe);
                                }
                        }
                        if (isDictionary)
@@ -783,6 +840,92 @@ namespace System.Runtime.Serialization
                        return true;
                }
 
+               bool ImportCollectionType (CodeTypeDeclaration td, XmlSchemaSet schemas,
+                                          XmlSchemaComplexType type,
+                                          XmlSchemaElement key, XmlSchemaElement value)
+               {
+                       Import (schemas, key.ElementSchemaType);
+                       Import (schemas, value.ElementSchemaType);
+                       var keyType = GetCodeTypeReference (key.ElementSchemaType.QualifiedName);
+                       var valueType = GetCodeTypeReference (value.ElementSchemaType.QualifiedName);
+
+                       var collectionType = GetDictionaryCollectionType ();
+                       var baseTypeName = collectionType != null ?
+                               collectionType.FullName : "System.Collections.Generic.Dictionary";
+
+                       if (type.QualifiedName.Name.StartsWith ("ArrayOf")) {
+                               // Standard collection, use the collection type instead of
+                               // creating a proxy class.
+                               var cti = imported_types.First (i => i.XsdType == type);
+                               cti.ClrType = new CodeTypeReference (baseTypeName, keyType, valueType);
+                               return false;
+                       }
+
+                       td.BaseTypes.Add (new CodeTypeReference (baseTypeName, keyType, valueType));
+                       AddTypeAttributes (td, type, key);
+                       AddTypeAttributes (td, type, value);
+                       return true;
+               }
+
+               bool ImportCollectionType (CodeTypeDeclaration td, XmlSchemaSet schemas,
+                                          XmlSchemaComplexType type, XmlSchemaElement xe)
+               {
+                       Import (schemas, xe.ElementSchemaType);
+                       var element = GetCodeTypeReference (xe.ElementSchemaType.QualifiedName);
+
+                       var collectionType = GetListCollectionType ();
+
+                       if (type.QualifiedName.Name.StartsWith ("ArrayOf")) {
+                               // Standard collection, use the collection type instead of
+                               // creating a proxy class.
+                               var cti = imported_types.First (i => i.XsdType == type);
+                               if (collectionType != null)
+                                       cti.ClrType = new CodeTypeReference (collectionType.FullName, element);
+                               else
+                                       cti.ClrType = new CodeTypeReference (element, 1);
+                               return false;
+                       }
+
+                       var baseTypeName = collectionType != null ?
+                               collectionType.FullName : "System.Collections.Generic.List";
+
+                       td.BaseTypes.Add (new CodeTypeReference (baseTypeName, element));
+                       AddTypeAttributes (td, type, xe);
+                       return true;
+               }
+
+               bool ImplementsInterface (Type type, Type iface)
+               {
+                       foreach (var i in type.GetInterfaces ()) {
+                               if (i.Equals (iface))
+                                       return true;
+                               if (i.IsGenericType && i.GetGenericTypeDefinition ().Equals (iface))
+                                       return true;
+                       }
+
+                       return false;
+               }
+
+               Type GetListCollectionType ()
+               {
+                       if (import_options == null)
+                               return null;
+                       var listTypes = import_options.ReferencedCollectionTypes.Where (
+                               t => t.IsGenericTypeDefinition && t.GetGenericArguments ().Length == 1 &&
+                               ImplementsInterface (t, typeof (IEnumerable<>)));
+                       return listTypes.FirstOrDefault ();
+               }
+
+               Type GetDictionaryCollectionType ()
+               {
+                       if (import_options == null)
+                               return null;
+                       var dictTypes = import_options.ReferencedCollectionTypes.Where (
+                               t => t.IsGenericTypeDefinition && t.GetGenericArguments ().Length == 2 &&
+                               ImplementsInterface (t, typeof (IDictionary<,>)));
+                       return dictTypes.FirstOrDefault ();
+               }
+
                static readonly CodeExpression this_expr = new CodeThisReferenceExpression ();
                static readonly CodeExpression arg_value_expr = new CodePropertySetValueReferenceExpression ();
 
@@ -868,7 +1011,8 @@ namespace System.Runtime.Serialization
 
                TypeImportInfo GetTypeInfo (XmlQualifiedName typeName, bool throwError)
                {
-                       var info = imported_types.FirstOrDefault (i => i.XsdTypeName.Equals (typeName));
+                       var info = imported_types.FirstOrDefault (
+                               i => i.XsdTypeName.Equals (typeName) || i.XsdType.QualifiedName.Equals (typeName));
                        if (info == null) {
                                if (throwError)
                                        throw new InvalidOperationException (String.Format ("schema type '{0}' has not been imported yet. Import it first.", typeName));
index 6d3f3746026bb1d9a79f14589725b54c7f9afe9d..aa860040ea37f40861adb0f20c5fbf723d2c9467 100644 (file)
@@ -11,6 +11,10 @@ System.Runtime.Serialization/KnownTypeAttributeTest.cs
 System.Runtime.Serialization/XmlObjectSerializerTest.cs
 System.Runtime.Serialization/XsdDataContractExporterTest.cs
 System.Runtime.Serialization/XsdDataContractImporterTest.cs
+System.Runtime.Serialization/CollectionSerialization.cs
+System.Runtime.Serialization/WsdlHelper.cs
+System.Runtime.Serialization/XsdDataContractImporterTest2.cs
+System.Runtime.Serialization/XsdDataContractExporterTest2.cs
 System.Xml/UniqueIdTest.cs
 System.Xml/XmlBinaryDictionaryReaderTest.cs
 System.Xml/XmlBinaryDictionaryWriterTest.cs
diff --git a/mcs/class/System.Runtime.Serialization/Test/Resources/WSDL/collections.wsdl b/mcs/class/System.Runtime.Serialization/Test/Resources/WSDL/collections.wsdl
new file mode 100644 (file)
index 0000000..8acd549
--- /dev/null
@@ -0,0 +1,236 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<wsdl:definitions name="MyService" targetNamespace="http://tempuri.org/" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:wsam="http://www.w3.org/2007/05/addressing/metadata" xmlns:wsx="http://schemas.xmlsoap.org/ws/2004/09/mex" xmlns:wsap="http://schemas.xmlsoap.org/ws/2004/08/addressing/policy" xmlns:msc="http://schemas.microsoft.com/ws/2005/12/wsdl/contract" xmlns:wsp="http://schemas.xmlsoap.org/ws/2004/09/policy" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:tns="http://tempuri.org/" xmlns:wsa10="http://www.w3.org/2005/08/addressing" xmlns:wsaw="http://www.w3.org/2006/05/addressing/wsdl" xmlns:wsa="http://schemas.xmlsoap.org/ws/2004/08/addressing">\r
+  <wsdl:types>\r
+    <xs:schema elementFormDefault="qualified" targetNamespace="http://tempuri.org/" xmlns:xs="http://www.w3.org/2001/XMLSchema">\r
+      <xs:import namespace="http://schemas.microsoft.com/2003/10/Serialization/Arrays" />\r
+      <xs:import namespace="http://schemas.datacontract.org/2004/07/TestWCF.Model" />\r
+      <xs:element name="GetSimpleList">\r
+        <xs:complexType>\r
+          <xs:sequence />\r
+        </xs:complexType>\r
+      </xs:element>\r
+      <xs:element name="GetSimpleListResponse">\r
+        <xs:complexType>\r
+          <xs:sequence>\r
+            <xs:element minOccurs="0" name="GetSimpleListResult" nillable="true" type="q1:ArrayOfint" xmlns:q1="http://schemas.microsoft.com/2003/10/Serialization/Arrays" />\r
+          </xs:sequence>\r
+        </xs:complexType>\r
+      </xs:element>\r
+      <xs:element name="GetListOfStringArray">\r
+        <xs:complexType>\r
+          <xs:sequence />\r
+        </xs:complexType>\r
+      </xs:element>\r
+      <xs:element name="GetListOfStringArrayResponse">\r
+        <xs:complexType>\r
+          <xs:sequence>\r
+            <xs:element minOccurs="0" name="GetListOfStringArrayResult" nillable="true" type="q2:ArrayOfArrayOfstring" xmlns:q2="http://schemas.microsoft.com/2003/10/Serialization/Arrays" />\r
+          </xs:sequence>\r
+        </xs:complexType>\r
+      </xs:element>\r
+      <xs:element name="GetListOfFoo">\r
+        <xs:complexType>\r
+          <xs:sequence />\r
+        </xs:complexType>\r
+      </xs:element>\r
+      <xs:element name="GetListOfFooResponse">\r
+        <xs:complexType>\r
+          <xs:sequence>\r
+            <xs:element minOccurs="0" name="GetListOfFooResult" nillable="true" type="q3:ArrayOfFoo" xmlns:q3="http://schemas.datacontract.org/2004/07/TestWCF.Model" />\r
+          </xs:sequence>\r
+        </xs:complexType>\r
+      </xs:element>\r
+      <xs:element name="GetSimpleDictionary">\r
+        <xs:complexType>\r
+          <xs:sequence />\r
+        </xs:complexType>\r
+      </xs:element>\r
+      <xs:element name="GetSimpleDictionaryResponse">\r
+        <xs:complexType>\r
+          <xs:sequence>\r
+            <xs:element minOccurs="0" name="GetSimpleDictionaryResult" nillable="true" type="q4:ArrayOfKeyValueOfintstring" xmlns:q4="http://schemas.microsoft.com/2003/10/Serialization/Arrays" />\r
+          </xs:sequence>\r
+        </xs:complexType>\r
+      </xs:element>\r
+    </xs:schema>\r
+    <xs:schema attributeFormDefault="qualified" elementFormDefault="qualified" targetNamespace="http://schemas.microsoft.com/2003/10/Serialization/" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:tns="http://schemas.microsoft.com/2003/10/Serialization/">\r
+      <xs:element name="anyType" nillable="true" type="xs:anyType" />\r
+      <xs:element name="anyURI" nillable="true" type="xs:anyURI" />\r
+      <xs:element name="base64Binary" nillable="true" type="xs:base64Binary" />\r
+      <xs:element name="boolean" nillable="true" type="xs:boolean" />\r
+      <xs:element name="byte" nillable="true" type="xs:byte" />\r
+      <xs:element name="dateTime" nillable="true" type="xs:dateTime" />\r
+      <xs:element name="decimal" nillable="true" type="xs:decimal" />\r
+      <xs:element name="double" nillable="true" type="xs:double" />\r
+      <xs:element name="float" nillable="true" type="xs:float" />\r
+      <xs:element name="int" nillable="true" type="xs:int" />\r
+      <xs:element name="long" nillable="true" type="xs:long" />\r
+      <xs:element name="QName" nillable="true" type="xs:QName" />\r
+      <xs:element name="short" nillable="true" type="xs:short" />\r
+      <xs:element name="string" nillable="true" type="xs:string" />\r
+      <xs:element name="unsignedByte" nillable="true" type="xs:unsignedByte" />\r
+      <xs:element name="unsignedInt" nillable="true" type="xs:unsignedInt" />\r
+      <xs:element name="unsignedLong" nillable="true" type="xs:unsignedLong" />\r
+      <xs:element name="unsignedShort" nillable="true" type="xs:unsignedShort" />\r
+      <xs:element name="char" nillable="true" type="tns:char" />\r
+      <xs:simpleType name="char">\r
+        <xs:restriction base="xs:int" />\r
+      </xs:simpleType>\r
+      <xs:element name="duration" nillable="true" type="tns:duration" />\r
+      <xs:simpleType name="duration">\r
+        <xs:restriction base="xs:duration">\r
+          <xs:pattern value="\-?P(\d*D)?(T(\d*H)?(\d*M)?(\d*(\.\d*)?S)?)?" />\r
+          <xs:minInclusive value="-P10675199DT2H48M5.4775808S" />\r
+          <xs:maxInclusive value="P10675199DT2H48M5.4775807S" />\r
+        </xs:restriction>\r
+      </xs:simpleType>\r
+      <xs:element name="guid" nillable="true" type="tns:guid" />\r
+      <xs:simpleType name="guid">\r
+        <xs:restriction base="xs:string">\r
+          <xs:pattern value="[\da-fA-F]{8}-[\da-fA-F]{4}-[\da-fA-F]{4}-[\da-fA-F]{4}-[\da-fA-F]{12}" />\r
+        </xs:restriction>\r
+      </xs:simpleType>\r
+      <xs:attribute name="FactoryType" type="xs:QName" />\r
+      <xs:attribute name="Id" type="xs:ID" />\r
+      <xs:attribute name="Ref" type="xs:IDREF" />\r
+    </xs:schema>\r
+    <xs:schema elementFormDefault="qualified" targetNamespace="http://schemas.microsoft.com/2003/10/Serialization/Arrays" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:tns="http://schemas.microsoft.com/2003/10/Serialization/Arrays">\r
+      <xs:complexType name="ArrayOfint">\r
+        <xs:sequence>\r
+          <xs:element minOccurs="0" maxOccurs="unbounded" name="int" type="xs:int" />\r
+        </xs:sequence>\r
+      </xs:complexType>\r
+      <xs:element name="ArrayOfint" nillable="true" type="tns:ArrayOfint" />\r
+      <xs:complexType name="ArrayOfArrayOfstring">\r
+        <xs:sequence>\r
+          <xs:element minOccurs="0" maxOccurs="unbounded" name="ArrayOfstring" nillable="true" type="tns:ArrayOfstring" />\r
+        </xs:sequence>\r
+      </xs:complexType>\r
+      <xs:element name="ArrayOfArrayOfstring" nillable="true" type="tns:ArrayOfArrayOfstring" />\r
+      <xs:complexType name="ArrayOfstring">\r
+        <xs:sequence>\r
+          <xs:element minOccurs="0" maxOccurs="unbounded" name="string" nillable="true" type="xs:string" />\r
+        </xs:sequence>\r
+      </xs:complexType>\r
+      <xs:element name="ArrayOfstring" nillable="true" type="tns:ArrayOfstring" />\r
+      <xs:complexType name="ArrayOfKeyValueOfintstring">\r
+        <xs:annotation>\r
+          <xs:appinfo>\r
+            <IsDictionary xmlns="http://schemas.microsoft.com/2003/10/Serialization/">true</IsDictionary>\r
+          </xs:appinfo>\r
+        </xs:annotation>\r
+        <xs:sequence>\r
+          <xs:element minOccurs="0" maxOccurs="unbounded" name="KeyValueOfintstring">\r
+            <xs:complexType>\r
+              <xs:sequence>\r
+                <xs:element name="Key" type="xs:int" />\r
+                <xs:element name="Value" nillable="true" type="xs:string" />\r
+              </xs:sequence>\r
+            </xs:complexType>\r
+          </xs:element>\r
+        </xs:sequence>\r
+      </xs:complexType>\r
+      <xs:element name="ArrayOfKeyValueOfintstring" nillable="true" type="tns:ArrayOfKeyValueOfintstring" />\r
+    </xs:schema>\r
+    <xs:schema elementFormDefault="qualified" targetNamespace="http://schemas.datacontract.org/2004/07/TestWCF.Model" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:tns="http://schemas.datacontract.org/2004/07/TestWCF.Model">\r
+      <xs:complexType name="ArrayOfFoo">\r
+        <xs:sequence>\r
+          <xs:element minOccurs="0" maxOccurs="unbounded" name="Foo" nillable="true" type="tns:Foo" />\r
+        </xs:sequence>\r
+      </xs:complexType>\r
+      <xs:element name="ArrayOfFoo" nillable="true" type="tns:ArrayOfFoo" />\r
+      <xs:complexType name="Foo">\r
+        <xs:sequence>\r
+          <xs:element minOccurs="0" name="Text" nillable="true" type="xs:string" />\r
+        </xs:sequence>\r
+      </xs:complexType>\r
+      <xs:element name="Foo" nillable="true" type="tns:Foo" />\r
+    </xs:schema>\r
+  </wsdl:types>\r
+  <wsdl:message name="IMyService_GetSimpleList_InputMessage">\r
+    <wsdl:part name="parameters" element="tns:GetSimpleList" />\r
+  </wsdl:message>\r
+  <wsdl:message name="IMyService_GetSimpleList_OutputMessage">\r
+    <wsdl:part name="parameters" element="tns:GetSimpleListResponse" />\r
+  </wsdl:message>\r
+  <wsdl:message name="IMyService_GetListOfStringArray_InputMessage">\r
+    <wsdl:part name="parameters" element="tns:GetListOfStringArray" />\r
+  </wsdl:message>\r
+  <wsdl:message name="IMyService_GetListOfStringArray_OutputMessage">\r
+    <wsdl:part name="parameters" element="tns:GetListOfStringArrayResponse" />\r
+  </wsdl:message>\r
+  <wsdl:message name="IMyService_GetListOfFoo_InputMessage">\r
+    <wsdl:part name="parameters" element="tns:GetListOfFoo" />\r
+  </wsdl:message>\r
+  <wsdl:message name="IMyService_GetListOfFoo_OutputMessage">\r
+    <wsdl:part name="parameters" element="tns:GetListOfFooResponse" />\r
+  </wsdl:message>\r
+  <wsdl:message name="IMyService_GetSimpleDictionary_InputMessage">\r
+    <wsdl:part name="parameters" element="tns:GetSimpleDictionary" />\r
+  </wsdl:message>\r
+  <wsdl:message name="IMyService_GetSimpleDictionary_OutputMessage">\r
+    <wsdl:part name="parameters" element="tns:GetSimpleDictionaryResponse" />\r
+  </wsdl:message>\r
+  <wsdl:portType name="IMyService">\r
+    <wsdl:operation name="GetSimpleList">\r
+      <wsdl:input wsaw:Action="http://tempuri.org/IMyService/GetSimpleList" message="tns:IMyService_GetSimpleList_InputMessage" />\r
+      <wsdl:output wsaw:Action="http://tempuri.org/IMyService/GetSimpleListResponse" message="tns:IMyService_GetSimpleList_OutputMessage" />\r
+    </wsdl:operation>\r
+    <wsdl:operation name="GetListOfStringArray">\r
+      <wsdl:input wsaw:Action="http://tempuri.org/IMyService/GetListOfStringArray" message="tns:IMyService_GetListOfStringArray_InputMessage" />\r
+      <wsdl:output wsaw:Action="http://tempuri.org/IMyService/GetListOfStringArrayResponse" message="tns:IMyService_GetListOfStringArray_OutputMessage" />\r
+    </wsdl:operation>\r
+    <wsdl:operation name="GetListOfFoo">\r
+      <wsdl:input wsaw:Action="http://tempuri.org/IMyService/GetListOfFoo" message="tns:IMyService_GetListOfFoo_InputMessage" />\r
+      <wsdl:output wsaw:Action="http://tempuri.org/IMyService/GetListOfFooResponse" message="tns:IMyService_GetListOfFoo_OutputMessage" />\r
+    </wsdl:operation>\r
+    <wsdl:operation name="GetSimpleDictionary">\r
+      <wsdl:input wsaw:Action="http://tempuri.org/IMyService/GetSimpleDictionary" message="tns:IMyService_GetSimpleDictionary_InputMessage" />\r
+      <wsdl:output wsaw:Action="http://tempuri.org/IMyService/GetSimpleDictionaryResponse" message="tns:IMyService_GetSimpleDictionary_OutputMessage" />\r
+    </wsdl:operation>\r
+  </wsdl:portType>\r
+  <wsdl:binding name="defaultEndpoint" type="tns:IMyService">\r
+    <soap:binding transport="http://schemas.xmlsoap.org/soap/http" />\r
+    <wsdl:operation name="GetSimpleList">\r
+      <soap:operation soapAction="http://tempuri.org/IMyService/GetSimpleList" style="document" />\r
+      <wsdl:input>\r
+        <soap:body use="literal" />\r
+      </wsdl:input>\r
+      <wsdl:output>\r
+        <soap:body use="literal" />\r
+      </wsdl:output>\r
+    </wsdl:operation>\r
+    <wsdl:operation name="GetListOfStringArray">\r
+      <soap:operation soapAction="http://tempuri.org/IMyService/GetListOfStringArray" style="document" />\r
+      <wsdl:input>\r
+        <soap:body use="literal" />\r
+      </wsdl:input>\r
+      <wsdl:output>\r
+        <soap:body use="literal" />\r
+      </wsdl:output>\r
+    </wsdl:operation>\r
+    <wsdl:operation name="GetListOfFoo">\r
+      <soap:operation soapAction="http://tempuri.org/IMyService/GetListOfFoo" style="document" />\r
+      <wsdl:input>\r
+        <soap:body use="literal" />\r
+      </wsdl:input>\r
+      <wsdl:output>\r
+        <soap:body use="literal" />\r
+      </wsdl:output>\r
+    </wsdl:operation>\r
+    <wsdl:operation name="GetSimpleDictionary">\r
+      <soap:operation soapAction="http://tempuri.org/IMyService/GetSimpleDictionary" style="document" />\r
+      <wsdl:input>\r
+        <soap:body use="literal" />\r
+      </wsdl:input>\r
+      <wsdl:output>\r
+        <soap:body use="literal" />\r
+      </wsdl:output>\r
+    </wsdl:operation>\r
+  </wsdl:binding>\r
+  <wsdl:service name="MyService">\r
+    <wsdl:port name="defaultEndpoint" binding="tns:defaultEndpoint">\r
+      <soap:address location="http://provcon-faust/TestWCF/MyService.svc" />\r
+    </wsdl:port>\r
+  </wsdl:service>\r
+</wsdl:definitions>
diff --git a/mcs/class/System.Runtime.Serialization/Test/Resources/WSDL/custom-collections.wsdl b/mcs/class/System.Runtime.Serialization/Test/Resources/WSDL/custom-collections.wsdl
new file mode 100644 (file)
index 0000000..f1f7e43
--- /dev/null
@@ -0,0 +1,142 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<wsdl:definitions name="MyService" targetNamespace="http://tempuri.org/" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:wsam="http://www.w3.org/2007/05/addressing/metadata" xmlns:wsx="http://schemas.xmlsoap.org/ws/2004/09/mex" xmlns:wsap="http://schemas.xmlsoap.org/ws/2004/08/addressing/policy" xmlns:msc="http://schemas.microsoft.com/ws/2005/12/wsdl/contract" xmlns:wsp="http://schemas.xmlsoap.org/ws/2004/09/policy" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:tns="http://tempuri.org/" xmlns:wsa10="http://www.w3.org/2005/08/addressing" xmlns:wsaw="http://www.w3.org/2006/05/addressing/wsdl" xmlns:wsa="http://schemas.xmlsoap.org/ws/2004/08/addressing">\r
+  <wsdl:types>\r
+    <xs:schema elementFormDefault="qualified" targetNamespace="http://tempuri.org/" xmlns:xs="http://www.w3.org/2001/XMLSchema">\r
+      <xs:import namespace="http://schemas.datacontract.org/2004/07/TestWCF.Model" />\r
+      <xs:element name="GetCustomCollection">\r
+        <xs:complexType>\r
+          <xs:sequence />\r
+        </xs:complexType>\r
+      </xs:element>\r
+      <xs:element name="GetCustomCollectionResponse">\r
+        <xs:complexType>\r
+          <xs:sequence>\r
+            <xs:element minOccurs="0" name="GetCustomCollectionResult" nillable="true" type="q1:MyCollection" xmlns:q1="http://schemas.datacontract.org/2004/07/TestWCF.Model" />\r
+          </xs:sequence>\r
+        </xs:complexType>\r
+      </xs:element>\r
+      <xs:element name="GetCustomCollection2">\r
+        <xs:complexType>\r
+          <xs:sequence />\r
+        </xs:complexType>\r
+      </xs:element>\r
+      <xs:element name="GetCustomCollection2Response">\r
+        <xs:complexType>\r
+          <xs:sequence>\r
+            <xs:element minOccurs="0" name="GetCustomCollection2Result" nillable="true" type="q2:MyCollectionOfdouble" xmlns:q2="http://schemas.datacontract.org/2004/07/TestWCF.Model" />\r
+          </xs:sequence>\r
+        </xs:complexType>\r
+      </xs:element>\r
+    </xs:schema>\r
+    <xs:schema attributeFormDefault="qualified" elementFormDefault="qualified" targetNamespace="http://schemas.microsoft.com/2003/10/Serialization/" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:tns="http://schemas.microsoft.com/2003/10/Serialization/">\r
+      <xs:element name="anyType" nillable="true" type="xs:anyType" />\r
+      <xs:element name="anyURI" nillable="true" type="xs:anyURI" />\r
+      <xs:element name="base64Binary" nillable="true" type="xs:base64Binary" />\r
+      <xs:element name="boolean" nillable="true" type="xs:boolean" />\r
+      <xs:element name="byte" nillable="true" type="xs:byte" />\r
+      <xs:element name="dateTime" nillable="true" type="xs:dateTime" />\r
+      <xs:element name="decimal" nillable="true" type="xs:decimal" />\r
+      <xs:element name="double" nillable="true" type="xs:double" />\r
+      <xs:element name="float" nillable="true" type="xs:float" />\r
+      <xs:element name="int" nillable="true" type="xs:int" />\r
+      <xs:element name="long" nillable="true" type="xs:long" />\r
+      <xs:element name="QName" nillable="true" type="xs:QName" />\r
+      <xs:element name="short" nillable="true" type="xs:short" />\r
+      <xs:element name="string" nillable="true" type="xs:string" />\r
+      <xs:element name="unsignedByte" nillable="true" type="xs:unsignedByte" />\r
+      <xs:element name="unsignedInt" nillable="true" type="xs:unsignedInt" />\r
+      <xs:element name="unsignedLong" nillable="true" type="xs:unsignedLong" />\r
+      <xs:element name="unsignedShort" nillable="true" type="xs:unsignedShort" />\r
+      <xs:element name="char" nillable="true" type="tns:char" />\r
+      <xs:simpleType name="char">\r
+        <xs:restriction base="xs:int" />\r
+      </xs:simpleType>\r
+      <xs:element name="duration" nillable="true" type="tns:duration" />\r
+      <xs:simpleType name="duration">\r
+        <xs:restriction base="xs:duration">\r
+          <xs:pattern value="\-?P(\d*D)?(T(\d*H)?(\d*M)?(\d*(\.\d*)?S)?)?" />\r
+          <xs:minInclusive value="-P10675199DT2H48M5.4775808S" />\r
+          <xs:maxInclusive value="P10675199DT2H48M5.4775807S" />\r
+        </xs:restriction>\r
+      </xs:simpleType>\r
+      <xs:element name="guid" nillable="true" type="tns:guid" />\r
+      <xs:simpleType name="guid">\r
+        <xs:restriction base="xs:string">\r
+          <xs:pattern value="[\da-fA-F]{8}-[\da-fA-F]{4}-[\da-fA-F]{4}-[\da-fA-F]{4}-[\da-fA-F]{12}" />\r
+        </xs:restriction>\r
+      </xs:simpleType>\r
+      <xs:attribute name="FactoryType" type="xs:QName" />\r
+      <xs:attribute name="Id" type="xs:ID" />\r
+      <xs:attribute name="Ref" type="xs:IDREF" />\r
+    </xs:schema>\r
+    <xs:schema elementFormDefault="qualified" targetNamespace="http://schemas.datacontract.org/2004/07/TestWCF.Model" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:tns="http://schemas.datacontract.org/2004/07/TestWCF.Model">\r
+      <xs:complexType name="MyCollection">\r
+        <xs:sequence>\r
+          <xs:element minOccurs="0" maxOccurs="unbounded" name="string" nillable="true" type="xs:string" />\r
+        </xs:sequence>\r
+      </xs:complexType>\r
+      <xs:element name="MyCollection" nillable="true" type="tns:MyCollection" />\r
+      <xs:complexType name="MyCollectionOfdouble">\r
+        <xs:annotation>\r
+          <xs:appinfo>\r
+            <GenericType Name="MyCollectionOf{0}" Namespace="http://schemas.datacontract.org/2004/07/TestWCF.Model" xmlns="http://schemas.microsoft.com/2003/10/Serialization/">\r
+              <GenericParameter Name="double" Namespace="http://www.w3.org/2001/XMLSchema" />\r
+            </GenericType>\r
+          </xs:appinfo>\r
+        </xs:annotation>\r
+        <xs:sequence>\r
+          <xs:element minOccurs="0" maxOccurs="unbounded" name="double" type="xs:double" />\r
+        </xs:sequence>\r
+      </xs:complexType>\r
+      <xs:element name="MyCollectionOfdouble" nillable="true" type="tns:MyCollectionOfdouble" />\r
+    </xs:schema>\r
+  </wsdl:types>\r
+  <wsdl:message name="IMyService_GetCustomCollection_InputMessage">\r
+    <wsdl:part name="parameters" element="tns:GetCustomCollection" />\r
+  </wsdl:message>\r
+  <wsdl:message name="IMyService_GetCustomCollection_OutputMessage">\r
+    <wsdl:part name="parameters" element="tns:GetCustomCollectionResponse" />\r
+  </wsdl:message>\r
+  <wsdl:message name="IMyService_GetCustomCollection2_InputMessage">\r
+    <wsdl:part name="parameters" element="tns:GetCustomCollection2" />\r
+  </wsdl:message>\r
+  <wsdl:message name="IMyService_GetCustomCollection2_OutputMessage">\r
+    <wsdl:part name="parameters" element="tns:GetCustomCollection2Response" />\r
+  </wsdl:message>\r
+  <wsdl:portType name="IMyService">\r
+    <wsdl:operation name="GetCustomCollection">\r
+      <wsdl:input wsaw:Action="http://tempuri.org/IMyService/GetCustomCollection" message="tns:IMyService_GetCustomCollection_InputMessage" />\r
+      <wsdl:output wsaw:Action="http://tempuri.org/IMyService/GetCustomCollectionResponse" message="tns:IMyService_GetCustomCollection_OutputMessage" />\r
+    </wsdl:operation>\r
+    <wsdl:operation name="GetCustomCollection2">\r
+      <wsdl:input wsaw:Action="http://tempuri.org/IMyService/GetCustomCollection2" message="tns:IMyService_GetCustomCollection2_InputMessage" />\r
+      <wsdl:output wsaw:Action="http://tempuri.org/IMyService/GetCustomCollection2Response" message="tns:IMyService_GetCustomCollection2_OutputMessage" />\r
+    </wsdl:operation>\r
+  </wsdl:portType>\r
+  <wsdl:binding name="defaultEndpoint" type="tns:IMyService">\r
+    <soap:binding transport="http://schemas.xmlsoap.org/soap/http" />\r
+    <wsdl:operation name="GetCustomCollection">\r
+      <soap:operation soapAction="http://tempuri.org/IMyService/GetCustomCollection" style="document" />\r
+      <wsdl:input>\r
+        <soap:body use="literal" />\r
+      </wsdl:input>\r
+      <wsdl:output>\r
+        <soap:body use="literal" />\r
+      </wsdl:output>\r
+    </wsdl:operation>\r
+    <wsdl:operation name="GetCustomCollection2">\r
+      <soap:operation soapAction="http://tempuri.org/IMyService/GetCustomCollection2" style="document" />\r
+      <wsdl:input>\r
+        <soap:body use="literal" />\r
+      </wsdl:input>\r
+      <wsdl:output>\r
+        <soap:body use="literal" />\r
+      </wsdl:output>\r
+    </wsdl:operation>\r
+  </wsdl:binding>\r
+  <wsdl:service name="MyService">\r
+    <wsdl:port name="defaultEndpoint" binding="tns:defaultEndpoint">\r
+      <soap:address location="http://provcon-faust/TestWCF/MyService.svc" />\r
+    </wsdl:port>\r
+  </wsdl:service>\r
+</wsdl:definitions>
diff --git a/mcs/class/System.Runtime.Serialization/Test/System.Runtime.Serialization/CollectionSerialization.cs b/mcs/class/System.Runtime.Serialization/Test/System.Runtime.Serialization/CollectionSerialization.cs
new file mode 100644 (file)
index 0000000..04637c3
--- /dev/null
@@ -0,0 +1,454 @@
+//
+// CollectionSerialization
+//
+// Authors:
+//      Martin Baulig (martin.baulig@xamarin.com)
+//
+// Copyright 2012 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.Linq;
+using System.Text;
+using System.Reflection;
+using System.Collections;
+using System.Collections.Generic;
+using System.Collections.ObjectModel;
+using System.Runtime.Serialization;
+using System.ServiceModel;
+using NUnit.Framework;
+using NUnit.Framework.Constraints;
+using NUnit.Framework.SyntaxHelpers;
+
+namespace MonoTests.System.Runtime.Serialization
+{
+       [TestFixture]
+       public class CollectionSerialization
+       {
+               [DataContract]
+               class Foo
+               {
+                       [DataMember]
+                       public int Hello;
+               }
+               
+               class MyList<T> : List<T>, IMyList<T>
+               {
+               }
+               
+               interface IMyList<T> : IList
+               {
+               }
+
+               [Serializable]
+               class CustomList<T> : IList<T>
+               {
+                       List<T> list;
+
+                       public CustomList (IList<T> elements)
+                       {
+                               list = new List<T> ();
+                               if (elements != null)
+                                       list.AddRange (elements);
+                       }
+
+                       #region IList implementation
+                       public int IndexOf (T item)
+                       {
+                               return list.IndexOf (item);
+                       }
+                       public void Insert (int index, T item)
+                       {
+                               list.Insert (index, item);
+                       }
+                       public void RemoveAt (int index)
+                       {
+                               list.RemoveAt (index);
+                       }
+                       public T this [int index] {
+                               get {
+                                       return list [index];
+                               }
+                               set {
+                                       list [index] = value;
+                               }
+                       }
+                       #endregion
+                       #region ICollection implementation
+                       public void Add (T item)
+                       {
+                               list.Add (item);
+                       }
+                       public void Clear ()
+                       {
+                               list.Clear ();
+                       }
+                       public bool Contains (T item)
+                       {
+                               return list.Contains (item);
+                       }
+                       public void CopyTo (T[] array, int arrayIndex)
+                       {
+                               list.CopyTo (array, arrayIndex);
+                       }
+                       public bool Remove (T item)
+                       {
+                               return list.Remove (item);
+                       }
+                       #endregion
+                       #region IEnumerable implementation
+                       public IEnumerator<T> GetEnumerator ()
+                       {
+                               return list.GetEnumerator ();
+                       }
+                       #endregion
+                       #region IEnumerable implementation
+                       IEnumerator IEnumerable.GetEnumerator ()
+                       {
+                               return GetEnumerator ();
+                       }
+                       #endregion
+                       #region ICollection<T> implementation
+                       int ICollection<T>.Count {
+                               get {
+                                       return list.Count;
+                               }
+                       }
+                       bool ICollection<T>.IsReadOnly {
+                               get {
+                                       return ((ICollection<T>)list).IsReadOnly;
+                               }
+                       }
+                       #endregion
+
+                       public override int GetHashCode ()
+                       {
+                               return list.GetHashCode ();
+                       }
+
+                       public override bool Equals (object obj)
+                       {
+                               var custom = obj as CustomList<T>;
+                               if (custom == null)
+                                       return false;
+
+                               if (list.Count != custom.list.Count)
+                                       return false;
+
+                               for (int i = 0; i < list.Count; i++)
+                                       if (!list [i].Equals (custom.list [i]))
+                                               return false;
+
+                               return true;
+                       }
+               }
+
+               class CustomCollection<T> : CustomList<T>
+               {
+                       public CustomCollection ()
+                               : base (null)
+                       {
+                       }
+
+                       public CustomCollection (IList<T> elements)
+                               : base (elements)
+                       {
+                       }
+               }
+
+               static object Serialize<T> (object arg)
+               {
+                       using (var ms = new MemoryStream ()) {
+                               try {
+                                       var serializer = new DataContractSerializer (typeof(T));
+                                       serializer.WriteObject (ms, arg);
+                               } catch (Exception ex) {
+                                       return ex;
+                               }
+
+                               return new UTF8Encoding ().GetString (ms.GetBuffer (), 0, (int)ms.Position);
+                       }
+               }
+
+               static T Deserialize<T> (string text)
+               {
+                       var buffer = new UTF8Encoding ().GetBytes (text);
+                       using (var ms = new MemoryStream (buffer)) {
+                               var serializer = new DataContractSerializer (typeof(T));
+                               return (T)serializer.ReadObject (ms);
+                       }
+               }
+
+               [Test]
+               public void CollectionInterfaceContract ()
+               {
+                       var array = new object[3] { 1, 2, 3 };
+                       var arrayResult = (string)Serialize<object[]> (array);
+
+                       var list = new List<int> (new[] { 1, 2, 3 });
+                       
+                       Assert.That (Serialize<IList> (array), Is.EqualTo (arrayResult), "#1");
+                       Assert.That (Serialize<IList> (list), Is.EqualTo (arrayResult), "#2");
+                       Assert.That (Serialize<IEnumerable> (list), Is.EqualTo (arrayResult), "#3");
+                       Assert.That (Serialize<ICollection> (list), Is.EqualTo (arrayResult), "#4");
+
+                       var alist = new ArrayList ();
+                       alist.AddRange (array);
+
+                       Assert.That (Serialize<IList> (alist), Is.EqualTo (arrayResult), "#5");
+
+                       Assert.That (Deserialize<IList> (arrayResult), Is.EqualTo (list), "#6");
+                       Assert.That (Deserialize<IEnumerable> (arrayResult), Is.EqualTo (list), "#7");
+                       Assert.That (Deserialize<ICollection> (arrayResult), Is.EqualTo (list), "#8");
+               }
+
+               [Test]
+               public void GenericCollectionInterfaceContract ()
+               {
+                       var array = new[] { 1, 2, 3 };
+                       var arrayResult = (string)Serialize<int[]> (array);
+                       
+                       var list = new List<int> (array);
+                       var mylist = new MyList<int> ();
+                       mylist.AddRange (array);
+
+                       var custom = new CustomList<int> (array);
+
+                       Assert.That (Serialize<IList<int>> (list), Is.EqualTo (arrayResult), "#1");
+                       Assert.That (Serialize<IEnumerable<int>> (list), Is.EqualTo (arrayResult), "#2");
+                       Assert.That (Serialize<ICollection<int>> (list), Is.EqualTo (arrayResult), "#3");
+
+                       Assert.That (Serialize<IList<object>> (list),
+                                    Is.InstanceOfType (typeof (InvalidCastException)), "#4");
+
+                       Assert.That (Serialize<IList<int>> (mylist), Is.EqualTo (arrayResult), "#5");
+                       Assert.That (Serialize<IList<int>> (list.AsReadOnly ()), Is.EqualTo (arrayResult), "#6");
+                       Assert.That (Serialize<IList<int>> (custom), Is.EqualTo (arrayResult), "#7");
+
+                       Assert.That (Deserialize<IList<int>> (arrayResult), Is.EqualTo (list), "#8");
+                       Assert.That (Deserialize<List<int>> (arrayResult), Is.EqualTo (list), "#9");
+               }
+
+               [Test]
+               public void CustomCollectionInterfaceContract ()
+               {
+                       var array = new[] { 1, 2, 3 };
+                       var arrayResult = Serialize<int[]> (array);
+                       
+                       var mylist = new MyList<int> ();
+                       mylist.AddRange (array);
+
+                       Assert.That (Serialize<IList<int>> (mylist), Is.EqualTo (arrayResult), "#1");
+                       Assert.That (Serialize<List<int>> (mylist), Is.EqualTo (arrayResult), "#2");
+                       Assert.That (Serialize<IMyList<int>> (mylist),
+                                    Is.InstanceOfType (typeof (SerializationException)), "#3");
+                       Assert.That (Serialize<MyList<int>> (mylist), Is.EqualTo (arrayResult), "#4");
+               }
+
+               [Test]
+               public void CustomCollectionTypeContract ()
+               {
+                       var array = new[] { 1, 2, 3 };
+                       var arrayResult = (string)Serialize<int[]> (array);
+
+                       var custom = new CustomList<int> (array);
+
+                       var result = (string)Serialize<CustomList<int>> (custom);
+                       Assert.That (result.Contains ("CustomListOfint"), Is.True, "#1");
+                       Assert.That (Deserialize<CustomList<int>> (result), Is.EqualTo (custom), "#2");
+
+                       var ro = array.ToList ().AsReadOnly ();
+                       var result2 = (string)Serialize<ReadOnlyCollection<int>> (ro);
+                       Assert.That (result2.Contains ("ReadOnlyCollectionOfint"), Is.True, "#3");
+                       Assert.That (Deserialize<ReadOnlyCollection<int>> (result2), Is.EqualTo (ro), "#4");
+
+                       /*
+                        * CustomList<T> implements one of the collection interfaces, but does not have
+                        * a public parameterless constructor.  It is therefor treated like a normal
+                        * [Serializable] type and can not be deserialized from an array.
+                        * 
+                        * The same also applies to ReadOnlyCollection<T>.
+                        * 
+                        */
+
+                       try {
+                               Deserialize<CustomList<int>> (arrayResult);
+                               Assert.Fail ("#5");
+                       } catch (Exception ex) {
+                               Assert.That (ex, Is.InstanceOfType (typeof (SerializationException)), "#6");
+                       }
+
+                       try {
+                               Deserialize<ReadOnlyCollection<int>> (arrayResult);
+                               Assert.Fail ("#7");
+                       } catch (Exception ex) {
+                               Assert.That (ex, Is.InstanceOfType (typeof (SerializationException)), "#8");
+                       }
+
+                       /*
+                        * CustomCollection<T> does have the required public parameterless constructor,
+                        * so it is treated as custom collection type and serialized as array.
+                        * 
+                        */
+
+                       var collection = new CustomCollection<int> (array);
+                       var result3 = (string)Serialize<CustomCollection<int>> (collection);
+                       Assert.That (result3, Is.EqualTo (arrayResult), "#9");
+                       Assert.That (Deserialize<CustomCollection<int>> (result3), Is.EqualTo (collection), "#10");
+               }
+
+               [Test]
+               public void ArrayContract ()
+               {
+                       var array = new[] { 1, 2, 3 };
+                       var list = new List<int> (array);
+
+                       Assert.That (Serialize<int[]> (list),
+                                    Is.InstanceOfType (typeof (InvalidCastException)), "#1");
+                       Assert.That (Serialize<object[]> (array),
+                                    Is.InstanceOfType (typeof (InvalidCastException)), "#2");
+               }
+
+               [Test]
+               public void ListOfArrays ()
+               {
+                       var water = new[] { "Fish", "Mermaid" };
+                       var land = new[] { "Horse", "Human", "Lion" };
+                       var air = new[] { "Bird", "Drake" };
+                       var species = new[] { water, land, air };
+                       var serialized = (string)Serialize<string[][]> (species);
+
+                       var list = new List<string[]> (species);
+                       Assert.That (Serialize<IList<string[]>> (species), Is.EqualTo (serialized), "#1");
+                       Assert.That (Serialize<IList<string[]>> (list), Is.EqualTo (serialized), "#2");
+               }
+
+               [CollectionDataContract (Name = "MyCollection")]
+               class MissingAddMethod<T> : IEnumerable<T>
+               {
+                       #region IEnumerable implementation
+                       public IEnumerator<T> GetEnumerator ()
+                       {
+                               throw new InvalidOperationException ();
+                       }
+#endregion
+                       #region IEnumerable implementation
+                       IEnumerator IEnumerable.GetEnumerator ()
+                       {
+                               throw new InvalidOperationException ();
+                       }
+#endregion
+               }
+               
+               [CollectionDataContract (Name = "MyCollection")]
+               class MissingEnumerable<T>
+               {
+                       public void Add (T item)
+                       {
+                               throw new NotImplementedException ();
+                       }
+               }
+               
+               [CollectionDataContract (Name = "MyCollection")]
+               class MyDataContractCollection<T> : IEnumerable<T>
+               {
+                       List<T> list;
+                       
+                       public MyDataContractCollection ()
+                       {
+                               list = new List<T> ();
+                       }
+                       
+                       public MyDataContractCollection (IList<T> elements)
+                       {
+                               list = new List<T> ();
+                               list.AddRange (elements);
+                       }
+                       
+                       #region IEnumerable implementation
+                       public IEnumerator<T> GetEnumerator ()
+                       {
+                               return list.GetEnumerator ();
+                       }
+#endregion
+                       #region IEnumerable implementation
+                       IEnumerator IEnumerable.GetEnumerator ()
+                       {
+                               return GetEnumerator ();
+                       }
+#endregion
+                       
+                       public void Add (T item)
+                       {
+                               list.Add (item);
+                       }
+               }
+
+               class MyDerivedDataContract<T> : MyDataContractCollection<T>
+               {
+               }
+               
+               [Test]
+               public void TestCollectionDataContract ()
+               {
+                       Assert.That (Serialize<MissingAddMethod<int>> (new MissingAddMethod<int> ()),
+                                    Is.InstanceOfType (typeof (InvalidDataContractException)), "#1");
+                       Assert.That (Serialize<MissingEnumerable<int>> (new MissingEnumerable<int> ()),
+                                    Is.InstanceOfType (typeof (InvalidDataContractException)), "#2");
+
+                       var array = new[] { 1, 2, 3 };
+                       var arrayResult = (string)Serialize<int[]> (array);
+                       var collection = new MyDataContractCollection<int> (array);
+                       
+                       var result = Serialize<MyDataContractCollection<int>> (collection);
+                       Assert.That (result, Is.InstanceOfType (typeof(string)), "#3");
+
+                       Assert.That (Serialize<MyDataContractCollection<int>> (array),
+                                    Is.InstanceOfType (typeof (SerializationException)), "#4");
+
+                       var derived = new MyDerivedDataContract<int> ();
+                       Assert.That (Serialize<MyDataContractCollection<int>> (derived),
+                                    Is.InstanceOfType (typeof (SerializationException)), "#5");
+
+                       try {
+                               Deserialize<MyDataContractCollection<int>> (arrayResult);
+                               Assert.Fail ("#6");
+                       } catch (Exception ex) {
+                               Assert.That (ex, Is.InstanceOfType (typeof(SerializationException)), "#7");
+                       }
+                       
+                       var deserialized = Deserialize<MyDataContractCollection<int>> ((string)result);
+                       Assert.That (deserialized, Is.InstanceOfType (typeof (MyDataContractCollection<int>)), "#8");
+               }
+
+               [Test]
+               public void Test ()
+               {
+                       var derived = new MyDerivedDataContract<int> ();
+                       Assert.That (Serialize<MyDataContractCollection<int>> (derived),
+                                    Is.InstanceOfType (typeof (SerializationException)), "#5");
+               }
+
+       }
+}
+
diff --git a/mcs/class/System.Runtime.Serialization/Test/System.Runtime.Serialization/WsdlHelper.cs b/mcs/class/System.Runtime.Serialization/Test/System.Runtime.Serialization/WsdlHelper.cs
new file mode 100644 (file)
index 0000000..274af8a
--- /dev/null
@@ -0,0 +1,178 @@
+//
+// WsdlHelper.cs
+//
+// Author:
+//       Martin Baulig <martin.baulig@xamarin.com>
+//
+// Copyright (c) 2012 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.IO;
+using System.Linq;
+using System.Reflection;
+using System.ServiceModel.Description;
+using System.Web.Services.Discovery;
+using System.Runtime.Serialization;
+using WebServices = System.Web.Services;
+using System.CodeDom;
+
+namespace MonoTests.System.Runtime.Serialization
+{
+       public static class WsdlHelper
+       {
+               /*
+                * This reads a normal .wsdl file from an embedded resource.
+                * 
+                * You can simply fetch them from your server using
+                * 'curl http://yourserver/YourService.svc?singleWsdl > YourService.wsdl',
+                * add the .wsdl file to Test/Resources/WSDL and add it to `TEST_RESOURCE_FILES'
+                * in the Makefile.
+                */
+
+               public static MetadataSet GetMetadataSet (string name)
+               {
+                       var asm = Assembly.GetExecutingAssembly ();
+                       using (var stream = asm.GetManifestResourceStream (name)) {
+                               if (stream == null)
+                                       throw new InvalidOperationException (string.Format (
+                                               "Cannot find resource file '{0}'.", name));
+                               return GetMetadataSet (stream);
+                       }
+               }
+               
+               public static MetadataSet GetMetadataSet (Stream stream)
+               {
+                       var dr = new ContractReference ();
+                       var doc = (WebServices.Description.ServiceDescription) dr.ReadDocument (stream);
+                       
+                       var metadata = new MetadataSet ();
+                       metadata.MetadataSections.Add (
+                               new MetadataSection (MetadataSection.ServiceDescriptionDialect, "", doc));
+                       return metadata;
+               }
+
+               public static CodeCompileUnit Import (MetadataSet metadata, ImportOptions options)
+               {
+                       var importer = new WsdlImporter (metadata);
+                       var xsdImporter = new XsdDataContractImporter ();
+                       xsdImporter.Options = options;
+                       importer.State.Add (typeof(XsdDataContractImporter), xsdImporter);
+                       
+                       var contracts = importer.ImportAllContracts ();
+                       
+                       CodeCompileUnit ccu = new CodeCompileUnit ();
+                       var generator = new ServiceContractGenerator (ccu);
+
+                       if (contracts.Count != 1)
+                               throw new InvalidOperationException (string.Format (
+                                       "Metadata import failed: found {0} contracts.", contracts.Count));
+                       
+                       var contract = contracts.First ();
+                       generator.GenerateServiceContractType (contract);
+                       
+                       return ccu;
+               }
+
+               public static CodeNamespace Find (this CodeNamespaceCollection collection, string name)
+               {
+                       foreach (CodeNamespace ns in collection) {
+                               if (ns.Name == name)
+                                       return ns;
+                       }
+                       
+                       return null;
+               }
+               
+               public static CodeNamespace FindNamespace (this CodeCompileUnit unit, string name)
+               {
+                       foreach (CodeNamespace ns in unit.Namespaces) {
+                               if (ns.Name == name)
+                                       return ns;
+                       }
+                       
+                       return null;
+               }
+               
+               public static CodeTypeDeclaration FindType (this CodeNamespace ns, string name)
+               {
+                       foreach (CodeTypeDeclaration type in ns.Types) {
+                               if (type.Name == name)
+                                       return type;
+                       }
+                       
+                       return null;
+               }
+               
+               public static CodeTypeDeclaration FindType (this CodeCompileUnit unit, string name)
+               {
+                       foreach (CodeNamespace ns in unit.Namespaces) {
+                               foreach (CodeTypeDeclaration type in ns.Types) {
+                                       if (type.Name == name)
+                                               return type;
+                               }
+                       }
+                       
+                       return null;
+               }
+               
+               public static CodeMemberMethod FindMethod (this CodeTypeDeclaration type, string name)
+               {
+                       foreach (var member in type.Members) {
+                               var method = member as CodeMemberMethod;
+                               if (method == null)
+                                       continue;
+                               if (method.Name == name)
+                                       return method;
+                       }
+                       
+                       return null;
+               }
+               
+               public static CodeMemberMethod FindMethod (this CodeCompileUnit unit, string typeName,
+                                                          string methodName)
+               {
+                       var type = unit.FindType (typeName);
+                       if (type == null)
+                               return null;
+                       return type.FindMethod (methodName);
+               }
+
+               public static CodeAttributeDeclaration FindAttribute (this CodeTypeDeclaration type, string name)
+               {
+                       foreach (CodeAttributeDeclaration attr in type.CustomAttributes) {
+                               if (attr.Name == name)
+                                       return attr;
+                       }
+
+                       return null;
+               }
+
+               public static CodeAttributeArgument FindArgument (this CodeAttributeDeclaration attr, string name)
+               {
+                       foreach (CodeAttributeArgument arg in attr.Arguments) {
+                               if (arg.Name == name)
+                                       return arg;
+                       }
+
+                       return null;
+               }
+       }
+}
+
diff --git a/mcs/class/System.Runtime.Serialization/Test/System.Runtime.Serialization/XsdDataContractExporterTest2.cs b/mcs/class/System.Runtime.Serialization/Test/System.Runtime.Serialization/XsdDataContractExporterTest2.cs
new file mode 100644 (file)
index 0000000..088100a
--- /dev/null
@@ -0,0 +1,171 @@
+//
+// XsdDataContractExporterTest2.cs
+//
+// Author:
+//       Martin Baulig <martin.baulig@xamarin.com>
+//
+// Copyright (c) 2012 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.CodeDom;
+using System.CodeDom.Compiler;
+using System.Collections;
+using System.Collections.Generic;
+using System.Collections.ObjectModel;
+using System.IO;
+using System.Linq;
+using System.Runtime.Serialization;
+using System.ServiceModel;
+using System.ServiceModel.Description;
+using System.Web.Services.Discovery;
+using System.Xml;
+using System.Xml.Schema;
+using System.Xml.Serialization;
+using Microsoft.CSharp;
+using NUnit.Framework;
+using NUnit.Framework.Constraints;
+using NUnit.Framework.SyntaxHelpers;
+
+using QName = System.Xml.XmlQualifiedName;
+
+namespace MonoTests.System.Runtime.Serialization
+{
+       [TestFixture]
+       public class XsdDataContractExporterTest2
+       {
+               internal const string MSArraysNamespace =
+                       "http://schemas.microsoft.com/2003/10/Serialization/Arrays";
+
+               [Test]
+               public void ExportList ()
+               {
+                       var exporter = new XsdDataContractExporter ();
+                       Assert.That (exporter.CanExport (typeof(MyService)), Is.True, "#1");
+                       exporter.Export (typeof(MyService));
+
+                       var typeName = exporter.GetSchemaTypeName (typeof(MyService));
+                       var type = exporter.Schemas.GlobalTypes [typeName];
+
+                       Assert.That (type, Is.Not.Null, "#2");
+                       Assert.That (type, Is.InstanceOfType (typeof (XmlSchemaComplexType)), "#3");
+
+                       var complex = (XmlSchemaComplexType)type;
+                       Assert.That (complex.Annotation, Is.Null, "#4");
+
+                       var sequence = complex.Particle as XmlSchemaSequence;
+                       Assert.That (sequence, Is.Not.Null, "#5");
+                       Assert.That (sequence.Items.Count, Is.EqualTo (3), "#5a");
+                       Assert.That (sequence.Annotation, Is.Null, "#5b");
+                       Assert.That (sequence.MinOccursString, Is.Null, "#5c");
+                       Assert.That (sequence.MaxOccursString, Is.Null, "#5d");
+
+                       var list = GetElement (sequence, "list");
+                       Assert.That (list, Is.Not.Null, "#6");
+                       Assert.That (list.Annotation, Is.Null, "#6a");
+                       Assert.That (list.Name, Is.EqualTo ("list"), "#6b");
+                       Assert.That (list.ElementSchemaType, Is.InstanceOfType (typeof (XmlSchemaComplexType)), "#6c");
+
+                       var listElement = (XmlSchemaComplexType)list.ElementSchemaType;
+                       Assert.That (listElement.QualifiedName.Namespace, Is.EqualTo (MSArraysNamespace), "#6d");
+                       Assert.That (listElement.QualifiedName.Name, Is.EqualTo ("ArrayOfint"), "#6e");
+
+                       Assert.That (listElement.Particle, Is.InstanceOfType (typeof(XmlSchemaSequence)), "#7");
+                       var listSeq = (XmlSchemaSequence)listElement.Particle;
+                       Assert.That (listSeq.Items.Count, Is.EqualTo (1), "#7b");
+                       Assert.That (listSeq.Items[0], Is.InstanceOfType (typeof(XmlSchemaElement)), "#7c");
+                       Assert.That (listSeq.Annotation, Is.Null, "#7d");
+
+                       var listSeqElement = (XmlSchemaElement)listSeq.Items[0];
+                       Assert.That (listSeqElement.MaxOccursString, Is.EqualTo ("unbounded"), "#7e");
+                       Assert.That (listSeqElement.MinOccursString, Is.EqualTo ("0"), "#7f");
+
+                       var dict = GetElement (sequence, "dictionary");
+                       Assert.That (dict, Is.Not.Null, "#8");
+                       Assert.That (dict.Annotation, Is.Null, "#8a");
+                       Assert.That (dict.Name, Is.EqualTo ("dictionary"), "#8b");
+                       Assert.That (dict.ElementSchemaType, Is.InstanceOfType (typeof (XmlSchemaComplexType)), "#8c");
+                       
+                       var dictElement = (XmlSchemaComplexType)dict.ElementSchemaType;
+                       Assert.That (dictElement.QualifiedName.Namespace, Is.EqualTo (MSArraysNamespace), "#8d");
+                       Assert.That (dictElement.QualifiedName.Name, Is.EqualTo ("ArrayOfKeyValueOfstringdouble"), "#8e");
+
+                       Assert.That (dictElement.Particle, Is.InstanceOfType (typeof(XmlSchemaSequence)), "#9");
+                       var dictSeq = (XmlSchemaSequence)dictElement.Particle;
+                       Assert.That (dictSeq.Items.Count, Is.EqualTo (1), "#9b");
+                       Assert.That (dictSeq.Items[0], Is.InstanceOfType (typeof(XmlSchemaElement)), "#9c");
+                       Assert.That (dictSeq.Annotation, Is.Null, "#9d");
+                       
+                       var dictSeqElement = (XmlSchemaElement)dictSeq.Items[0];
+                       Assert.That (listSeqElement.MaxOccursString, Is.EqualTo ("unbounded"), "#9e");
+                       Assert.That (listSeqElement.MinOccursString, Is.EqualTo ("0"), "#9f");
+
+
+                       var custom = GetElement (sequence, "customCollection");
+                       Assert.That (custom, Is.Not.Null, "#10");
+                       Assert.That (custom.Annotation, Is.Null, "#10a");
+                       Assert.That (custom.Name, Is.EqualTo ("customCollection"), "#10b");
+                       Assert.That (custom.ElementSchemaType, Is.InstanceOfType (typeof (XmlSchemaComplexType)), "#10c");
+                       
+                       var customElement = (XmlSchemaComplexType)custom.ElementSchemaType;
+                       var customEQN = customElement.QualifiedName;
+                       Assert.That (customEQN.Namespace, Is.EqualTo (typeName.Namespace), "#10d");
+                       Assert.That (customEQN.Name.StartsWith ("XsdDataContractExporterTest2.MyCollectionOfstring", StringComparison.InvariantCultureIgnoreCase),
+                                    Is.True, "#10e");
+
+                       Assert.That (customElement.Particle, Is.InstanceOfType (typeof(XmlSchemaSequence)), "#11");
+                       var customSeq = (XmlSchemaSequence)customElement.Particle;
+                       Assert.That (customSeq.Items.Count, Is.EqualTo (1), "#11b");
+                       Assert.That (customSeq.Items[0], Is.InstanceOfType (typeof(XmlSchemaElement)), "#11c");
+                       Assert.That (customSeq.Annotation, Is.Null, "#11d");
+                       
+                       var customSeqElement = (XmlSchemaElement)customSeq.Items[0];
+                       Assert.That (customSeqElement.MaxOccursString, Is.EqualTo ("unbounded"), "#11e");
+                       Assert.That (customSeqElement.MinOccursString, Is.EqualTo ("0"), "#11f");
+               }
+
+               static XmlSchemaElement GetElement (XmlSchemaSequence sequence, string name)
+               {
+                       foreach (XmlSchemaElement item in sequence.Items) {
+                               if (item.Name.Equals (name))
+                                       return item;
+                       }
+
+                       return null;
+               }
+
+               [ServiceContract]
+               public class MyService
+               {
+                       [DataMember]
+                       public List<int> list;
+
+                       [DataMember]
+                       public Dictionary<string,double> dictionary;
+
+                       [DataMember]
+                       public MyCollection<string> customCollection;
+               }
+
+               [CollectionDataContract]
+               public class MyCollection<T> : List<T>
+               {
+               }
+       }
+}
diff --git a/mcs/class/System.Runtime.Serialization/Test/System.Runtime.Serialization/XsdDataContractImporterTest2.cs b/mcs/class/System.Runtime.Serialization/Test/System.Runtime.Serialization/XsdDataContractImporterTest2.cs
new file mode 100644 (file)
index 0000000..952f223
--- /dev/null
@@ -0,0 +1,359 @@
+//
+// XsdDataContractImporterTest2.cs
+//
+// Author:
+//       Martin Baulig <martin.baulig@xamarin.com>
+//
+// Copyright (c) 2012 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.CodeDom;
+using System.CodeDom.Compiler;
+using System.Collections;
+using System.Collections.Generic;
+using System.Collections.ObjectModel;
+using System.IO;
+using System.Linq;
+using System.Runtime.Serialization;
+using System.ServiceModel.Description;
+using System.Web.Services.Discovery;
+using System.Xml;
+using System.Xml.Schema;
+using System.Xml.Serialization;
+using Microsoft.CSharp;
+using NUnit.Framework;
+using NUnit.Framework.Constraints;
+using NUnit.Framework.SyntaxHelpers;
+
+using QName = System.Xml.XmlQualifiedName;
+
+namespace MonoTests.System.Runtime.Serialization
+{
+       [TestFixture]
+       public class XsdDataContractImporterTest2
+       {
+               MetadataSet collectionsMetadata;
+               MetadataSet customCollectionsMetadata;
+
+               [SetUp]
+               public void Setup ()
+               {
+                       collectionsMetadata = WsdlHelper.GetMetadataSet ("collections.wsdl");
+                       customCollectionsMetadata = WsdlHelper.GetMetadataSet ("custom-collections.wsdl");
+               }
+               
+               [Test]
+               public void TestSimpleList ()
+               {
+                       var options = new ImportOptions ();
+                       
+                       var ccu = WsdlHelper.Import (collectionsMetadata, options);
+                       
+                       var method = ccu.FindMethod ("MyServiceClient", "GetSimpleList");
+                       Assert.That (method, Is.Not.Null, "#1");
+                       Assert.That (method.ReturnType, Is.Not.Null, "#2");
+                       
+                       Assert.That (method.ReturnType.ArrayRank, Is.EqualTo (1), "#3");
+                       Assert.That (method.ReturnType.BaseType, Is.EqualTo ("System.Int32"), "#4");
+               }
+               
+               [Test]
+               public void TestSimpleList2 ()
+               {
+                       var options = new ImportOptions ();
+                       options.ReferencedCollectionTypes.Add (typeof(LinkedList<>));
+                       
+                       var ccu = WsdlHelper.Import (collectionsMetadata, options);
+                       
+                       var method = ccu.FindMethod ("MyServiceClient", "GetSimpleList");
+                       Assert.That (method, Is.Not.Null, "#1");
+                       
+                       var ret = method.ReturnType;
+                       Assert.That (ret, Is.Not.Null, "#2");
+                       
+                       Assert.That (ret.ArrayRank, Is.EqualTo (0), "#3");
+                       Assert.That (ret.BaseType, Is.EqualTo ("System.Collections.Generic.LinkedList`1"), "#4");
+                       Assert.That (ret.TypeArguments.Count, Is.EqualTo (1), "#5");
+                       Assert.That (ret.TypeArguments [0].BaseType, Is.EqualTo ("System.Int32"), "#6");
+               }
+               
+               [Test]
+               public void TestSimpleList3 ()
+               {
+                       var options = new ImportOptions ();
+                       options.ReferencedCollectionTypes.Add (typeof (Dictionary<,>));
+                       options.ReferencedCollectionTypes.Add (typeof (ObservableCollection<>));
+                       
+                       var ccu = WsdlHelper.Import (collectionsMetadata, options);
+                       
+                       var method = ccu.FindMethod ("MyServiceClient", "GetSimpleList");
+                       Assert.That (method, Is.Not.Null, "#1");
+                       
+                       var ret = method.ReturnType;
+                       Assert.That (ret, Is.Not.Null, "#2");
+                       
+                       Assert.That (ret.ArrayRank, Is.EqualTo (0), "#3");
+                       Assert.That (ret.BaseType, Is.EqualTo ("System.Collections.ObjectModel.ObservableCollection`1"), "#4");
+                       Assert.That (ret.TypeArguments.Count, Is.EqualTo (1), "#5");
+                       Assert.That (ret.TypeArguments [0].BaseType, Is.EqualTo ("System.Int32"), "#6");
+               }
+               
+               [Test]
+               public void TestListOfFoo ()
+               {
+                       var options = new ImportOptions ();
+                       options.ReferencedCollectionTypes.Add (typeof (List<>));
+                       
+                       var ccu = WsdlHelper.Import (collectionsMetadata, options);
+                       
+                       var method = ccu.FindMethod ("MyServiceClient", "GetListOfFoo");
+                       Assert.That (method, Is.Not.Null, "#1");
+                       
+                       var ret = method.ReturnType;
+                       Assert.That (ret, Is.Not.Null, "#2");
+                       
+                       Assert.That (ret.ArrayRank, Is.EqualTo (0), "#3");
+                       Assert.That (ret.BaseType, Is.EqualTo ("System.Collections.Generic.List`1"), "#4");
+                       Assert.That (ret.TypeArguments.Count, Is.EqualTo (1), "#5");
+                       Assert.That (ret.TypeArguments [0].BaseType, Is.EqualTo ("TestWCF.Model.Foo"), "#6");
+               }
+               
+               [Test]
+               public void TestListOfStringArray ()
+               {
+                       var options = new ImportOptions ();
+                       options.ReferencedCollectionTypes.Add (typeof (List<>));
+                       
+                       var ccu = WsdlHelper.Import (collectionsMetadata, options);
+                       
+                       var method = ccu.FindMethod ("MyServiceClient", "GetListOfStringArray");
+                       Assert.That (method, Is.Not.Null, "#1");
+                       
+                       var ret = method.ReturnType;
+                       Assert.That (ret, Is.Not.Null, "#2");
+                       
+                       Assert.That (ret.ArrayRank, Is.EqualTo (0), "#3");
+                       Assert.That (ret.BaseType, Is.EqualTo ("System.Collections.Generic.List`1"), "#4");
+                       Assert.That (ret.TypeArguments.Count, Is.EqualTo (1), "#5");
+                       
+                       var baseType = ret.TypeArguments [0];
+                       Assert.That (baseType.BaseType, Is.EqualTo ("System.Collections.Generic.List`1"), "#6");
+                       Assert.That (baseType.TypeArguments.Count, Is.EqualTo (1), "#7");
+                       Assert.That (baseType.TypeArguments [0].BaseType, Is.EqualTo ("System.String"), "#8");
+               }
+               
+               [Test]
+               public void TestSimpleDictionary ()
+               {
+                       var options = new ImportOptions ();
+                       options.ReferencedCollectionTypes.Add (typeof (List<>));
+                       
+                       var ccu = WsdlHelper.Import (collectionsMetadata, options);
+                       
+                       var method = ccu.FindMethod ("MyServiceClient", "GetSimpleDictionary");
+                       Assert.That (method, Is.Not.Null, "#1");
+                       
+                       var ret = method.ReturnType;
+                       Assert.That (ret, Is.Not.Null, "#2");
+                       
+                       Assert.That (ret.ArrayRank, Is.EqualTo (0), "#3");
+                       Assert.That (ret.BaseType, Is.EqualTo ("System.Collections.Generic.Dictionary`2"), "#4");
+                       Assert.That (ret.TypeArguments.Count, Is.EqualTo (2), "#5");
+                       
+                       var keyType = ret.TypeArguments [0];
+                       Assert.That (keyType.BaseType, Is.EqualTo ("System.Int32"), "#6");
+                       var valueType = ret.TypeArguments [1];
+                       Assert.That (valueType.BaseType, Is.EqualTo ("System.String"), "#7");
+               }
+               
+               [Test]
+               public void TestSimpleDictionary2 ()
+               {
+                       var options = new ImportOptions ();
+                       options.ReferencedCollectionTypes.Add (typeof (SortedList<,>));
+                       
+                       var ccu = WsdlHelper.Import (collectionsMetadata, options);
+                       
+                       var method = ccu.FindMethod ("MyServiceClient", "GetSimpleDictionary");
+                       Assert.That (method, Is.Not.Null, "#1");
+                       
+                       var ret = method.ReturnType;
+                       Assert.That (ret, Is.Not.Null, "#2");
+                       
+                       Assert.That (ret.ArrayRank, Is.EqualTo (0), "#3");
+                       Assert.That (ret.BaseType, Is.EqualTo ("System.Collections.Generic.SortedList`2"), "#4");
+                       Assert.That (ret.TypeArguments.Count, Is.EqualTo (2), "#5");
+                       
+                       var keyType = ret.TypeArguments [0];
+                       Assert.That (keyType.BaseType, Is.EqualTo ("System.Int32"), "#6");
+                       var valueType = ret.TypeArguments [1];
+                       Assert.That (valueType.BaseType, Is.EqualTo ("System.String"), "#7");
+               }
+
+               [Test]
+               public void TestCustomCollection ()
+               {
+                       var options = new ImportOptions ();
+                       
+                       var ccu = WsdlHelper.Import (customCollectionsMetadata, options);
+                       
+                       var method = ccu.FindMethod ("MyServiceClient", "GetCustomCollection");
+                       Assert.That (method, Is.Not.Null, "#1");
+
+                       var ret = method.ReturnType;
+                       Assert.That (ret, Is.Not.Null, "#2");
+                       
+                       Assert.That (ret.ArrayRank, Is.EqualTo (0), "#3");
+                       Assert.That (ret.BaseType, Is.EqualTo ("TestWCF.Model.MyCollection"), "#4");
+                       Assert.That (ret.TypeArguments.Count, Is.EqualTo (0), "#5");
+               }
+
+               [Test]
+               public void TestCustomCollection2 ()
+               {
+                       var options = new ImportOptions ();
+
+                       var ccu = WsdlHelper.Import (customCollectionsMetadata, options);
+                       
+                       var method = ccu.FindMethod ("MyServiceClient", "GetCustomCollection2");
+                       Assert.That (method, Is.Not.Null, "#1");
+                       
+                       var ret = method.ReturnType;
+                       Assert.That (ret, Is.Not.Null, "#2");
+                       
+                       Assert.That (ret.ArrayRank, Is.EqualTo (0), "#3");
+                       Assert.That (ret.BaseType, Is.EqualTo ("TestWCF.Model.MyCollectionOfdouble"), "#4");
+                       Assert.That (ret.TypeArguments.Count, Is.EqualTo (0), "#5");
+               }
+
+               [Test]
+               public void TestCustomCollection3 ()
+               {
+                       var options = new ImportOptions ();
+
+                       var ccu = WsdlHelper.Import (customCollectionsMetadata, options);
+                       
+                       var type = ccu.FindType ("MyCollection");
+                       Assert.That (type, Is.Not.Null, "#1a");
+                       Assert.That (type.BaseTypes.Count, Is.EqualTo (1), "#2a");
+                       
+                       var baseType = type.BaseTypes[0];
+                       Assert.That (baseType.BaseType, Is.EqualTo ("System.Collections.Generic.List`1"), "#3a");
+                       Assert.That (baseType.TypeArguments.Count, Is.EqualTo (1), "#4a");
+                       Assert.That (baseType.TypeArguments[0].BaseType, Is.EqualTo ("System.String"), "#5a");
+
+                       var attr = type.FindAttribute ("System.Runtime.Serialization.CollectionDataContractAttribute");
+                       Assert.That (attr, Is.Not.Null, "#6a");
+
+                       var nameArg = attr.FindArgument ("Name");
+                       Assert.That (nameArg, Is.Not.Null, "#7a");
+                       Assert.That (((CodePrimitiveExpression)nameArg.Value).Value, Is.EqualTo ("MyCollection"), "#8a");
+
+                       var nsArg = attr.FindArgument ("Namespace");
+                       Assert.That (nsArg, Is.Not.Null, "#9a");
+                       Assert.That (((CodePrimitiveExpression)nsArg.Value).Value, Is.EqualTo ("http://schemas.datacontract.org/2004/07/TestWCF.Model"), "#10a");
+                       
+                       var itemArg = attr.FindArgument ("ItemName");
+                       Assert.That (itemArg, Is.Not.Null);
+                       Assert.That (((CodePrimitiveExpression)itemArg.Value).Value, Is.EqualTo ("string"), "#11a");
+
+                       type = ccu.FindType ("MyCollectionOfdouble");
+                       Assert.That (type, Is.Not.Null, "#1b");
+                       Assert.That (type.BaseTypes.Count, Is.EqualTo (1), "#2b");
+
+                       baseType = type.BaseTypes[0];
+                       Assert.That (baseType.BaseType, Is.EqualTo ("System.Collections.Generic.List`1"), "#3b");
+                       Assert.That (baseType.TypeArguments.Count, Is.EqualTo (1), "#4b");
+                       Assert.That (baseType.TypeArguments[0].BaseType, Is.EqualTo ("System.Double"), "#5b");
+                       
+                       attr = type.FindAttribute ("System.Runtime.Serialization.CollectionDataContractAttribute");
+                       Assert.That (attr, Is.Not.Null, "#6b");
+                       
+                       nameArg = attr.FindArgument ("Name");
+                       Assert.That (nameArg, Is.Not.Null, "#7b");
+                       Assert.That (((CodePrimitiveExpression)nameArg.Value).Value, Is.EqualTo ("MyCollectionOfdouble"), "#8b");
+                       
+                       nsArg = attr.FindArgument ("Namespace");
+                       Assert.That (nsArg, Is.Not.Null, "#9b");
+                       Assert.That (((CodePrimitiveExpression)nsArg.Value).Value, Is.EqualTo ("http://schemas.datacontract.org/2004/07/TestWCF.Model"), "#10b");
+                       
+                       itemArg = attr.FindArgument ("ItemName");
+                       Assert.That (itemArg, Is.Not.Null);
+                       Assert.That (((CodePrimitiveExpression)itemArg.Value).Value, Is.EqualTo ("double"), "#11b");
+               }
+
+               [Test]
+               public void TestCustomCollection4 ()
+               {
+                       var options = new ImportOptions ();
+                       options.ReferencedCollectionTypes.Add (typeof (LinkedList<>));
+
+                       var ccu = WsdlHelper.Import (customCollectionsMetadata, options);
+                       
+                       var type = ccu.FindType ("MyCollection");
+                       Assert.That (type, Is.Not.Null, "#1a");
+                       Assert.That (type.BaseTypes.Count, Is.EqualTo (1), "#2a");
+                       
+                       var baseType = type.BaseTypes[0];
+                       Assert.That (baseType.BaseType, Is.EqualTo ("System.Collections.Generic.LinkedList`1"), "#3a");
+                       Assert.That (baseType.TypeArguments.Count, Is.EqualTo (1), "#4a");
+                       Assert.That (baseType.TypeArguments[0].BaseType, Is.EqualTo ("System.String"), "#5a");
+                       
+                       var attr = type.FindAttribute ("System.Runtime.Serialization.CollectionDataContractAttribute");
+                       Assert.That (attr, Is.Not.Null, "#6a");
+                       
+                       var nameArg = attr.FindArgument ("Name");
+                       Assert.That (nameArg, Is.Not.Null, "#7a");
+                       Assert.That (((CodePrimitiveExpression)nameArg.Value).Value, Is.EqualTo ("MyCollection"), "#8a");
+                       
+                       var nsArg = attr.FindArgument ("Namespace");
+                       Assert.That (nsArg, Is.Not.Null, "#9a");
+                       Assert.That (((CodePrimitiveExpression)nsArg.Value).Value, Is.EqualTo ("http://schemas.datacontract.org/2004/07/TestWCF.Model"), "#10a");
+                       
+                       var itemArg = attr.FindArgument ("ItemName");
+                       Assert.That (itemArg, Is.Not.Null);
+                       Assert.That (((CodePrimitiveExpression)itemArg.Value).Value, Is.EqualTo ("string"), "#11a");
+                       
+                       type = ccu.FindType ("MyCollectionOfdouble");
+                       Assert.That (type, Is.Not.Null, "#1b");
+                       Assert.That (type.BaseTypes.Count, Is.EqualTo (1), "#2b");
+                       
+                       baseType = type.BaseTypes[0];
+                       Assert.That (baseType.BaseType, Is.EqualTo ("System.Collections.Generic.LinkedList`1"), "#3b");
+                       Assert.That (baseType.TypeArguments.Count, Is.EqualTo (1), "#4b");
+                       Assert.That (baseType.TypeArguments[0].BaseType, Is.EqualTo ("System.Double"), "#5b");
+                       
+                       attr = type.FindAttribute ("System.Runtime.Serialization.CollectionDataContractAttribute");
+                       Assert.That (attr, Is.Not.Null, "#6b");
+                       
+                       nameArg = attr.FindArgument ("Name");
+                       Assert.That (nameArg, Is.Not.Null, "#7b");
+                       Assert.That (((CodePrimitiveExpression)nameArg.Value).Value, Is.EqualTo ("MyCollectionOfdouble"), "#8b");
+                       
+                       nsArg = attr.FindArgument ("Namespace");
+                       Assert.That (nsArg, Is.Not.Null, "#9b");
+                       Assert.That (((CodePrimitiveExpression)nsArg.Value).Value, Is.EqualTo ("http://schemas.datacontract.org/2004/07/TestWCF.Model"), "#10b");
+                       
+                       itemArg = attr.FindArgument ("ItemName");
+                       Assert.That (itemArg, Is.Not.Null);
+                       Assert.That (((CodePrimitiveExpression)itemArg.Value).Value, Is.EqualTo ("double"), "#11b");
+               }
+       }
+}
index 5bc1c4dc3b38c8fedb1b2eefe43514b9f840572e..16c38c77932c39409c4349ee2ea501d67051c820 100644 (file)
@@ -168,13 +168,14 @@ namespace System.ServiceModel.Channels.Http
 
                        Message msg = null;
 
-                       if (ctxi.Request.HttpMethod == "POST") {
+                       if (ctxi.Request.HttpMethod == "POST")
                                msg = CreatePostMessage (ctxi);
-                               if (msg == null)
-                                       return false;
-                       } else if (ctxi.Request.HttpMethod == "GET")
+                       else if (ctxi.Request.HttpMethod == "GET")
                                msg = Message.CreateMessage (MessageVersion.None, null); // HTTP GET-based request
 
+                       if (msg == null)
+                               return false;
+
                        if (msg.Headers.To == null)
                                msg.Headers.To = ctxi.Request.Url;
                        msg.Properties.Add ("Via", LocalAddress.Uri);
index 083640c66b96e411c9ba383c442e45802d6c42fa..9fc6f5d921734451bac785798fd3f10364832135 100644 (file)
@@ -174,13 +174,19 @@ namespace System.ServiceModel.Channels.NetTcp
 
                protected override void OnOpen (TimeSpan timeout)
                {
-                       IPHostEntry entry = Dns.GetHostEntry (Uri.Host);
-                       
-                       if (entry.AddressList.Length ==0)
-                               throw new ArgumentException (String.Format ("Invalid listen URI: {0}", Uri));
+                       IPAddress address;
+
+                       if (string.Equals (Uri.Host, "localhost", StringComparison.InvariantCultureIgnoreCase))
+                               address = IPAddress.Any;
+                       else {
+                               IPHostEntry entry = Dns.GetHostEntry (Uri.Host);
+                               if (entry.AddressList.Length == 0)
+                                       throw new ArgumentException (String.Format ("Invalid listen URI: {0}", Uri));
+                               address = entry.AddressList [0];
+                       }
                        
                        int explicitPort = Uri.Port;
-                       tcp_listener = new TcpListener (entry.AddressList [0], explicitPort <= 0 ? TcpTransportBindingElement.DefaultPort : explicitPort);
+                       tcp_listener = new TcpListener (address, explicitPort <= 0 ? TcpTransportBindingElement.DefaultPort : explicitPort);
                        tcp_listener.Start ();
                        tcp_listener.BeginAcceptTcpClient (TcpListenerAcceptedClient, tcp_listener);
                }
index cf3b376a604f8eaf1179bdf4c0af2552896b3230..b7218b003fc4fee25156fcf251dcbd76418ccf9d 100644 (file)
@@ -153,19 +153,20 @@ namespace System.ServiceModel.Channels
                        string pname = HttpRequestMessageProperty.Name;
                        if (message.Properties.ContainsKey (pname)) {
                                HttpRequestMessageProperty hp = (HttpRequestMessageProperty) message.Properties [pname];
-#if !NET_2_1 // FIXME: how can this be done?
                                foreach (var key in hp.Headers.AllKeys)
                                        if (!WebHeaderCollection.IsRestricted (key))
                                                web_request.Headers [key] = hp.Headers [key];
-#endif
                                web_request.Method = hp.Method;
                                // FIXME: do we have to handle hp.QueryString ?
                                if (hp.SuppressEntityBody)
                                        suppressEntityBody = true;
                        }
 #if !NET_2_1
-                       if (source.ClientCredentials.ClientCertificate.Certificate != null) 
-                               ((HttpWebRequest)web_request).ClientCertificates.Add (source.ClientCredentials.ClientCertificate.Certificate);
+                       if (source.ClientCredentials != null) {
+                               var cred = source.ClientCredentials;
+                               if ((cred.ClientCertificate != null) && (cred.ClientCertificate.Certificate != null))
+                                       ((HttpWebRequest)web_request).ClientCertificates.Add (cred.ClientCertificate.Certificate);
+                       }
 #endif
 
                        if (!suppressEntityBody && String.Compare (web_request.Method, "GET", StringComparison.OrdinalIgnoreCase) != 0) {
index 5c80629410ef8f36db6c03974d4111c73e1fef30..b34137f80edec0e5a10e07c13609974aaffaff9e 100644 (file)
@@ -186,14 +186,30 @@ namespace System.ServiceModel.Description
                        if (sca.HasProtectionLevel)
                                cd.ProtectionLevel = sca.ProtectionLevel;
 
-                       foreach (var icd in cd.GetInheritedContracts ()) {
-                               FillOperationsForInterface (icd, icd.ContractType, givenServiceType, false);
+                       /*
+                        * Calling `FillOperationsForInterface(cd, X, null, false)' followed by
+                        * `FillOperationsForInterface(cd, X, Y, false)' would attempt to populate
+                        * the behavior list for 'X' twice (bug #6187).
+                        * 
+                        * Therefor, we manually iterate over the list of interfaces here instead of
+                        * using ContractDescription.GetInheritedContracts().
+                        * 
+                        */
+
+                       var inherited = new Collection<ContractDescription> ();
+                       foreach (var it in cd.ContractType.GetInterfaces ()) {
+                               var icd = GetContractInternal (it, givenServiceType, null);
+                               if (icd != null)
+                                       inherited.Add (icd);
+                       }
+
+                       foreach (var icd in inherited) {
                                foreach (var od in icd.Operations)
                                        if (!cd.Operations.Any(o => o.Name == od.Name && o.SyncMethod == od.SyncMethod && 
                                                               o.BeginMethod == od.BeginMethod && o.InCallbackContract == od.InCallbackContract))
                                                cd.Operations.Add (od);
                        }
-                       
+
                        FillOperationsForInterface (cd, cd.ContractType, givenServiceType, false);
                        
                        if (cd.CallbackContractType != null)
index 5b4b839bbc8525cb9681ff2d8c3f41e521564e47..7b0db9e30855801faecf1c33673bd4e66a691516 100644 (file)
@@ -88,6 +88,8 @@ namespace System.ServiceModel.Description
 
        abstract class MessageContractImporterInternal : IWsdlImportExtension
        {
+               protected abstract void Init (WsdlImporter importer);
+
                public void ImportContract (WsdlImporter importer,
                        WsdlContractConversionContext context)
                {
@@ -98,6 +100,8 @@ namespace System.ServiceModel.Description
                        if (this.importer != null || this.context != null)
                                throw new SystemException ("INTERNAL ERROR: unexpected recursion of ImportContract method call");
 
+                       Init (importer);
+
                        schema_set_in_use = new XmlSchemaSet ();
                        schema_set_in_use.Add (importer.XmlSchemas);
                        foreach (WSDL wsdl in importer.WsdlDocuments)
@@ -187,8 +191,17 @@ namespace System.ServiceModel.Description
                bool IsOperationImported (PortType pt, Operation op)
                {
                        foreach (OperationMessage opmsg in op.Messages) {
-                               var parts = context.GetMessageDescription (opmsg).Body.Parts;
-                               foreach (var part in parts)
+
+                               var opdsc = context.GetMessageDescription (opmsg);
+
+                               var parts = opdsc.Body.Parts;
+                               var ret = opdsc.Body.ReturnValue;
+
+                               if ((ret != null) &&
+                                   (ret.DataContractImporter != null || ret.XmlSerializationImporter != null))
+                                       return true;
+
+                               foreach (var part in opdsc.Body.Parts)
                                        if (part.DataContractImporter != null || part.XmlSerializationImporter != null)
                                                return true;
                        }
@@ -228,8 +241,14 @@ namespace System.ServiceModel.Description
 
        class DataContractMessageContractImporterInternal : MessageContractImporterInternal
        {
-               XsdDataContractImporter dc_importer = new XsdDataContractImporter ();
+               XsdDataContractImporter dc_importer;
                
+               protected override void Init (WsdlImporter importer)
+               {
+                       if (dc_importer == null)
+                               dc_importer = importer.GetState<XsdDataContractImporter> ();
+               }
+
                protected override void ImportPartsBySchemaElement (QName qname, List<MessagePartDescription> parts, Message msg, MessagePart part)
                {
                        XmlSchemaElement element = (XmlSchemaElement) schema_set_in_use.GlobalElements [qname];
@@ -316,7 +335,7 @@ namespace System.ServiceModel.Description
 
        class XmlSerializerMessageContractImporterInternal : MessageContractImporterInternal
        {
-               CodeCompileUnit ccu = new CodeCompileUnit ();
+               CodeCompileUnit ccu;
                XmlSchemaSet schema_set_cache;
                XmlSchemaImporter schema_importer;
                XmlCodeExporter code_exporter;
@@ -324,6 +343,12 @@ namespace System.ServiceModel.Description
                public CodeCompileUnit CodeCompileUnit {
                        get { return ccu; }
                }
+
+               protected override void Init (WsdlImporter importer)
+               {
+                       if (ccu == null)
+                               ccu = importer.GetState<CodeCompileUnit> ();
+               }
                
                protected override void ImportPartsBySchemaElement (QName qname, List<MessagePartDescription> parts, Message msg, MessagePart msgPart)
                {
index 3e01c1bb68596c7fb611efd5fc78785d57b2f63e..febc85272134b8af9a4b53a75a76294d0c19237f 100644 (file)
@@ -41,6 +41,7 @@ namespace System.ServiceModel.Description
        {
                KeyedByTypeCollection<IPolicyImportExtension> policy_extensions;
                Collection<MetadataConversionError> errors = new Collection<MetadataConversionError> ();
+               Dictionary<Object,Object> state = new Dictionary<Object, Object> ();
 
                internal MetadataImporter (IEnumerable<IPolicyImportExtension> policyImportExtensions)
                {
@@ -65,7 +66,7 @@ namespace System.ServiceModel.Description
                }
 
                public Dictionary<Object,Object> State {
-                       get { throw new NotImplementedException (); }
+                       get { return state; }
                }
 
                public Dictionary<XmlQualifiedName,ContractDescription> KnownContracts {
@@ -75,5 +76,15 @@ namespace System.ServiceModel.Description
                public abstract Collection<ContractDescription> ImportAllContracts ();
 
                public abstract ServiceEndpointCollection ImportAllEndpoints ();
+
+               internal T GetState<T> () where T : class, new ()
+               {
+                       object value;
+                       if (!state.TryGetValue (typeof(T), out value)) {
+                               value = new T ();
+                               state.Add (typeof(T), value);
+                       }
+                       return (T) value;
+               }
        }
 }
index 38b074095b532ed99f8a06999cf52e8114d88057..1b956b1be53a0f2bbf4de6db71bc5fe1e72b8386 100644 (file)
@@ -142,6 +142,22 @@ namespace System.ServiceModel.Dispatcher
                                h.ChannelFaulted (dcc);
                }
 
+               bool IsGenericFaultException (Type type, out Type arg)
+               {
+                       for (; type != null; type = type.BaseType) {
+                               if (!type.IsGenericType)
+                                       continue;
+                               var tdef = type.GetGenericTypeDefinition ();
+                               if (!tdef.Equals (typeof (FaultException<>)))
+                                       continue;
+                               arg = type.GetGenericArguments () [0];
+                               return true;
+                       }
+
+                       arg = null;
+                       return false;
+               }
+
                Message BuildExceptionMessage (MessageProcessingContext mrc, Exception ex, bool includeDetailsInFault)
                {
                        var dr = mrc.OperationContext.EndpointDispatcher.DispatchRuntime;
@@ -155,12 +171,13 @@ namespace System.ServiceModel.Dispatcher
 
                        var req = mrc.IncomingMessage;
 
+                       Type gft;
                        var fe = ex as FaultException;
-                       if (fe != null && fe.GetType ().IsGenericType) {
-                               var t = fe.GetType ().GetGenericArguments () [0];
-                               foreach (var fci in mrc.Operation.FaultContractInfos)
-                                       if (fci.Detail == t)
+                       if (fe != null && IsGenericFaultException (fe.GetType (), out gft)) {
+                               foreach (var fci in mrc.Operation.FaultContractInfos) {
+                                       if (fci.Detail == gft)
                                                return Message.CreateMessage (req.Version, fe.CreateMessageFault (), fci.Action);
+                               }
                        }
 
                        // FIXME: set correct name
index 94bda4bfebb957fe672978dc3e01279a797491f9..1c94718b6b9660f8ff5782d89f8a23b4cbb98c8d 100644 (file)
@@ -47,14 +47,10 @@ namespace System.ServiceModel
                        : base (type)
                {
                        this.channel = channel;
-#if NET_2_1
-                       context_channel_type = typeof (IClientChannel);
-#else
-                       context_channel_type = isDuplex ? typeof (IDuplexContextChannel) : typeof (IClientChannel);
-#endif
+                       this.isDuplex = isDuplex;
                }
-               
-               Type context_channel_type;
+
+               bool isDuplex;
                IInternalContextChannel channel;
                Dictionary<object,object[]> saved_params = new Dictionary<object,object[]> ();
 
@@ -66,10 +62,19 @@ namespace System.ServiceModel
 
                public virtual string TypeName { get; set; }
 
+               static bool CanCastTo<T> (Type type)
+               {
+                       return typeof (T) == type || typeof (T).GetInterfaces ().Contains (type);
+               }
+
                public virtual bool CanCastTo (Type t, object o)
                {
-                       if (t == context_channel_type || context_channel_type.GetInterfaces ().Contains (t))
+                       if (CanCastTo<IClientChannel> (t))
                                return true;
+#if !NET_2_1
+                       if (isDuplex && CanCastTo<IDuplexContextChannel> (t))
+                               return true;
+#endif
                        return false;
                }
                
index ba3f7a9bd373928ed904b8c43c4084ab8249fdae..7e6c0fbf82ec135f342f58581c63b7a4f8ab6c00 100644 (file)
@@ -39,7 +39,12 @@ namespace System.ServiceModel
                HttpProxyCredentialType proxy;
                string realm = String.Empty;
 
-               internal HttpTransportSecurity ()
+#if NET_4_0
+               public
+#else
+               internal
+#endif
+               HttpTransportSecurity ()
                {
                }
 
index e36fa29b25925e54e726c1e5560c34856223dc32..19236d062c9681c9f91effe9d65222360fa7eaee 100644 (file)
@@ -65,18 +65,25 @@ namespace System.ServiceModel
                        get { return instance; }
                }
 
+               static Uri CreateUri (string address)
+               {
+                       if (address.Length > 0 && address[0] == '/')
+                               return new Uri (address.Substring (1), UriKind.Relative);
+                       else
+                               return new Uri (address, UriKind.RelativeOrAbsolute);
+               }
+
                public ServiceEndpoint AddServiceEndpoint (
                        Type implementedContract, Binding binding, string address)
                {
-                       return AddServiceEndpoint (implementedContract, binding,
-                               new Uri (address, UriKind.RelativeOrAbsolute));
+                       return AddServiceEndpoint (implementedContract, binding, CreateUri (address));
                }
 
                public ServiceEndpoint AddServiceEndpoint (
                        Type implementedContract, Binding binding, string address, Uri listenUri)
                {
                        return AddServiceEndpoint (implementedContract, binding,
-                               new Uri (address, UriKind.RelativeOrAbsolute), listenUri);
+                               CreateUri (address), listenUri);
                }
 
                public ServiceEndpoint AddServiceEndpoint (
diff --git a/mcs/class/System.ServiceModel/Test/Resources/DateTime.wsdl b/mcs/class/System.ServiceModel/Test/Resources/DateTime.wsdl
new file mode 100644 (file)
index 0000000..25f7246
--- /dev/null
@@ -0,0 +1 @@
+<?xml version="1.0" encoding="utf-8"?><wsdl:definitions name="MyService" targetNamespace="http://tempuri.org/" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:wsam="http://www.w3.org/2007/05/addressing/metadata" xmlns:wsx="http://schemas.xmlsoap.org/ws/2004/09/mex" xmlns:wsap="http://schemas.xmlsoap.org/ws/2004/08/addressing/policy" xmlns:msc="http://schemas.microsoft.com/ws/2005/12/wsdl/contract" xmlns:wsp="http://schemas.xmlsoap.org/ws/2004/09/policy" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:tns="http://tempuri.org/" xmlns:wsa10="http://www.w3.org/2005/08/addressing" xmlns:wsaw="http://www.w3.org/2006/05/addressing/wsdl" xmlns:wsa="http://schemas.xmlsoap.org/ws/2004/08/addressing"><wsdl:types><xs:schema elementFormDefault="qualified" targetNamespace="http://tempuri.org/" xmlns:xs="http://www.w3.org/2001/XMLSchema"><xs:element name="GetDate"><xs:complexType><xs:sequence/></xs:complexType></xs:element><xs:element name="GetDateResponse"><xs:complexType><xs:sequence><xs:element minOccurs="0" name="GetDateResult" type="xs:dateTime"/></xs:sequence></xs:complexType></xs:element></xs:schema><xs:schema attributeFormDefault="qualified" elementFormDefault="qualified" targetNamespace="http://schemas.microsoft.com/2003/10/Serialization/" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:tns="http://schemas.microsoft.com/2003/10/Serialization/"><xs:element name="anyType" nillable="true" type="xs:anyType"/><xs:element name="anyURI" nillable="true" type="xs:anyURI"/><xs:element name="base64Binary" nillable="true" type="xs:base64Binary"/><xs:element name="boolean" nillable="true" type="xs:boolean"/><xs:element name="byte" nillable="true" type="xs:byte"/><xs:element name="dateTime" nillable="true" type="xs:dateTime"/><xs:element name="decimal" nillable="true" type="xs:decimal"/><xs:element name="double" nillable="true" type="xs:double"/><xs:element name="float" nillable="true" type="xs:float"/><xs:element name="int" nillable="true" type="xs:int"/><xs:element name="long" nillable="true" type="xs:long"/><xs:element name="QName" nillable="true" type="xs:QName"/><xs:element name="short" nillable="true" type="xs:short"/><xs:element name="string" nillable="true" type="xs:string"/><xs:element name="unsignedByte" nillable="true" type="xs:unsignedByte"/><xs:element name="unsignedInt" nillable="true" type="xs:unsignedInt"/><xs:element name="unsignedLong" nillable="true" type="xs:unsignedLong"/><xs:element name="unsignedShort" nillable="true" type="xs:unsignedShort"/><xs:element name="char" nillable="true" type="tns:char"/><xs:simpleType name="char"><xs:restriction base="xs:int"/></xs:simpleType><xs:element name="duration" nillable="true" type="tns:duration"/><xs:simpleType name="duration"><xs:restriction base="xs:duration"><xs:pattern value="\-?P(\d*D)?(T(\d*H)?(\d*M)?(\d*(\.\d*)?S)?)?"/><xs:minInclusive value="-P10675199DT2H48M5.4775808S"/><xs:maxInclusive value="P10675199DT2H48M5.4775807S"/></xs:restriction></xs:simpleType><xs:element name="guid" nillable="true" type="tns:guid"/><xs:simpleType name="guid"><xs:restriction base="xs:string"><xs:pattern value="[\da-fA-F]{8}-[\da-fA-F]{4}-[\da-fA-F]{4}-[\da-fA-F]{4}-[\da-fA-F]{12}"/></xs:restriction></xs:simpleType><xs:attribute name="FactoryType" type="xs:QName"/><xs:attribute name="Id" type="xs:ID"/><xs:attribute name="Ref" type="xs:IDREF"/></xs:schema></wsdl:types><wsdl:message name="IMyService_GetDate_InputMessage"><wsdl:part name="parameters" element="tns:GetDate"/></wsdl:message><wsdl:message name="IMyService_GetDate_OutputMessage"><wsdl:part name="parameters" element="tns:GetDateResponse"/></wsdl:message><wsdl:portType name="IMyService"><wsdl:operation name="GetDate"><wsdl:input wsaw:Action="http://tempuri.org/IMyService/GetDate" message="tns:IMyService_GetDate_InputMessage"/><wsdl:output wsaw:Action="http://tempuri.org/IMyService/GetDateResponse" message="tns:IMyService_GetDate_OutputMessage"/></wsdl:operation></wsdl:portType><wsdl:binding name="defaultEndpoint" type="tns:IMyService"><soap:binding transport="http://schemas.xmlsoap.org/soap/http"/><wsdl:operation name="GetDate"><soap:operation soapAction="http://tempuri.org/IMyService/GetDate" style="document"/><wsdl:input><soap:body use="literal"/></wsdl:input><wsdl:output><soap:body use="literal"/></wsdl:output></wsdl:operation></wsdl:binding><wsdl:service name="MyService"><wsdl:port name="defaultEndpoint" binding="tns:defaultEndpoint"><soap:address location="http://provcon-faust/TestWCF/MyService.svc"/></wsdl:port></wsdl:service></wsdl:definitions>
\ No newline at end of file
index e43c837d470ea296aaabd01062087b38e78c58c3..f6c297d3c9ba9f6cdefa62f67511f99c33bd4b49 100644 (file)
@@ -34,6 +34,7 @@ using System.Reflection;
 using System.ServiceModel;
 using System.ServiceModel.Channels;
 using System.ServiceModel.Description;
+using System.ServiceModel.Dispatcher;
 using NUnit.Framework;
 
 namespace MonoTests.System.ServiceModel.Description
@@ -948,5 +949,65 @@ namespace MonoTests.System.ServiceModel.Description
                {
                }
 
+               [Test]
+               public void TestInterfaceInheritance ()
+               {
+                       var cd = ContractDescription.GetContract (typeof (InterfaceInheritance));
+                       var inherited = cd.GetInheritedContracts ();
+                       Assert.AreEqual (1, inherited.Count, "#1");
+               }
+
+               public class MyWebGetAttribute : Attribute, IOperationBehavior
+               {
+                       void IOperationBehavior.AddBindingParameters (OperationDescription operation, BindingParameterCollection parameters)
+                       {
+                               ;
+                       }
+                       
+                       void IOperationBehavior.ApplyClientBehavior (OperationDescription operation, ClientOperation client)
+                       {
+                               ;
+                       }
+                       
+                       void IOperationBehavior.ApplyDispatchBehavior (OperationDescription operation, DispatchOperation service)
+                       {
+                               ;
+                       }
+                       
+                       void IOperationBehavior.Validate (OperationDescription operation)
+                       {
+                               ;
+                       }
+               }
+
+               [ServiceBehavior(InstanceContextMode = InstanceContextMode.Single)]
+               public class InterfaceInheritance : IInterfaceInheritance
+               {
+                       public string Get ()
+                       {
+                               throw new NotImplementedException ();
+                       }
+                       
+                       public string Test ()
+                       {
+                               throw new NotImplementedException ();
+                       }
+               }
+               
+               [ServiceContract]
+               public interface IInterfaceInheritance: IBaseInterface
+               {
+                       [OperationContract]
+                       [MyWebGet]
+                       string Test ();
+               }
+               
+               [ServiceContract]
+               public interface IBaseInterface
+               {
+                       [OperationContract]
+                       [MyWebGet]
+                       string Get ();
+               }
        }
 }
index 970640fa1a6f62b7d4c77b6085ec2b4d2919fac8..24630a2826307df14d71e7f7d7fce1debea457c7 100644 (file)
@@ -596,5 +596,21 @@ namespace MonoTests.System.ServiceModel.Description
                        
                        // FIXME: examine resulting operations.
                }
+
+               [Test]
+               [Ignore ("FIXME: Using external source")]
+               public void ImportMethodWithDateTime ()
+               {
+                       var ms = GetMetadataSetFromWsdl ("Test/Resources/DateTime.wsdl");
+                       var imp = new WsdlImporter (ms);
+                       var cg = new ServiceContractGenerator ();
+                       var cd = imp.ImportAllContracts () [0];
+                       cg.GenerateServiceContractType (cd);
+                       var sw = new StringWriter ();
+                       new CSharpCodeProvider ().GenerateCodeFromCompileUnit (
+                               cg.TargetCompileUnit, sw, null);
+                       // sort of hacky test
+                       Assert.IsTrue (sw.ToString ().IndexOf ("System.DateTime GetDate") > 0, "#1");
+               }
        }
 }
index 37b1210c88c6d4ac931b4f9cffc456ea64dff8f4..e8881b27d8a3d1771c1372d0de6d3de5abce9f95 100644 (file)
@@ -88,17 +88,38 @@ namespace MonoTests.System.ServiceModel.Dispatcher
                public void FaultContractInfos ()
                {
                        var host = new ServiceHost (typeof (TestFaultContract));
-                       host.Description.Behaviors.Find<ServiceDebugBehavior> ().IncludeExceptionDetailInFaults = true;
+                       host.Description.Behaviors.Find<ServiceDebugBehavior> ().IncludeExceptionDetailInFaults = false;
                        host.AddServiceEndpoint (typeof (ITestFaultContract), new BasicHttpBinding (), new Uri ("http://localhost:37564"));
                        host.Open ();
                        try {
                                var cf = new ChannelFactory<ITestFaultContract> (new BasicHttpBinding (), new EndpointAddress ("http://localhost:37564"));
                                var cli = cf.CreateChannel ();
-                               cli.Run ("test");
-                       } catch (FaultException<PrivateAffairError> ex) {
-                               var p  = ex.Detail;
-                               Assert.AreEqual (5, p.ErrorCode, "#1");
-                               Assert.AreEqual ("foobarerror", p.Text, "#2");
+                               try {
+                                       cli.Run ("default");
+                                       Assert.Fail ("#1");
+                               } catch (FaultException<PrivateAffairError> ex) {
+                                       var p  = ex.Detail;
+                                       Assert.AreEqual (5, p.ErrorCode, "#2");
+                                       Assert.AreEqual ("foobarerror", p.Text, "#3");
+                               }
+
+                               try {
+                                       cli.Run ("deriveddata");
+                                       Assert.Fail ("#4");
+                               } catch (Exception ex) {
+                                       // The type must be explicitly listed in the [FaultContract],
+                                       // it is not allowed to use a subclass of the exception data type.
+                                       Assert.AreEqual (typeof (FaultException), ex.GetType (), "#5");
+                               }
+
+                               try {
+                                       cli.Run ("derivedexception");
+                                       Assert.Fail ("#6");
+                               } catch (Exception ex) {
+                                       // However, it is allowed to derive from FaultException<T>, provided
+                                       // that T is explicitly listed in [FaultContract].  Bug #7177.
+                                       Assert.AreEqual (typeof (FaultException<PrivateAffairError>), ex.GetType (), "#7");
+                               }
                        } finally {
                                host.Close ();
                        }
@@ -125,7 +146,14 @@ namespace MonoTests.System.ServiceModel.Dispatcher
                                Assert.AreEqual (1, dop.FaultContractInfos.Count, "s#2");
                                var fci = dop.FaultContractInfos [0];
                                Assert.AreEqual (typeof (PrivateAffairError), fci.Detail, "s#3");
-                               throw new FaultException<PrivateAffairError> (new PrivateAffairError () { ErrorCode = 5, Text = "foobarerror" });
+                               if (input.Equals ("default"))
+                                       throw new FaultException<PrivateAffairError> (new PrivateAffairError () { ErrorCode = 5, Text = "foobarerror" });
+                               else if (input.Equals ("deriveddata"))
+                                       throw new FaultException<DerivedPrivateAffairError> (new DerivedPrivateAffairError () { ErrorCode = 5, Text = "foobarerror" });
+                               else if (input.Equals ("derivedexception"))
+                                       throw new DerivedFaultException (new PrivateAffairError () { ErrorCode = 5, Text = "foobarerror" });
+                               else
+                                       throw new FaultException ("Invalid operation");
                        }
                }
 
@@ -137,5 +165,17 @@ namespace MonoTests.System.ServiceModel.Dispatcher
                        [DataMember]
                        public string Text { get; set; }
                }
+
+               [DataContract]
+               class DerivedPrivateAffairError : PrivateAffairError
+               {
+               }
+
+               class DerivedFaultException : FaultException<PrivateAffairError>
+               {
+                       public DerivedFaultException (PrivateAffairError error)
+                               : base (error)
+                       { }
+               }
        }
 }
\ No newline at end of file
index 49b3b3500b18572a6553ea408f4ae84d2c04c3ed..57e03d8e7b4fa9e487ea5c0c18e84c479ded4e0d 100644 (file)
@@ -248,6 +248,21 @@ namespace MonoTests.System.ServiceModel
                        host.AddServiceEndpoint ("ISuchTypeDoesNotExist", new BasicHttpBinding (), "rel");
                }
 
+               [Test]
+               public void AddServiceEndpoint7 ()
+               {
+                       ServiceHost host = new ServiceHost (typeof (Foo), new Uri ("http://localhost/echo"));
+                       var a = host.AddServiceEndpoint (typeof (Foo), new BasicHttpBinding (), "a");
+                       Console.WriteLine (a.Address);
+                       Assert.AreEqual ("http", a.Address.Uri.Scheme, "#1");
+                       Assert.AreEqual ("http://localhost/echo/a", a.Address.Uri.AbsoluteUri, "#2");
+
+                       var b = host.AddServiceEndpoint (typeof (Foo), new BasicHttpBinding (), "/b");
+                       Console.WriteLine (b.Address);
+                       Assert.AreEqual ("http", b.Address.Uri.Scheme, "#3");
+                       Assert.AreEqual ("http://localhost/echo/b", b.Address.Uri.AbsoluteUri, "#4");
+               }
+               
                [Test]
                [ExpectedException (typeof (InvalidOperationException))]
                public void AddServiceEndpointMexWithNoImpl ()
index bef506c1f05dccc526f7a299498ee28504efb5c9..d39815ed61a3ccb097d7154be74eccf31efee4f7 100644 (file)
@@ -1,18 +1,18 @@
-<?xml version="1.0" encoding="utf-8"?>\r
+<?xml version="1.0" encoding="utf-8"?>\r
 <Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
   <PropertyGroup>\r
     <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
     <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
     <ProductVersion>9.0.30729</ProductVersion>\r
     <SchemaVersion>2.0</SchemaVersion>\r
-    <ProjectGuid>{C1445A71-BF0F-4604-B54F-E83B1EA0F38B}</ProjectGuid>\r
+    <ProjectGuid>{155AEF28-C81F-405D-9072-9D52780E3E70}</ProjectGuid>\r
     <OutputType>Library</OutputType>\r
     <NoWarn>1699</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_5</OutputPath>\r
     <NoStdLib>true</NoStdLib>\r
+    \r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
-    <RootNamespace>\r
-    </RootNamespace>\r
+    <RootNamespace></RootNamespace>\r
     <AssemblyName>System.Threading.Tasks.Dataflow</AssemblyName>\r
     <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
     <FileAlignment>512</FileAlignment>\r
@@ -31,7 +31,7 @@
     <AdditionalLibPaths>./../../class/lib/net_4_5</AdditionalLibPaths>\r
   </PropertyGroup>\r
   <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
-    <PlatformTarget>AnyCPU</PlatformTarget>\r
+    <PlatformTarget>AnyCPU</PlatformTarget>  \r
     <DebugType>pdbonly</DebugType>\r
     <NoWarn>1699</NoWarn>\r
     <Optimize>true</Optimize>\r
   </PropertyGroup>\r
   <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
   <ItemGroup>\r
-    <Compile Include="..\..\build\common\Consts.cs" />\r
-    <Compile Include="..\..\build\common\Locale.cs" />\r
-    <Compile Include="..\..\build\common\MonoTODOAttribute.cs" />\r
-    <Compile Include="Assembly\AssemblyInfo.cs" />\r
-    <Compile Include="System.Threading.Tasks.Dataflow\AsyncExecutingMessageBox.cs" />\r
-    <Compile Include="System.Threading.Tasks.Dataflow\BroadcastOutgoingQueue.cs" />\r
-    <Compile Include="System.Threading.Tasks.Dataflow\ExecutingMessageBoxBase.cs" />\r
-    <Compile Include="System.Threading.Tasks.Dataflow\NullTargetBlock.cs" />\r
-    <Compile Include="System.Threading.Tasks.Dataflow\OutgoingQueueBase.cs" />\r
-    <Compile Include="System.Threading.Tasks.Dataflow\OutputAvailableBlock.cs" />\r
-    <Compile Include="System.Threading.Tasks.Dataflow\PredicateBlock.cs" />\r
-    <Compile Include="System.Threading.Tasks.Dataflow\SendBlock.cs" />\r
-    <Compile Include="System.Threading.Tasks.Dataflow\BatchedJoinBlock.cs" />\r
-    <Compile Include="System.Threading.Tasks.Dataflow\BatchedJoinBlock`3.cs" />\r
-    <Compile Include="System.Threading.Tasks.Dataflow\DataflowLinkOptions.cs" />\r
-    <Compile Include="System.Threading.Tasks.Dataflow\ExecutingMessageBox.cs" />\r
-    <Compile Include="System.Threading.Tasks.Dataflow\DataflowBlockOptions.cs" />\r
-    <Compile Include="System.Threading.Tasks.Dataflow\DataflowMessageHeader.cs" />\r
-    <Compile Include="System.Threading.Tasks.Dataflow\DataflowMessageStatus.cs" />\r
-    <Compile Include="System.Threading.Tasks.Dataflow\ExecutionDataflowBlockOptions.cs" />\r
-    <Compile Include="System.Threading.Tasks.Dataflow\GroupingDataflowBlockOptions.cs" />\r
-    <Compile Include="System.Threading.Tasks.Dataflow\IDataflowBlock.cs" />\r
-    <Compile Include="System.Threading.Tasks.Dataflow\IPropagatorBlock.cs" />\r
-    <Compile Include="System.Threading.Tasks.Dataflow\IReceivableSourceBlock.cs" />\r
-    <Compile Include="System.Threading.Tasks.Dataflow\ISourceBlock.cs" />\r
-    <Compile Include="System.Threading.Tasks.Dataflow\ITargetBlock.cs" />\r
-    <Compile Include="System.Threading.Tasks.Dataflow\CompletionHelper.cs" />\r
-    <Compile Include="System.Threading.Tasks.Dataflow\JoinTarget.cs" />\r
-    <Compile Include="System.Threading.Tasks.Dataflow\MessageBox.cs" />\r
-    <Compile Include="System.Threading.Tasks.Dataflow\OutgoingQueue.cs" />\r
-    <Compile Include="System.Threading.Tasks.Dataflow\NameHelper.cs" />\r
-    <Compile Include="System.Threading.Tasks.Dataflow\PassingMessageBox.cs" />\r
-    <Compile Include="..\corlib\System.Threading\AtomicBoolean.cs" />\r
-    <Compile Include="System.Threading.Tasks.Dataflow\ActionBlock.cs" />\r
-    <Compile Include="System.Threading.Tasks.Dataflow\BatchBlock.cs" />\r
-    <Compile Include="System.Threading.Tasks.Dataflow\BroadcastBlock.cs" />\r
-    <Compile Include="System.Threading.Tasks.Dataflow\BufferBlock.cs" />\r
-    <Compile Include="System.Threading.Tasks.Dataflow\ChooserBlock.cs" />\r
-    <Compile Include="System.Threading.Tasks.Dataflow\DataflowBlock.cs" />\r
-    <Compile Include="System.Threading.Tasks.Dataflow\JoinBlock.cs" />\r
-    <Compile Include="System.Threading.Tasks.Dataflow\JoinBlock`3.cs" />\r
-    <Compile Include="System.Threading.Tasks.Dataflow\ObservableDataflowBlock.cs" />\r
-    <Compile Include="System.Threading.Tasks.Dataflow\ObserverDataflowBlock.cs" />\r
-    <Compile Include="System.Threading.Tasks.Dataflow\PropagatorWrapperBlock.cs" />\r
-    <Compile Include="System.Threading.Tasks.Dataflow\ReceiveBlock.cs" />\r
-    <Compile Include="System.Threading.Tasks.Dataflow\TargetCollection.cs" />\r
-    <Compile Include="System.Threading.Tasks.Dataflow\TransformBlock.cs" />\r
-    <Compile Include="System.Threading.Tasks.Dataflow\TransformManyBlock.cs" />\r
-    <Compile Include="System.Threading.Tasks.Dataflow\WriteOnceBlock.cs" />\r
+   <Compile Include="..\..\build\common\Consts.cs" />
+   <Compile Include="..\..\build\common\Locale.cs" />
+   <Compile Include="..\..\build\common\MonoTODOAttribute.cs" />
+   <Compile Include="Assembly\AssemblyInfo.cs" />
+   <Compile Include="System.Threading.Tasks.Dataflow\ExecutingMessageBox.cs" />
+   <Compile Include="System.Threading.Tasks.Dataflow\DataflowBlockOptions.cs" />
+   <Compile Include="System.Threading.Tasks.Dataflow\DataflowMessageHeader.cs" />
+   <Compile Include="System.Threading.Tasks.Dataflow\DataflowMessageStatus.cs" />
+   <Compile Include="System.Threading.Tasks.Dataflow\ExecutionDataflowBlockOptions.cs" />
+   <Compile Include="System.Threading.Tasks.Dataflow\GroupingDataflowBlockOptions.cs" />
+   <Compile Include="System.Threading.Tasks.Dataflow\DataflowLinkOptions.cs" />
+   <Compile Include="System.Threading.Tasks.Dataflow\IDataflowBlock.cs" />
+   <Compile Include="System.Threading.Tasks.Dataflow\IPropagatorBlock.cs" />
+   <Compile Include="System.Threading.Tasks.Dataflow\IReceivableSourceBlock.cs" />
+   <Compile Include="System.Threading.Tasks.Dataflow\ISourceBlock.cs" />
+   <Compile Include="System.Threading.Tasks.Dataflow\ITargetBlock.cs" />
+   <Compile Include="System.Threading.Tasks.Dataflow\CompletionHelper.cs" />
+   <Compile Include="System.Threading.Tasks.Dataflow\MessageBox.cs" />
+   <Compile Include="System.Threading.Tasks.Dataflow\OutgoingQueueBase.cs" />
+   <Compile Include="System.Threading.Tasks.Dataflow\OutgoingQueue.cs" />
+   <Compile Include="System.Threading.Tasks.Dataflow\BroadcastOutgoingQueue.cs" />
+   <Compile Include="System.Threading.Tasks.Dataflow\PassingMessageBox.cs" />
+   <Compile Include="System.Threading.Tasks.Dataflow\NameHelper.cs" />
+   <Compile Include="System.Threading.Tasks.Dataflow\TargetCollection.cs" />
+   <Compile Include="System.Threading.Tasks.Dataflow\JoinTarget.cs" />
+   <Compile Include="..\corlib\System.Threading\AtomicBoolean.cs" />
+   <Compile Include="System.Threading.Tasks.Dataflow\ActionBlock.cs" />
+   <Compile Include="System.Threading.Tasks.Dataflow\BatchBlock.cs" />
+   <Compile Include="System.Threading.Tasks.Dataflow\BatchedJoinBlock.cs" />
+   <Compile Include="System.Threading.Tasks.Dataflow\BatchedJoinBlock`3.cs" />
+   <Compile Include="System.Threading.Tasks.Dataflow\BroadcastBlock.cs" />
+   <Compile Include="System.Threading.Tasks.Dataflow\BufferBlock.cs" />
+   <Compile Include="System.Threading.Tasks.Dataflow\ChooserBlock.cs" />
+   <Compile Include="System.Threading.Tasks.Dataflow\DataflowBlock.cs" />
+   <Compile Include="System.Threading.Tasks.Dataflow\JoinBlock.cs" />
+   <Compile Include="System.Threading.Tasks.Dataflow\JoinBlock`3.cs" />
+   <Compile Include="System.Threading.Tasks.Dataflow\ObservableDataflowBlock.cs" />
+   <Compile Include="System.Threading.Tasks.Dataflow\ObserverDataflowBlock.cs" />
+   <Compile Include="System.Threading.Tasks.Dataflow\PropagatorWrapperBlock.cs" />
+   <Compile Include="System.Threading.Tasks.Dataflow\ReceiveBlock.cs" />
+   <Compile Include="System.Threading.Tasks.Dataflow\TransformBlock.cs" />
+   <Compile Include="System.Threading.Tasks.Dataflow\TransformManyBlock.cs" />
+   <Compile Include="System.Threading.Tasks.Dataflow\WriteOnceBlock.cs" />
+   <Compile Include="System.Threading.Tasks.Dataflow\SendBlock.cs" />
+   <Compile Include="System.Threading.Tasks.Dataflow\PredicateBlock.cs" />
+   <Compile Include="System.Threading.Tasks.Dataflow\OutputAvailableBlock.cs" />
+   <Compile Include="System.Threading.Tasks.Dataflow\NullTargetBlock.cs" />
+   <Compile Include="System.Threading.Tasks.Dataflow\AsyncExecutingMessageBox.cs" />
+   <Compile Include="System.Threading.Tasks.Dataflow\ExecutingMessageBoxBase.cs" />
+\r
   </ItemGroup>\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>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent>\r
-    </PreBuildEvent>\r
+    <PreBuildEvent></PreBuildEvent>\r
   </PropertyGroup>\r
   <ItemGroup>\r
-    <Reference Include="mscorlib.dll">\r
-      <SpecificVersion>False</SpecificVersion>\r
-      <HintPath>mscorlib.dll</HintPath>\r
-    </Reference>\r
-    <Reference Include="mscorlib.dll">\r
-      <SpecificVersion>False</SpecificVersion>\r
-      <HintPath>mscorlib.dll</HintPath>\r
-    </Reference>\r
-    <Reference Include="System.Core.dll">\r
-      <SpecificVersion>False</SpecificVersion>\r
-      <HintPath>System.Core.dll</HintPath>\r
-    </Reference>\r
-    <Reference Include="System.dll">\r
-      <SpecificVersion>False</SpecificVersion>\r
-      <HintPath>System.dll</HintPath>\r
-    </Reference>\r
+    <Reference Include="mscorlib.dll">
+      <SpecificVersion>False</SpecificVersion>
+      <HintPath>mscorlib.dll</HintPath>
+    </Reference>
+    <Reference Include="mscorlib.dll">
+      <SpecificVersion>False</SpecificVersion>
+      <HintPath>mscorlib.dll</HintPath>
+    </Reference>
+    <Reference Include="System.Core.dll">
+      <SpecificVersion>False</SpecificVersion>
+      <HintPath>System.Core.dll</HintPath>
+    </Reference>
+    <Reference Include="System.dll">
+      <SpecificVersion>False</SpecificVersion>
+      <HintPath>System.dll</HintPath>
+    </Reference>
+\r
   </ItemGroup>\r
   <ItemGroup>\r
     <Folder Include="Properties\" />\r
   </ItemGroup>\r
-</Project>
\ No newline at end of file
+  \r
+</Project>\r
+
index 078375cf7f34915dd131825373e70b6d273035e2..b2ea73a8f887130da20acf39a04776defe359c0f 100644 (file)
@@ -1,4 +1,4 @@
-<?xml version="1.0" encoding="utf-8"?>\r
+<?xml version="1.0" encoding="utf-8"?>\r
 <Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
   <PropertyGroup>\r
     <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
@@ -10,8 +10,9 @@
     <NoWarn>1699</NoWarn>\r
     <OutputPath>.\</OutputPath>\r
     <NoStdLib>true</NoStdLib>\r
+    \r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
-    <RootNamespace>MonoTests</RootNamespace>\r
+    <RootNamespace></RootNamespace>\r
     <AssemblyName>System.Threading.Tasks.Dataflow_test_net_4_5</AssemblyName>\r
     <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
     <FileAlignment>512</FileAlignment>\r
   </PropertyGroup>\r
   <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
   <ItemGroup>\r
-    <Compile Include="..\corlib\System.Threading\AtomicBoolean.cs">\r
-      <Link>AtomicBoolean.cs</Link>\r
-    </Compile>\r
-    <Compile Include="Test\Blocks.cs" />\r
-    <Compile Include="System.Threading.Tasks.Dataflow\CompletionHelper.cs" />\r
-    <Compile Include="Test\AssertEx.cs" />\r
-    <Compile Include="Test\System.Threading.Tasks.Dataflow\ChooseTest.cs" />\r
-    <Compile Include="Test\System.Threading.Tasks.Dataflow\EncapsulateTest.cs" />\r
-    <Compile Include="Test\System.Threading.Tasks.Dataflow\InvalidArgumentsTest.cs" />\r
-    <Compile Include="Test\System.Threading.Tasks.Dataflow\OutputAvailableTest.cs" />\r
-    <Compile Include="Test\System.Threading.Tasks.Dataflow\GreedyTest.cs" />\r
-    <Compile Include="Test\System.Threading.Tasks.Dataflow\PropagateCompletionTest.cs" />\r
-    <Compile Include="Test\System.Threading.Tasks.Dataflow\ReceivingTest.cs" />\r
-    <Compile Include="Test\TestScheduler.cs" />\r
-    <Compile Include="Test\System.Threading.Tasks.Dataflow\BoundedCapacityTest.cs" />\r
-    <Compile Include="Test\System.Threading.Tasks.Dataflow\ExecutionBlocksTest.cs" />\r
-    <Compile Include="Test\System.Threading.Tasks.Dataflow\BatchedJoinBlockTest.cs" />\r
-    <Compile Include="Test\System.Threading.Tasks.Dataflow\BatchedJoinBlock`3Test.cs" />\r
+   <Compile Include="Test\TestScheduler.cs" />
+   <Compile Include="Test\AssertEx.cs" />
+   <Compile Include="Test\Blocks.cs" />
    <Compile Include="Test\System.Threading.Tasks.Dataflow\DataflowMessageHeaderTest.cs" />
    <Compile Include="Test\System.Threading.Tasks.Dataflow\CompletionHelperTest.cs" />
+   <Compile Include="Test\System.Threading.Tasks.Dataflow\CompletionTest.cs" />
+   <Compile Include="Test\System.Threading.Tasks.Dataflow\ReceivingTest.cs" />
+   <Compile Include="Test\System.Threading.Tasks.Dataflow\OptionsTest.cs" />
+   <Compile Include="Test\System.Threading.Tasks.Dataflow\BoundedCapacityTest.cs" />
+   <Compile Include="Test\System.Threading.Tasks.Dataflow\GreedyTest.cs" />
+   <Compile Include="Test\System.Threading.Tasks.Dataflow\PropagateCompletionTest.cs" />
+   <Compile Include="Test\System.Threading.Tasks.Dataflow\ExecutionBlocksTest.cs" />
    <Compile Include="Test\System.Threading.Tasks.Dataflow\ActionBlockTest.cs" />
    <Compile Include="Test\System.Threading.Tasks.Dataflow\BatchBlockTest.cs" />
+   <Compile Include="Test\System.Threading.Tasks.Dataflow\BatchedJoinBlockTest.cs" />
+   <Compile Include="Test\System.Threading.Tasks.Dataflow\BatchedJoinBlock`3Test.cs" />
    <Compile Include="Test\System.Threading.Tasks.Dataflow\BroadcastBlockTest.cs" />
    <Compile Include="Test\System.Threading.Tasks.Dataflow\BufferBlockTest.cs" />
-   <Compile Include="Test\System.Threading.Tasks.Dataflow\CompletionTest.cs" />
    <Compile Include="Test\System.Threading.Tasks.Dataflow\DataflowBlockTest.cs" />
    <Compile Include="Test\System.Threading.Tasks.Dataflow\JoinBlockTest.cs" />
    <Compile Include="Test\System.Threading.Tasks.Dataflow\JoinBlock`3Test.cs" />
-    <Compile Include="Test\System.Threading.Tasks.Dataflow\OptionsTest.cs" />\r
    <Compile Include="Test\System.Threading.Tasks.Dataflow\TransformBlockTest.cs" />
    <Compile Include="Test\System.Threading.Tasks.Dataflow\TransformManyBlockTest.cs" />
    <Compile Include="Test\System.Threading.Tasks.Dataflow\WriteOnceBlockTest.cs" />
+   <Compile Include="Test\System.Threading.Tasks.Dataflow\InvalidArgumentsTest.cs" />
+   <Compile Include="Test\System.Threading.Tasks.Dataflow\OutputAvailableTest.cs" />
+   <Compile Include="Test\System.Threading.Tasks.Dataflow\EncapsulateTest.cs" />
+   <Compile Include="Test\System.Threading.Tasks.Dataflow\ChooseTest.cs" />
+   <Compile Include="System.Threading.Tasks.Dataflow\CompletionHelper.cs" />
+   <Compile Include="..\corlib\System.Threading\AtomicBoolean.cs" />
+\r
   </ItemGroup>\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
@@ -82,8 +82,7 @@
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent>\r
-    </PreBuildEvent>\r
+    <PreBuildEvent></PreBuildEvent>\r
   </PropertyGroup>\r
   <ItemGroup>\r
     <Reference Include="mscorlib.dll">
       <SpecificVersion>False</SpecificVersion>
       <HintPath>./../../class/lib/net_4_5/System.Threading.Tasks.Dataflow.dll</HintPath>
     </Reference>
-    <Reference Include="System" />\r
     <Reference Include="System.Core.dll">
       <SpecificVersion>False</SpecificVersion>
       <HintPath>System.Core.dll</HintPath>
     </Reference>
+    <Reference Include="System.dll">
+      <SpecificVersion>False</SpecificVersion>
+      <HintPath>System.dll</HintPath>
+    </Reference>
     <Reference Include="nunit.framework" />
+\r
   </ItemGroup>\r
   <ItemGroup>\r
     <Folder Include="Properties\" />\r
   </ItemGroup>\r
-</Project>
+  \r
+</Project>\r
+
diff --git a/mcs/class/System.Web.Http.SelfHost/Makefile b/mcs/class/System.Web.Http.SelfHost/Makefile
new file mode 100644 (file)
index 0000000..a435b0a
--- /dev/null
@@ -0,0 +1,22 @@
+thisdir = class/System.Web.Http.SelfHost
+SUBDIRS = 
+include ../../build/rules.make
+
+LIBRARY = System.Web.Http.SelfHost.dll
+
+System.Web.Http.SelfHost.Properties.CommonWebApiResources.resources: ../../../external/aspnetwebstack/src/Common/CommonWebApiResources.resx
+       $(RESGEN) "$<" "$@"
+       
+System.Web.Http.SelfHost.Properties.SRResources.resources: ../../../external/aspnetwebstack/src/System.Web.Http.SelfHost/Properties/SRResources.resx
+       $(RESGEN) "$<" "$@"
+
+
+LIB_MCS_FLAGS = -r:System.Core.dll -r:System.dll -r:System.Xml.dll -r:System.Configuration.dll -r:System.Net.Http.dll \
+               -r:System.Runtime.Serialization.dll -r:System.ServiceModel.dll -r:System.IdentityModel.dll \
+               -r:System.Web.Http.dll -r:System.Net.Http.Formatting.dll \
+               -d:ASPNETMVC -keyfile:../winfx.pub -delaysign
+
+include ../../build/library.make
+
+$(the_lib): System.Web.Http.SelfHost.Properties.CommonWebApiResources.resources \
+       System.Web.Http.SelfHost.Properties.SRResources.resources
\ No newline at end of file
diff --git a/mcs/class/System.Web.Http.SelfHost/System.Web.Http.SelfHost-net_4_5.csproj b/mcs/class/System.Web.Http.SelfHost/System.Web.Http.SelfHost-net_4_5.csproj
new file mode 100644 (file)
index 0000000..626cb43
--- /dev/null
@@ -0,0 +1,150 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{155AEF28-C81F-405D-9072-9D52780E3E70}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699</NoWarn>\r
+    <OutputPath>./../../class/lib/net_4_5</OutputPath>\r
+    <NoStdLib>true</NoStdLib>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace></RootNamespace>\r
+    <AssemblyName>System.Web.Http.SelfHost</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+    <!-- Filter out System.Core added by: Microsoft.NETFramework.props  -->\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <PlatformTarget>AnyCPU</PlatformTarget>\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>DEBUG;TRACE;NET_1_1;NET_2_0;NET_3_0;NET_3_5;NET_4_0;NET_4_5;ASPNETMVC</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+    <AdditionalLibPaths>./../../class/lib/net_4_5</AdditionalLibPaths>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <PlatformTarget>AnyCPU</PlatformTarget>  \r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_1_1;NET_2_0;NET_3_0;NET_3_5;NET_4_0;NET_4_5;ASPNETMVC</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+    <AdditionalLibPaths>./../../class/lib/net_4_5</AdditionalLibPaths>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+   <Compile Include="..\..\..\external\aspnetwebstack\src\CommonAssemblyInfo.cs" />
+   <Compile Include="..\..\..\external\aspnetwebstack\src\TransparentCommonAssemblyInfo.cs" />
+   <Compile Include="..\..\..\external\aspnetwebstack\src\Common\DictionaryExtensions.cs" />
+   <Compile Include="..\..\..\external\aspnetwebstack\src\Common\Error.cs" />
+   <Compile Include="..\..\..\external\aspnetwebstack\src\Common\HttpMethodHelper.cs" />
+   <Compile Include="..\..\..\external\aspnetwebstack\src\Common\TaskHelpers.cs" />
+   <Compile Include="..\..\..\external\aspnetwebstack\src\Common\TaskHelpersExtensions.cs" />
+   <Compile Include="..\..\..\external\aspnetwebstack\src\Common\CommonWebApiResources.Designer.cs" />
+   <Compile Include="..\..\..\external\aspnetwebstack\src\System.Web.Http.SelfHost\HttpRequestMessageExtensions.cs" />
+   <Compile Include="..\..\..\external\aspnetwebstack\src\System.Web.Http.SelfHost\Channels\HttpMessage.cs" />
+   <Compile Include="..\..\..\external\aspnetwebstack\src\System.Web.Http.SelfHost\Channels\HttpMessageEncoderFactory.cs" />
+   <Compile Include="..\..\..\external\aspnetwebstack\src\System.Web.Http.SelfHost\Channels\HttpMessageEncodingBindingElement.cs" />
+   <Compile Include="..\..\..\external\aspnetwebstack\src\System.Web.Http.SelfHost\Channels\HttpMessageEncodingChannelListener.cs" />
+   <Compile Include="..\..\..\external\aspnetwebstack\src\System.Web.Http.SelfHost\Channels\HttpMessageEncodingReplyChannel.cs" />
+   <Compile Include="..\..\..\external\aspnetwebstack\src\System.Web.Http.SelfHost\Channels\HttpMessageEncodingRequestContext.cs" />
+   <Compile Include="..\..\..\external\aspnetwebstack\src\System.Web.Http.SelfHost\Channels\HttpMessageExtensions.cs" />
+   <Compile Include="..\..\..\external\aspnetwebstack\src\System.Web.Http.SelfHost\Channels\HttpBinding.cs" />
+   <Compile Include="..\..\..\external\aspnetwebstack\src\System.Web.Http.SelfHost\Channels\HttpBindingSecurity.cs" />
+   <Compile Include="..\..\..\external\aspnetwebstack\src\System.Web.Http.SelfHost\Channels\HttpBindingSecurityMode.cs" />
+   <Compile Include="..\..\..\external\aspnetwebstack\src\System.Web.Http.SelfHost\Channels\HttpBindingSecurityModeHelper.cs" />
+   <Compile Include="..\..\..\external\aspnetwebstack\src\System.Web.Http.SelfHost\HttpSelfHostConfiguration.cs" />
+   <Compile Include="..\..\..\external\aspnetwebstack\src\System.Web.Http.SelfHost\HttpSelfHostServer.cs" />
+   <Compile Include="..\..\..\external\aspnetwebstack\src\System.Web.Http.SelfHost\Properties\AssemblyInfo.cs" />
+   <Compile Include="..\..\..\external\aspnetwebstack\src\System.Web.Http.SelfHost\Properties\SRResources.Designer.cs" />
+   <Compile Include="..\..\..\external\aspnetwebstack\src\System.Web.Http.SelfHost\ServiceModel\Channels\AsyncResult.cs" />
+   <Compile Include="..\..\..\external\aspnetwebstack\src\System.Web.Http.SelfHost\ServiceModel\Channels\BufferedOutputStream.cs" />
+   <Compile Include="..\..\..\external\aspnetwebstack\src\System.Web.Http.SelfHost\ServiceModel\Channels\BufferManagerOutputStream.cs" />
+   <Compile Include="..\..\..\external\aspnetwebstack\src\System.Web.Http.SelfHost\ServiceModel\Channels\ChannelAcceptor.cs" />
+   <Compile Include="..\..\..\external\aspnetwebstack\src\System.Web.Http.SelfHost\ServiceModel\Channels\ChannelBindingUtility.cs" />
+   <Compile Include="..\..\..\external\aspnetwebstack\src\System.Web.Http.SelfHost\ServiceModel\Channels\CompletedAsyncResult.cs" />
+   <Compile Include="..\..\..\external\aspnetwebstack\src\System.Web.Http.SelfHost\ServiceModel\Channels\HttpTransportDefaults.cs" />
+   <Compile Include="..\..\..\external\aspnetwebstack\src\System.Web.Http.SelfHost\ServiceModel\Channels\IChannelAcceptor.cs" />
+   <Compile Include="..\..\..\external\aspnetwebstack\src\System.Web.Http.SelfHost\ServiceModel\Channels\LayeredChannel.cs" />
+   <Compile Include="..\..\..\external\aspnetwebstack\src\System.Web.Http.SelfHost\ServiceModel\Channels\LayeredChannelAcceptor.cs" />
+   <Compile Include="..\..\..\external\aspnetwebstack\src\System.Web.Http.SelfHost\ServiceModel\Channels\LayeredChannelListener.cs" />
+   <Compile Include="..\..\..\external\aspnetwebstack\src\System.Web.Http.SelfHost\ServiceModel\Channels\TransportDefaults.cs" />
+   <Compile Include="..\..\..\external\aspnetwebstack\src\System.Web.Http.SelfHost\ServiceModel\HostNameComparisonModeHelper.cs" />
+   <Compile Include="..\..\..\external\aspnetwebstack\src\System.Web.Http.SelfHost\ServiceModel\HttpClientCredentialTypeHelper.cs" />
+   <Compile Include="..\..\..\external\aspnetwebstack\src\System.Web.Http.SelfHost\ServiceModel\HttpProxyCredentialTypeHelper.cs" />
+   <Compile Include="..\..\..\external\aspnetwebstack\src\System.Web.Http.SelfHost\ServiceModel\HttpTransportSecurityExtensionMethods.cs" />
+   <Compile Include="..\..\..\external\aspnetwebstack\src\System.Web.Http.SelfHost\ServiceModel\TransferModeHelper.cs" />
+\r
+  </ItemGroup>\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="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent></PreBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <Reference Include="mscorlib.dll">
+      <SpecificVersion>False</SpecificVersion>
+      <HintPath>mscorlib.dll</HintPath>
+    </Reference>
+    <Reference Include="System.Core.dll">
+      <SpecificVersion>False</SpecificVersion>
+      <HintPath>System.Core.dll</HintPath>
+    </Reference>
+    <Reference Include="System.dll">
+      <SpecificVersion>False</SpecificVersion>
+      <HintPath>System.dll</HintPath>
+    </Reference>
+    <Reference Include="System.Xml.dll">
+      <SpecificVersion>False</SpecificVersion>
+      <HintPath>System.Xml.dll</HintPath>
+    </Reference>
+    <Reference Include="System.Configuration.dll">
+      <SpecificVersion>False</SpecificVersion>
+      <HintPath>System.Configuration.dll</HintPath>
+    </Reference>
+    <Reference Include="System.Net.Http.dll">
+      <SpecificVersion>False</SpecificVersion>
+      <HintPath>System.Net.Http.dll</HintPath>
+    </Reference>
+    <Reference Include="System.Runtime.Serialization.dll">
+      <SpecificVersion>False</SpecificVersion>
+      <HintPath>System.Runtime.Serialization.dll</HintPath>
+    </Reference>
+    <Reference Include="System.ServiceModel.dll">
+      <SpecificVersion>False</SpecificVersion>
+      <HintPath>System.ServiceModel.dll</HintPath>
+    </Reference>
+    <Reference Include="System.IdentityModel.dll">
+      <SpecificVersion>False</SpecificVersion>
+      <HintPath>System.IdentityModel.dll</HintPath>
+    </Reference>
+    <Reference Include="System.Web.Http.dll">
+      <SpecificVersion>False</SpecificVersion>
+      <HintPath>System.Web.Http.dll</HintPath>
+    </Reference>
+    <Reference Include="System.Net.Http.Formatting.dll">
+      <SpecificVersion>False</SpecificVersion>
+      <HintPath>System.Net.Http.Formatting.dll</HintPath>
+    </Reference>
+\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+  \r
+</Project>\r
+
diff --git a/mcs/class/System.Web.Http.SelfHost/System.Web.Http.SelfHost.dll.sources b/mcs/class/System.Web.Http.SelfHost/System.Web.Http.SelfHost.dll.sources
new file mode 100644 (file)
index 0000000..13bd60f
--- /dev/null
@@ -0,0 +1,43 @@
+../../../external/aspnetwebstack/src/CommonAssemblyInfo.cs
+../../../external/aspnetwebstack/src/TransparentCommonAssemblyInfo.cs
+
+../../../external/aspnetwebstack/src/Common/DictionaryExtensions.cs
+../../../external/aspnetwebstack/src/Common/Error.cs
+../../../external/aspnetwebstack/src/Common/HttpMethodHelper.cs
+../../../external/aspnetwebstack/src/Common/TaskHelpers.cs
+../../../external/aspnetwebstack/src/Common/TaskHelpersExtensions.cs
+../../../external/aspnetwebstack/src/Common/CommonWebApiResources.Designer.cs
+
+../../../external/aspnetwebstack/src/System.Web.Http.SelfHost/HttpRequestMessageExtensions.cs
+../../../external/aspnetwebstack/src/System.Web.Http.SelfHost/Channels/HttpMessage.cs
+../../../external/aspnetwebstack/src/System.Web.Http.SelfHost/Channels/HttpMessageEncoderFactory.cs
+../../../external/aspnetwebstack/src/System.Web.Http.SelfHost/Channels/HttpMessageEncodingBindingElement.cs
+../../../external/aspnetwebstack/src/System.Web.Http.SelfHost/Channels/HttpMessageEncodingChannelListener.cs
+../../../external/aspnetwebstack/src/System.Web.Http.SelfHost/Channels/HttpMessageEncodingReplyChannel.cs
+../../../external/aspnetwebstack/src/System.Web.Http.SelfHost/Channels/HttpMessageEncodingRequestContext.cs
+../../../external/aspnetwebstack/src/System.Web.Http.SelfHost/Channels/HttpMessageExtensions.cs
+../../../external/aspnetwebstack/src/System.Web.Http.SelfHost/Channels/HttpBinding.cs
+../../../external/aspnetwebstack/src/System.Web.Http.SelfHost/Channels/HttpBindingSecurity.cs
+../../../external/aspnetwebstack/src/System.Web.Http.SelfHost/Channels/HttpBindingSecurityMode.cs
+../../../external/aspnetwebstack/src/System.Web.Http.SelfHost/Channels/HttpBindingSecurityModeHelper.cs
+../../../external/aspnetwebstack/src/System.Web.Http.SelfHost/HttpSelfHostConfiguration.cs
+../../../external/aspnetwebstack/src/System.Web.Http.SelfHost/HttpSelfHostServer.cs
+../../../external/aspnetwebstack/src/System.Web.Http.SelfHost/Properties/AssemblyInfo.cs
+../../../external/aspnetwebstack/src/System.Web.Http.SelfHost/Properties/SRResources.Designer.cs
+../../../external/aspnetwebstack/src/System.Web.Http.SelfHost/ServiceModel/Channels/AsyncResult.cs
+../../../external/aspnetwebstack/src/System.Web.Http.SelfHost/ServiceModel/Channels/BufferedOutputStream.cs
+../../../external/aspnetwebstack/src/System.Web.Http.SelfHost/ServiceModel/Channels/BufferManagerOutputStream.cs
+../../../external/aspnetwebstack/src/System.Web.Http.SelfHost/ServiceModel/Channels/ChannelAcceptor.cs
+../../../external/aspnetwebstack/src/System.Web.Http.SelfHost/ServiceModel/Channels/ChannelBindingUtility.cs
+../../../external/aspnetwebstack/src/System.Web.Http.SelfHost/ServiceModel/Channels/CompletedAsyncResult.cs
+../../../external/aspnetwebstack/src/System.Web.Http.SelfHost/ServiceModel/Channels/HttpTransportDefaults.cs
+../../../external/aspnetwebstack/src/System.Web.Http.SelfHost/ServiceModel/Channels/IChannelAcceptor.cs
+../../../external/aspnetwebstack/src/System.Web.Http.SelfHost/ServiceModel/Channels/LayeredChannel.cs
+../../../external/aspnetwebstack/src/System.Web.Http.SelfHost/ServiceModel/Channels/LayeredChannelAcceptor.cs
+../../../external/aspnetwebstack/src/System.Web.Http.SelfHost/ServiceModel/Channels/LayeredChannelListener.cs
+../../../external/aspnetwebstack/src/System.Web.Http.SelfHost/ServiceModel/Channels/TransportDefaults.cs
+../../../external/aspnetwebstack/src/System.Web.Http.SelfHost/ServiceModel/HostNameComparisonModeHelper.cs
+../../../external/aspnetwebstack/src/System.Web.Http.SelfHost/ServiceModel/HttpClientCredentialTypeHelper.cs
+../../../external/aspnetwebstack/src/System.Web.Http.SelfHost/ServiceModel/HttpProxyCredentialTypeHelper.cs
+../../../external/aspnetwebstack/src/System.Web.Http.SelfHost/ServiceModel/HttpTransportSecurityExtensionMethods.cs
+../../../external/aspnetwebstack/src/System.Web.Http.SelfHost/ServiceModel/TransferModeHelper.cs
index 488e020e7afbefdafdc1deebcb14ae45d2046b71..d7f1a32a42b5fe9e9b1d4d7373ff74175d934838 100644 (file)
@@ -13,7 +13,9 @@ System.Web.Http.Properties.SRResources.resources: ../../../external/aspnetwebsta
 
 LIB_MCS_FLAGS = -r:System.Core.dll -r:System.dll -r:System.Xml.dll -r:System.Net.Http.dll -r:System.ComponentModel.DataAnnotations.dll \
                -r:System.Net.Http.Formatting.dll -r:System.Runtime.Caching.dll -r:System.Runtime.Serialization.dll -r:System.Data.Linq.dll \
-               -d:ASPNETMVC -keyfile:../winfx.pub -delaysign
+               -d:ASPNETMVC -keyfile:../winfx.pub -delaysign \
+               -resource:System.Web.Http.Properties.CommonWebApiResources.resources \
+               -resource:System.Web.Http.Properties.SRResources.resources
 
 include ../../build/library.make
 
index b0ba77dcfec875964c324afa385d07865fcbe504..4c979d97aee08415e247534cf7d34d17253c4377 100644 (file)
   <ItemGroup>\r
     <Folder Include="Properties\" />\r
   </ItemGroup>\r
-  \r
+    <ItemGroup>
+    <EmbeddedResource Include="System.Web.Http.Properties.CommonWebApiResources.resources">
+       <LogicalName>System.Web.Http.Properties.CommonWebApiResources.resources</LogicalName>
+    </EmbeddedResource>
+    <EmbeddedResource Include="System.Web.Http.Properties.SRResources.resources">
+       <LogicalName>System.Web.Http.Properties.SRResources.resources</LogicalName>
+    </EmbeddedResource>
+  </ItemGroup>
+\r
 </Project>\r
 
index c25f3349a3e16cb598f1fe5f3aec5b6b90af81c3..ccdd41f376e078f89fa7869d0efd8ed1216a26b2 100644 (file)
@@ -99,8 +99,10 @@ namespace System.Web.Services.Description
                                checker.Check (ctx, oper.Input);
                                CheckExtensions (ctx, checker, oper.Input.Extensions);
 
-                               checker.Check (ctx, oper.Output);
-                               CheckExtensions (ctx, checker, oper.Output.Extensions);
+                               if (oper.Output != null) {
+                                       checker.Check (ctx, oper.Output);
+                                       CheckExtensions (ctx, checker, oper.Output.Extensions);
+                               }
                        }
                }
                
diff --git a/mcs/class/System.Web.Services/Test/System.Web.Services.Description/6041.wsdl b/mcs/class/System.Web.Services/Test/System.Web.Services.Description/6041.wsdl
new file mode 100644 (file)
index 0000000..7d8eef2
--- /dev/null
@@ -0,0 +1,82 @@
+<?xml version="1.0" encoding="UTF-8"?><wsdl:definitions xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:ns1="http://org.apache.axis2/xsd" xmlns:ns="http://example.domain.openengsb.org" xmlns:wsaw="http://www.w3.org/2006/05/addressing/wsdl" xmlns:http="http://schemas.xmlsoap.org/wsdl/http/" xmlns:ax21="http://event.example.domain.openengsb.org/xsd" xmlns:ax22="http://api.core.openengsb.org/xsd" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/" targetNamespace="http://example.domain.openengsb.org">\r
+    <wsdl:types>\r
+        <xs:schema xmlns:ax24="http://event.example.domain.openengsb.org/xsd" attributeFormDefault="qualified" elementFormDefault="qualified" targetNamespace="http://example.domain.openengsb.org">\r
+            <xs:import namespace="http://event.example.domain.openengsb.org/xsd"/>\r
+            <xs:element name="raiseEvent">\r
+                <xs:complexType>\r
+                    <xs:sequence>\r
+                        <xs:element minOccurs="0" name="args0" nillable="true" type="ax24:LogEvent"/>\r
+                    </xs:sequence>\r
+                </xs:complexType>\r
+            </xs:element>\r
+        </xs:schema>\r
+        <xs:schema attributeFormDefault="qualified" elementFormDefault="qualified" targetNamespace="http://api.core.openengsb.org/xsd">\r
+            <xs:complexType name="Event">\r
+                <xs:sequence>\r
+                    <xs:element minOccurs="0" name="name" nillable="true" type="xs:string"/>\r
+                    <xs:element minOccurs="0" name="origin" nillable="true" type="xs:string"/>\r
+                    <xs:element minOccurs="0" name="processId" nillable="true" type="xs:long"/>\r
+                </xs:sequence>\r
+            </xs:complexType>\r
+        </xs:schema>\r
+        <xs:schema xmlns:ax23="http://api.core.openengsb.org/xsd" attributeFormDefault="qualified" elementFormDefault="qualified" targetNamespace="http://event.example.domain.openengsb.org/xsd">\r
+            <xs:import namespace="http://api.core.openengsb.org/xsd"/>\r
+            <xs:complexType name="LogEvent">\r
+                <xs:complexContent>\r
+                    <xs:extension base="ax23:Event">\r
+                        <xs:sequence>\r
+                            <xs:element minOccurs="0" name="level" nillable="true" type="xs:string"/>\r
+                            <xs:element minOccurs="0" name="message" nillable="true" type="xs:string"/>\r
+                        </xs:sequence>\r
+                    </xs:extension>\r
+                </xs:complexContent>\r
+            </xs:complexType>\r
+        </xs:schema>\r
+    </wsdl:types>\r
+    <wsdl:message name="raiseEventRequest">\r
+        <wsdl:part name="parameters" element="ns:raiseEvent"/>\r
+    </wsdl:message>\r
+    <wsdl:portType name="ExampleDomainEventsPortType">\r
+        <wsdl:operation name="raiseEvent">\r
+            <wsdl:input message="ns:raiseEventRequest" wsaw:Action="urn:raiseEvent"/>\r
+        </wsdl:operation>\r
+    </wsdl:portType>\r
+    <wsdl:binding name="ExampleDomainEventsSoap11Binding" type="ns:ExampleDomainEventsPortType">\r
+        <soap:binding transport="http://schemas.xmlsoap.org/soap/http" style="document"/>\r
+        <wsdl:operation name="raiseEvent">\r
+            <soap:operation soapAction="urn:raiseEvent" style="document"/>\r
+            <wsdl:input>\r
+                <soap:body use="literal"/>\r
+            </wsdl:input>\r
+        </wsdl:operation>\r
+    </wsdl:binding>\r
+    <wsdl:binding name="ExampleDomainEventsSoap12Binding" type="ns:ExampleDomainEventsPortType">\r
+        <soap12:binding transport="http://schemas.xmlsoap.org/soap/http" style="document"/>\r
+        <wsdl:operation name="raiseEvent">\r
+            <soap12:operation soapAction="urn:raiseEvent" style="document"/>\r
+            <wsdl:input>\r
+                <soap12:body use="literal"/>\r
+            </wsdl:input>\r
+        </wsdl:operation>\r
+    </wsdl:binding>\r
+    <wsdl:binding name="ExampleDomainEventsHttpBinding" type="ns:ExampleDomainEventsPortType">\r
+        <http:binding verb="POST"/>\r
+        <wsdl:operation name="raiseEvent">\r
+            <http:operation location="raiseEvent"/>\r
+            <wsdl:input>\r
+                <mime:content type="application/xml" part="parameters"/>\r
+            </wsdl:input>\r
+        </wsdl:operation>\r
+    </wsdl:binding>\r
+    <wsdl:service name="ExampleDomainEvents">\r
+        <wsdl:port name="ExampleDomainEventsHttpSoap11Endpoint" binding="ns:ExampleDomainEventsSoap11Binding">\r
+            <soap:address location="http://localhost:8080/axis2/services/ExampleDomainEvents"/>\r
+        </wsdl:port>\r
+        <wsdl:port name="ExampleDomainEventsHttpSoap12Endpoint" binding="ns:ExampleDomainEventsSoap12Binding">\r
+            <soap12:address location="http://localhost:8080/axis2/services/ExampleDomainEvents"/>\r
+        </wsdl:port>\r
+        <wsdl:port name="ExampleDomainEventsHttpEndpoint" binding="ns:ExampleDomainEventsHttpBinding">\r
+            <http:address location="http://localhost:8080/axis2/services/ExampleDomainEvents"/>\r
+        </wsdl:port>\r
+    </wsdl:service>\r
+</wsdl:definitions>\r
index dff22f606cb4807b25799379f1d55fab2608421e..b87366b07473adca2cb337a25a563248fd5fb847 100644 (file)
@@ -42,6 +42,16 @@ namespace MonoTests.System.Web.Services.Description
                                WsiProfiles.BasicProfile1_1,
                                ServiceDescription.Read ("Test/System.Web.Services.Description/443095.wsdl"), bc);
                }
+
+               [Test]
+               public void CheckEmptyOutput () // bug #6041
+               {
+                       BasicProfileViolationCollection bc = new BasicProfileViolationCollection ();
+                       WebServicesInteroperability.CheckConformance (
+                               WsiProfiles.BasicProfile1_1,
+                               ServiceDescription.Read ("Test/System.Web.Services.Description/6041.wsdl"), bc);
+               }
+
        }
 }
 
index 8f2aab811ead9bb374abd0880f7ed65a90931f7a..213f881394002644a024ba89da58aef293abe0e1 100644 (file)
@@ -46,7 +46,6 @@
    <Compile Include="..\..\build\common\Consts.cs" />
    <Compile Include="..\..\build\common\Locale.cs" />
    <Compile Include="..\..\build\common\MonoTODOAttribute.cs" />
-   <Compile Include="..\corlib\System.Collections.Concurrent\ObjectPool.cs" />
    <Compile Include="..\corlib\System.Collections.Concurrent\SplitOrderedList.cs" />
    <Compile Include="..\Managed.Windows.Forms\System.Resources\ResXDataNode.cs" />
    <Compile Include="..\Managed.Windows.Forms\System.Resources\ResXFileRef.cs" />
    <Compile Include="System.Web.Util\MachineKeySectionUtils.cs" />
    <Compile Include="System.Web.Util\RuntimeHelpers.cs" />
    <Compile Include="System.Web.Util\SearchPattern.cs" />
+   <Compile Include="System.Web.Util\SecureHashCodeProvider.cs" />
    <Compile Include="System.Web.Util\SerializationHelper.cs" />
    <Compile Include="System.Web.Util\StrUtils.cs" />
    <Compile Include="System.Web.Util\TimeUtil.cs" />
index f467f4cb306f725a50ef8b21a3a803a3c9d6b02f..617d4570b39b516927e67ecd3278ac7a47a32de8 100644 (file)
@@ -46,7 +46,6 @@
    <Compile Include="..\..\build\common\Consts.cs" />
    <Compile Include="..\..\build\common\Locale.cs" />
    <Compile Include="..\..\build\common\MonoTODOAttribute.cs" />
-   <Compile Include="..\corlib\System.Collections.Concurrent\ObjectPool.cs" />
    <Compile Include="..\corlib\System.Collections.Concurrent\SplitOrderedList.cs" />
    <Compile Include="..\Managed.Windows.Forms\System.Resources\ResXDataNode.cs" />
    <Compile Include="..\Managed.Windows.Forms\System.Resources\ResXFileRef.cs" />
    <Compile Include="System.Web.Configuration_2.0\HealthMonitoringSection.cs" />
    <Compile Include="System.Web.Configuration_2.0\HostingEnvironmentSection.cs" />
    <Compile Include="System.Web.Configuration_2.0\HttpCapabilitiesBase.cs" />
+   <Compile Include="System.Web.Configuration_2.0\HttpCapabilitiesDefaultProvider.cs" />
+   <Compile Include="System.Web.Configuration_2.0\HttpCapabilitiesProvider.cs" />
    <Compile Include="System.Web.Configuration_2.0\HttpConfigurationContext.cs" />
    <Compile Include="System.Web.Configuration_2.0\HttpConfigurationSystem.cs" />
    <Compile Include="System.Web.Configuration_2.0\HttpCookiesSection.cs" />
    <Compile Include="System.Web.Util\RequestValidator.cs" />
    <Compile Include="System.Web.Util\RuntimeHelpers.cs" />
    <Compile Include="System.Web.Util\SearchPattern.cs" />
+   <Compile Include="System.Web.Util\SecureHashCodeProvider.cs" />
    <Compile Include="System.Web.Util\SerializationHelper.cs" />
    <Compile Include="System.Web.Util\SimpleWebObjectFactory.cs" />
    <Compile Include="System.Web.Util\StrUtils.cs" />
index ba604dc55b9ae71a460ddf1d76ddbb97d3bba99a..cf2dbc18780dd1abd950beef2734a48a26d71de8 100644 (file)
@@ -46,7 +46,6 @@
    <Compile Include="..\..\build\common\Consts.cs" />
    <Compile Include="..\..\build\common\Locale.cs" />
    <Compile Include="..\..\build\common\MonoTODOAttribute.cs" />
-   <Compile Include="..\corlib\System.Collections.Concurrent\ObjectPool.cs" />
    <Compile Include="..\corlib\System.Collections.Concurrent\SplitOrderedList.cs" />
    <Compile Include="..\Managed.Windows.Forms\System.Resources\ResXDataNode.cs" />
    <Compile Include="..\Managed.Windows.Forms\System.Resources\ResXFileRef.cs" />
    <Compile Include="System.Web.Configuration_2.0\HealthMonitoringSection.cs" />
    <Compile Include="System.Web.Configuration_2.0\HostingEnvironmentSection.cs" />
    <Compile Include="System.Web.Configuration_2.0\HttpCapabilitiesBase.cs" />
+   <Compile Include="System.Web.Configuration_2.0\HttpCapabilitiesDefaultProvider.cs" />
+   <Compile Include="System.Web.Configuration_2.0\HttpCapabilitiesProvider.cs" />
    <Compile Include="System.Web.Configuration_2.0\HttpConfigurationContext.cs" />
    <Compile Include="System.Web.Configuration_2.0\HttpConfigurationSystem.cs" />
    <Compile Include="System.Web.Configuration_2.0\HttpCookiesSection.cs" />
    <Compile Include="System.Web.Util\RequestValidator.cs" />
    <Compile Include="System.Web.Util\RuntimeHelpers.cs" />
    <Compile Include="System.Web.Util\SearchPattern.cs" />
+   <Compile Include="System.Web.Util\SecureHashCodeProvider.cs" />
    <Compile Include="System.Web.Util\SerializationHelper.cs" />
    <Compile Include="System.Web.Util\SimpleWebObjectFactory.cs" />
    <Compile Include="System.Web.Util\StrUtils.cs" />
index 7c5cd4c84293a094df74188a7f82d06a1e88d33d..5e5744aa8dee3973e26db488b1c6cc894e612fd4 100644 (file)
@@ -1200,5 +1200,4 @@ System.Web/WebROCollection.cs
 System.Web/WebSysDescriptionAttribute.cs
 System.Web/XmlSiteMapProvider.cs
 ../corlib/System.Collections.Concurrent/SplitOrderedList.cs
-../corlib/System.Collections.Concurrent/ObjectPool.cs
 
index ce274821b43cffc63007c9d0d495cd85b0926caa..e9888f114846eb2810678365ab9a6c7fb75419d6 100644 (file)
@@ -9,7 +9,6 @@
 // Copyright (C) Tim Coleman, 2002
 // (C) 2003 Erik LeBel
 //
-
 //
 // Permission is hereby granted, free of charge, to any person obtaining
 // a copy of this software and associated documentation files (the
@@ -1017,7 +1016,11 @@ namespace System.Xml.Serialization {
                                elem.Form = att.Form;
                                if (elem.Form != XmlSchemaForm.Unqualified)
                                        elem.Namespace = (att.Namespace != null) ? att.Namespace : defaultNamespace;
-                               elem.IsNullable = att.IsNullable;
+
+                               // elem may already be nullable, and IsNullable property in XmlElement is false by default
+                               if (att.IsNullable && !elem.IsNullable)
+                                       elem.IsNullable = att.IsNullable;
+
                                elem.ExplicitOrder = att.Order;
 
                                if (elem.IsNullable && !elem.TypeData.IsNullable)
index 90f16f0899c9b544e613ac44511adf9da60922f3..459620cb13f8ee748e29c6b87d3aa3c5b2b3c983 100644 (file)
@@ -4,9 +4,11 @@
 // Author:
 //     Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
 //     Hagit Yidov <hagity@mainsoft.com>
+//     Andres G. Aragoneses <andres.aragoneses@7digital.com>
 //
 // (C) 2003 Atsushi Enomoto
 // (C) 2005 Mainsoft Corporation (http://www.mainsoft.com)
+// (C) 2012 7digital Media Ltd (http://www.7digital.com)
 //
 //
 using System;
@@ -1553,5 +1555,71 @@ namespace MonoTests.System.XmlSerialization
                        NotExactDateParseClass o = (NotExactDateParseClass) xs.Deserialize (new StringReader ("<NotExactDateParseClass xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xmlns:xsd=\"http://www.w3.org/2001/XMLSchema\"><SomeDate xsi:type=\"xsd:date\">2012-02-05-09:00</SomeDate></NotExactDateParseClass>"));
                        Assert.AreEqual (new DateTime (2012,2,5), o.SomeDate);
                }
+
+
+               public class Foo
+               {
+                       public DateTime? Baz { get; set; }
+               }
+
+               [Test]
+               public void CanDeserializeXsiNil()
+               {
+                       var reader = new StringReader(
+@"<Foo xmlns:xsi=""http://www.w3.org/2001/XMLSchema-instance"">
+       <Baz xsi:nil=""true"" />
+</Foo>");
+
+                       using (var xmlReader = new XmlTextReader(reader))
+                       {
+                               var serializer = new XmlSerializer(typeof(Foo));
+                               var foo = (Foo)serializer.Deserialize(xmlReader);
+                               Assert.IsNull(foo.Baz);
+                       }
+               }
+
+               public class Bar
+               {
+                       [XmlElement("baz")]
+                       public DateTime? Baz { get; set; }
+               }
+
+               [Test]
+               public void CanDeserializeXsiNilToAPropertyWithXmlElementAttrib()
+               {
+                       var reader = new StringReader(
+@"<Bar xmlns:xsi=""http://www.w3.org/2001/XMLSchema-instance"">
+       <baz xsi:nil=""true"" />
+</Bar>");
+
+                       using (var xmlReader = new XmlTextReader(reader))
+                       {
+                               var serializer = new XmlSerializer(typeof(Bar));
+                               var bar = (Bar)serializer.Deserialize(xmlReader);
+                               Assert.IsNull(bar.Baz);
+                       }
+               }
+
+               public class FooBar
+               {
+                       [XmlElement("baz", IsNullable = true)]
+                       public DateTime? Baz { get; set; }
+               }
+
+               [Test]
+               public void CanDeserializeXsiNilToAPropertyWithXmlElementAttribAndIsNullableTrue()
+               {
+                       var reader = new StringReader(
+@"<FooBar xmlns:xsi=""http://www.w3.org/2001/XMLSchema-instance"">
+       <baz xsi:nil=""true"" />
+</FooBar>");
+
+                       using (var xmlReader = new XmlTextReader(reader))
+                       {
+                               var serializer = new XmlSerializer(typeof(FooBar));
+                               var foobar = (FooBar)serializer.Deserialize(xmlReader);
+                               Assert.IsNull(foobar.Baz);
+                       }
+               }
        }
 }
diff --git a/mcs/class/System/Documentation/en/System.ComponentModel/DataErrorsChangedEventArgs.xml b/mcs/class/System/Documentation/en/System.ComponentModel/DataErrorsChangedEventArgs.xml
new file mode 100644 (file)
index 0000000..c1925ce
--- /dev/null
@@ -0,0 +1,51 @@
+<Type Name="DataErrorsChangedEventArgs" FullName="System.ComponentModel.DataErrorsChangedEventArgs">
+  <TypeSignature Language="C#" Value="public sealed class DataErrorsChangedEventArgs : EventArgs" />
+  <TypeSignature Language="ILAsm" Value=".class public auto ansi sealed beforefieldinit DataErrorsChangedEventArgs extends System.EventArgs" />
+  <AssemblyInfo>
+    <AssemblyName>System</AssemblyName>
+    <AssemblyVersion>4.0.0.0</AssemblyVersion>
+  </AssemblyInfo>
+  <Base>
+    <BaseTypeName>System.EventArgs</BaseTypeName>
+  </Base>
+  <Interfaces />
+  <Docs>
+    <summary>Contains the data for the System.ComponentModel.INotifyDataErrorInfo.ErrorsChanged event.</summary>
+    <remarks>To be added.</remarks>
+  </Docs>
+  <Members>
+    <Member MemberName=".ctor">
+      <MemberSignature Language="C#" Value="public DataErrorsChangedEventArgs (string propertyName);" />
+      <MemberSignature Language="ILAsm" Value=".method public hidebysig specialname rtspecialname instance void .ctor(string propertyName) cil managed" />
+      <MemberType>Constructor</MemberType>
+      <AssemblyInfo>
+        <AssemblyVersion>4.0.0.0</AssemblyVersion>
+      </AssemblyInfo>
+      <Parameters>
+        <Parameter Name="propertyName" Type="System.String" />
+      </Parameters>
+      <Docs>
+        <param name="propertyName">The name of the property.</param>
+        <summary>
+            Initializes a new instance of the DataErrorsChangedEventArgs class.</summary>
+        <remarks>To be added.</remarks>
+      </Docs>
+    </Member>
+    <Member MemberName="PropertyName">
+      <MemberSignature Language="C#" Value="public string PropertyName { get; }" />
+      <MemberSignature Language="ILAsm" Value=".property instance string PropertyName" />
+      <MemberType>Property</MemberType>
+      <AssemblyInfo>
+        <AssemblyVersion>4.0.0.0</AssemblyVersion>
+      </AssemblyInfo>
+      <ReturnValue>
+        <ReturnType>System.String</ReturnType>
+      </ReturnValue>
+      <Docs>
+        <summary>Gets the name of the property with validation errors.</summary>
+        <value>To be added.</value>
+        <remarks>To be added.</remarks>
+      </Docs>
+    </Member>
+  </Members>
+</Type>
diff --git a/mcs/class/System/Documentation/en/System.ComponentModel/INotifyDataErrorInfo.xml b/mcs/class/System/Documentation/en/System.ComponentModel/INotifyDataErrorInfo.xml
new file mode 100644 (file)
index 0000000..68eb6e6
--- /dev/null
@@ -0,0 +1,66 @@
+<Type Name="INotifyDataErrorInfo" FullName="System.ComponentModel.INotifyDataErrorInfo">
+  <TypeSignature Language="C#" Value="public interface INotifyDataErrorInfo" />
+  <TypeSignature Language="ILAsm" Value=".class public interface auto ansi abstract INotifyDataErrorInfo" />
+  <AssemblyInfo>
+    <AssemblyName>System</AssemblyName>
+    <AssemblyVersion>4.0.0.0</AssemblyVersion>
+  </AssemblyInfo>
+  <Interfaces />
+  <Docs>
+    <summary>Provides an interface for async and sync data validation.</summary>
+    <remarks>To be added.</remarks>
+  </Docs>
+  <Members>
+    <Member MemberName="ErrorsChanged">
+      <MemberSignature Language="C#" Value="public event EventHandler&lt;System.ComponentModel.DataErrorsChangedEventArgs&gt; ErrorsChanged;" />
+      <MemberSignature Language="ILAsm" Value=".event class System.EventHandler`1&lt;class System.ComponentModel.DataErrorsChangedEventArgs&gt; ErrorsChanged" />
+      <MemberType>Event</MemberType>
+      <AssemblyInfo>
+        <AssemblyVersion>4.0.0.0</AssemblyVersion>
+      </AssemblyInfo>
+      <ReturnValue>
+        <ReturnType>System.EventHandler&lt;System.ComponentModel.DataErrorsChangedEventArgs&gt;</ReturnType>
+      </ReturnValue>
+      <Docs>
+        <summary>Event that is fired when the validation errors change for a property or entire object.</summary>
+        <remarks>To be added.</remarks>
+      </Docs>
+    </Member>
+    <Member MemberName="GetErrors">
+      <MemberSignature Language="C#" Value="public System.Collections.IEnumerable GetErrors (string propertyName);" />
+      <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance class System.Collections.IEnumerable GetErrors(string propertyName) cil managed" />
+      <MemberType>Method</MemberType>
+      <AssemblyInfo>
+        <AssemblyVersion>4.0.0.0</AssemblyVersion>
+      </AssemblyInfo>
+      <ReturnValue>
+        <ReturnType>System.Collections.IEnumerable</ReturnType>
+      </ReturnValue>
+      <Parameters>
+        <Parameter Name="propertyName" Type="System.String" />
+      </Parameters>
+      <Docs>
+        <param name="propertyName">The name of property.</param>
+        <summary>Gets a System.Collections.IEnumerable of the errors for the provided property or entire object.</summary>
+        <returns>A System.Collections.IEnumerable of the errors for the provided property or entire object.</returns>
+        <remarks>To be added.</remarks>
+      </Docs>
+    </Member>
+    <Member MemberName="HasErrors">
+      <MemberSignature Language="C#" Value="public bool HasErrors { get; }" />
+      <MemberSignature Language="ILAsm" Value=".property instance bool HasErrors" />
+      <MemberType>Property</MemberType>
+      <AssemblyInfo>
+        <AssemblyVersion>4.0.0.0</AssemblyVersion>
+      </AssemblyInfo>
+      <ReturnValue>
+        <ReturnType>System.Boolean</ReturnType>
+      </ReturnValue>
+      <Docs>
+        <summary>Gets a value indicating whether there are validation errors.</summary>
+        <value>To be added.</value>
+        <remarks>To be added.</remarks>
+      </Docs>
+    </Member>
+  </Members>
+</Type>
index 48ea0f6da7e1b5b2c273e007ba2e609f529a58fb..4185dba3696e234b95fc8fcb6c2876a0965d83cb 100644 (file)
    <Compile Include="System.ComponentModel\ContainerFilterService.cs" />
    <Compile Include="System.ComponentModel\CultureInfoConverter.cs" />
    <Compile Include="System.ComponentModel\CustomTypeDescriptor.cs" />
+   <Compile Include="System.ComponentModel\DataErrorsChangedEventArgs.cs" />
    <Compile Include="System.ComponentModel\DataObjectAttribute.cs" />
    <Compile Include="System.ComponentModel\DataObjectFieldAttribute.cs" />
    <Compile Include="System.ComponentModel\DataObjectMethodAttribute.cs" />
    <Compile Include="System.ComponentModel\InheritanceAttribute.cs" />
    <Compile Include="System.ComponentModel\InheritanceLevel.cs" />
    <Compile Include="System.ComponentModel\InitializationEventAttribute.cs" />
+   <Compile Include="System.ComponentModel\INotifyDataErrorInfo.cs" />
    <Compile Include="System.ComponentModel\INotifyPropertyChanged.cs" />
    <Compile Include="System.ComponentModel\INotifyPropertyChanging.cs" />
    <Compile Include="System.ComponentModel\InstallerTypeAttribute.cs" />
index 7b6d9e98785903391105f14e638f96bf6ee32ec7..97b9f5284a8149e4ca2b48ff9ba05f1413050fb6 100644 (file)
    <Compile Include="System.ComponentModel\ContainerFilterService.cs" />
    <Compile Include="System.ComponentModel\CultureInfoConverter.cs" />
    <Compile Include="System.ComponentModel\CustomTypeDescriptor.cs" />
+   <Compile Include="System.ComponentModel\DataErrorsChangedEventArgs.cs" />
    <Compile Include="System.ComponentModel\DataObjectAttribute.cs" />
    <Compile Include="System.ComponentModel\DataObjectFieldAttribute.cs" />
    <Compile Include="System.ComponentModel\DataObjectMethodAttribute.cs" />
    <Compile Include="System.ComponentModel\InheritanceAttribute.cs" />
    <Compile Include="System.ComponentModel\InheritanceLevel.cs" />
    <Compile Include="System.ComponentModel\InitializationEventAttribute.cs" />
+   <Compile Include="System.ComponentModel\INotifyDataErrorInfo.cs" />
    <Compile Include="System.ComponentModel\INotifyPropertyChanged.cs" />
    <Compile Include="System.ComponentModel\INotifyPropertyChanging.cs" />
    <Compile Include="System.ComponentModel\InstallerTypeAttribute.cs" />
index 60cfef74b86f83dfacbc412ca93c11aa5a7d78e2..0fd753daec2a5fadb58a5ba1121fb2899228cbb5 100644 (file)
    <Compile Include="System.ComponentModel\ContainerFilterService.cs" />
    <Compile Include="System.ComponentModel\CultureInfoConverter.cs" />
    <Compile Include="System.ComponentModel\CustomTypeDescriptor.cs" />
+   <Compile Include="System.ComponentModel\DataErrorsChangedEventArgs.cs" />
    <Compile Include="System.ComponentModel\DataObjectAttribute.cs" />
    <Compile Include="System.ComponentModel\DataObjectFieldAttribute.cs" />
    <Compile Include="System.ComponentModel\DataObjectMethodAttribute.cs" />
    <Compile Include="System.ComponentModel\InheritanceAttribute.cs" />
    <Compile Include="System.ComponentModel\InheritanceLevel.cs" />
    <Compile Include="System.ComponentModel\InitializationEventAttribute.cs" />
+   <Compile Include="System.ComponentModel\INotifyDataErrorInfo.cs" />
    <Compile Include="System.ComponentModel\INotifyPropertyChanged.cs" />
    <Compile Include="System.ComponentModel\INotifyPropertyChanging.cs" />
    <Compile Include="System.ComponentModel\InstallerTypeAttribute.cs" />
index 735e76fe5dcbfc7b6a648f138ec0b41757f79803..c1a7fb7dfe1115fa5d1d068ba609716ef6111c3a 100644 (file)
    <Compile Include="System.ComponentModel\ContainerFilterService.cs" />
    <Compile Include="System.ComponentModel\CultureInfoConverter.cs" />
    <Compile Include="System.ComponentModel\CustomTypeDescriptor.cs" />
+   <Compile Include="System.ComponentModel\DataErrorsChangedEventArgs.cs" />
    <Compile Include="System.ComponentModel\DataObjectAttribute.cs" />
    <Compile Include="System.ComponentModel\DataObjectFieldAttribute.cs" />
    <Compile Include="System.ComponentModel\DataObjectMethodAttribute.cs" />
    <Compile Include="System.ComponentModel\InheritanceAttribute.cs" />
    <Compile Include="System.ComponentModel\InheritanceLevel.cs" />
    <Compile Include="System.ComponentModel\InitializationEventAttribute.cs" />
+   <Compile Include="System.ComponentModel\INotifyDataErrorInfo.cs" />
    <Compile Include="System.ComponentModel\INotifyPropertyChanged.cs" />
    <Compile Include="System.ComponentModel\INotifyPropertyChanging.cs" />
    <Compile Include="System.ComponentModel\InstallerTypeAttribute.cs" />
index 530b973d423d319e7fecd8ed9c20e4ab3b31430b..731273ada52364d7867230a2b340c8ede7be43d6 100644 (file)
    <Compile Include="Test\System.Net\CookieCollectionTest.cs" />
    <Compile Include="Test\System.Net\CookieContainerTest.cs" />
    <Compile Include="Test\System.Net\CookieTest.cs" />
+   <Compile Include="Test\System.Net\CookieParserTest.cs" />
    <Compile Include="Test\System.Net\CredentialCacheTest.cs" />
    <Compile Include="Test\System.Net\DnsPermissionAttributeTest.cs" />
    <Compile Include="Test\System.Net\DnsPermissionTest.cs" />
    <Compile Include="Test\System.Net.NetworkInformation\PhysicalAddressTest.cs" />
    <Compile Include="Test\System.Net.Security\SslStreamTest.cs" />
    <Compile Include="Test\System.Runtime.Versioning\FrameworkNameTest.cs" />
+   <Compile Include="Test\System.Security.AccessControl\SemaphoreSecurityTest.cs" />
    <Compile Include="Test\System.Security.Cryptography\AsnEncodedDataTest.cs" />
    <Compile Include="Test\System.Security.Cryptography\OidCollectionTest.cs" />
    <Compile Include="Test\System.Security.Cryptography\OidEnumeratorTest.cs" />
index 6be4c3c1e38388b766f0a1735bd87d4298e8f922..57281890e42931d6f1e4015b22f4d0e794659a04 100644 (file)
    <Compile Include="Test\System.Net\CookieCollectionTest.cs" />
    <Compile Include="Test\System.Net\CookieContainerTest.cs" />
    <Compile Include="Test\System.Net\CookieTest.cs" />
+   <Compile Include="Test\System.Net\CookieParserTest.cs" />
    <Compile Include="Test\System.Net\CredentialCacheTest.cs" />
    <Compile Include="Test\System.Net\DnsPermissionAttributeTest.cs" />
    <Compile Include="Test\System.Net\DnsPermissionTest.cs" />
    <Compile Include="Test\System.Net.NetworkInformation\PhysicalAddressTest.cs" />
    <Compile Include="Test\System.Net.Security\SslStreamTest.cs" />
    <Compile Include="Test\System.Runtime.Versioning\FrameworkNameTest.cs" />
+   <Compile Include="Test\System.Security.AccessControl\SemaphoreSecurityTest.cs" />
    <Compile Include="Test\System.Security.Cryptography\AsnEncodedDataTest.cs" />
    <Compile Include="Test\System.Security.Cryptography\OidCollectionTest.cs" />
    <Compile Include="Test\System.Security.Cryptography\OidEnumeratorTest.cs" />
index a0f05a64c7e169232c03ebedee470be950eac915..3d8d6247e60dbd9506f942953c0e409a498db4fb 100644 (file)
    <Compile Include="Test\System.Net\CookieCollectionTest.cs" />
    <Compile Include="Test\System.Net\CookieContainerTest.cs" />
    <Compile Include="Test\System.Net\CookieTest.cs" />
+   <Compile Include="Test\System.Net\CookieParserTest.cs" />
    <Compile Include="Test\System.Net\CredentialCacheTest.cs" />
    <Compile Include="Test\System.Net\DnsPermissionAttributeTest.cs" />
    <Compile Include="Test\System.Net\DnsPermissionTest.cs" />
    <Compile Include="Test\System.Net.NetworkInformation\PhysicalAddressTest.cs" />
    <Compile Include="Test\System.Net.Security\SslStreamTest.cs" />
    <Compile Include="Test\System.Runtime.Versioning\FrameworkNameTest.cs" />
+   <Compile Include="Test\System.Security.AccessControl\SemaphoreSecurityTest.cs" />
    <Compile Include="Test\System.Security.Cryptography\AsnEncodedDataTest.cs" />
    <Compile Include="Test\System.Security.Cryptography\OidCollectionTest.cs" />
    <Compile Include="Test\System.Security.Cryptography\OidEnumeratorTest.cs" />
index 41a241b10e20dc12a96e75c6c3c8faf43ebb44e3..e5fb5ad7f59eff5bb9778826056e2e21b312a860 100644 (file)
@@ -65,7 +65,7 @@ namespace System.Collections.Concurrent
 
                /* For time based operations, we share this instance of Stopwatch and base calculation
                   on a time offset at each of these method call */
-               static Stopwatch watch = new Stopwatch ();
+               static Stopwatch watch = Stopwatch.StartNew ();
 
                #region ctors
                public BlockingCollection ()
index 259d0f8236f17714cf254a3f9dd41474103812c4..c1190b2ad26d67daeeecc6c79191814e56db3879 100644 (file)
@@ -305,16 +305,12 @@ namespace System.Collections.Generic
 
                void ICollection<KeyValuePair<TKey, TValue>>.Clear () 
                {
-                       defaultCapacity = INITIAL_SIZE;
-                       this.table = new KeyValuePair<TKey, TValue> [defaultCapacity];
-                       inUse = 0;
-                       modificationCount++;
+                       Clear ();
                }
 
                public void Clear () 
                {
-                       defaultCapacity = INITIAL_SIZE;
-                       this.table = new KeyValuePair<TKey, TValue> [defaultCapacity];
+                       Array.Clear (table, 0, table.Length);
                        inUse = 0;
                        modificationCount++;
                }
diff --git a/mcs/class/System/System.ComponentModel/DataErrorsChangedEventArgs.cs b/mcs/class/System/System.ComponentModel/DataErrorsChangedEventArgs.cs
new file mode 100644 (file)
index 0000000..01116af
--- /dev/null
@@ -0,0 +1,42 @@
+//
+// System.ComponentModel.DataErrorsChangedEventArgs.cs: Contains the data 
+// for the System.ComponentModel.INotifyDataErrorInfo.ErrorsChanged event.
+//
+// Author:
+//  Kevin Daub (daub815@gmail.com)
+//  (C) 2012 Kevin Daub
+//
+// 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 NET_4_5
+
+namespace System.ComponentModel {
+        public sealed class DataErrorsChangedEventArgs : EventArgs {
+                public DataErrorsChangedEventArgs (string propertyName)
+                {
+                        this.PropertyName = propertyName;
+                }
+
+                public string PropertyName { get; private set; }
+        }
+}
+
+#endif
diff --git a/mcs/class/System/System.ComponentModel/INotifyDataErrorInfo.cs b/mcs/class/System/System.ComponentModel/INotifyDataErrorInfo.cs
new file mode 100644 (file)
index 0000000..d3e7334
--- /dev/null
@@ -0,0 +1,42 @@
+//
+// System.ComponentModel.INotifyDataErrorInfo.cs: Provides an interface for
+// async and sync data validation.
+//
+// Author:
+//  Kevin Daub (daub815@gmail.com)
+//  (C) 2012 Kevin Daub
+//
+// 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 NET_4_5
+
+using System.Collections;
+
+namespace System.ComponentModel {
+        public interface INotifyDataErrorInfo {
+                bool HasErrors { get; }
+
+                IEnumerable GetErrors (string propertyName);
+                event EventHandler<DataErrorsChangedEventArgs> ErrorsChanged;
+        }
+}
+
+#endif
index 412843e6ed2c736a0ed6931fcdefbf6f7bbcf6a8..bc9535941e77da41dd84d7359293156bfe383d7a 100644 (file)
@@ -74,8 +74,8 @@ namespace System.ComponentModel {
                
                private EditPosition [] edit_positions;
                
-               private static char default_prompt_char = '_';
-               private static char default_password_char = char.MinValue;
+               const char default_prompt_char = '_';
+               const char default_password_char = char.MinValue;
                
 #endregion
 
index 77c7a90881386d72e6d151699687d8fb90a889a2..940a993f7c77301121cc9be6601008b89b52a6b3 100644 (file)
@@ -53,9 +53,20 @@ namespace System.Net.NetworkInformation {
                        public byte   sdl_nlen;
                        public byte   sdl_alen;
                        public byte   sdl_slen;
-
-                       [MarshalAs (UnmanagedType.ByValArray, SizeConst=12)]
                        public byte[] sdl_data;
+                       
+                       internal void Read (IntPtr ptr)
+                       {
+                               sdl_len = Marshal.ReadByte (ptr, 0);
+                               sdl_family = Marshal.ReadByte (ptr, 1);
+                               sdl_index = (ushort) Marshal.ReadInt16 (ptr, 2);
+                               sdl_type = Marshal.ReadByte (ptr, 4);
+                               sdl_nlen = Marshal.ReadByte (ptr, 5);
+                               sdl_alen = Marshal.ReadByte (ptr, 6);
+                               sdl_slen = Marshal.ReadByte (ptr, 7);
+                               sdl_data = new byte [Math.Max (12, sdl_len - 8)];
+                               Marshal.Copy (new IntPtr (ptr.ToInt64 () + 8), sdl_data, 0, sdl_data.Length);
+                       }
                }
 
        }
index 5a60a9e1a2cb1cbcc8ae98067885c465b2b81205..0597a165f084b82c262eab6def22a252f5045831 100644 (file)
@@ -464,7 +464,8 @@ namespace System.Net.NetworkInformation {
                                                        MacOsStructs.sockaddr_in sockaddrin = (MacOsStructs.sockaddr_in) Marshal.PtrToStructure (addr.ifa_addr, typeof (MacOsStructs.sockaddr_in));
                                                        address = new IPAddress (sockaddrin.sin_addr);
                                                } else if (sockaddr.sa_family == AF_LINK) {
-                                                       MacOsStructs.sockaddr_dl sockaddrdl = (MacOsStructs.sockaddr_dl) Marshal.PtrToStructure (addr.ifa_addr, typeof (MacOsStructs.sockaddr_dl));
+                                                       MacOsStructs.sockaddr_dl sockaddrdl = new MacOsStructs.sockaddr_dl ();
+                                                       sockaddrdl.Read (addr.ifa_addr);
 
                                                        macAddress = new byte [(int) sockaddrdl.sdl_alen];
                                                        Array.Copy (sockaddrdl.sdl_data, sockaddrdl.sdl_nlen, macAddress, 0, Math.Min (macAddress.Length, sockaddrdl.sdl_data.Length - sockaddrdl.sdl_nlen));
index e0d29b8e084416ddf4b06658944917c73c2ff0f1..1299b60798b24ab5bed2e2afc323d2f5497e40ac 100644 (file)
@@ -64,7 +64,10 @@ namespace System.Net.NetworkInformation {
                static readonly string [] PingBinPaths = new string [] {
                        "/bin/ping",
                        "/sbin/ping",
-                       "/usr/sbin/ping"
+                       "/usr/sbin/ping",
+#if MONODROID
+                       "/system/bin/ping"
+#endif
                };
                static readonly string PingBinPath;
                const int default_timeout = 4000; // 4 sec.
index 5b24159f5e6acaf6cad549ead61b0dbc661d5d4f..b5abe6e097d77499c4f73fb2a95bcf0a7d477d20 100644 (file)
@@ -114,15 +114,28 @@ namespace System.Net {
                        set {
                                if (String.IsNullOrEmpty (value)) {
                                        domain = String.Empty;
-                                       ExactDomain = true;
+                                       HasDomain = false;
                                } else {
                                        domain = value;
-                                       ExactDomain = (value [0] != '.');
+                                       IPAddress test;
+                                       if (IPAddress.TryParse (value, out test))
+                                               HasDomain = false;
+                                       else
+                                               HasDomain = true;
                                }
                        }
                }
 
-               internal bool ExactDomain { get; set; }
+               /*
+                * Set this to false to disable same-origin checks.
+                * 
+                * This should be done whenever the cookie does not actually
+                * contain a domain and we fallback to the Uri's hostname.
+                * 
+                */
+               internal bool HasDomain {
+                       get; set;
+               }
 
                public bool Expired {
                        get { 
@@ -290,8 +303,6 @@ namespace System.Net {
 
                        if (!String.IsNullOrEmpty (path))
                                result.Append ("; $Path=").Append (path);
-                       else if (uri != null)
-                               result.Append ("; $Path=/").Append (path);
 
                        bool append_domain = (uri == null) || (uri.Host != domain);
                        if (append_domain && !String.IsNullOrEmpty (domain))
index ccf47b9abf98f7db04f0b4b14bee845201a0a8d9..61ac8c5bc7025c670afa0fce9c565a8df7797b1c 100644 (file)
@@ -131,26 +131,23 @@ namespace System.Net
                        if (cookie == null)
                                throw new ArgumentNullException ("cookie");
 
+                       AddCookie (cookie);
+               }
+
+               void AddCookie (Cookie cookie)
+               {
                        if (cookie.Domain.Length == 0)
                                throw new ArgumentException ("Cookie domain not set.", "cookie.Domain");
-
+                                       
                        if (cookie.Value.Length > maxCookieSize)
                                throw new CookieException ("value is larger than MaxCookieSize.");
+                                       
+                       if ((cookie.Version == 1) && (cookie.Domain[0] != '.'))
+                               throw new CookieException ("Invalid cookie domain: " + cookie.Domain);
 
-                       // .NET's Add (Cookie) is fundamentally broken and does not copy properties
-                       // like Secure, HttpOnly and Expires so we clone the parts that .NET
-                       // does keep before calling AddCookie
-                       Cookie c = new Cookie (cookie.Name, cookie.Value);
-                       c.Path = (cookie.Path.Length == 0) ? "/" : cookie.Path;
-                       c.Domain = cookie.Domain;
-                       c.ExactDomain = cookie.ExactDomain;
-                       c.Version = cookie.Version;
-                       
-                       AddCookie (c);
-               }
+                       if (cookie.HasDomain && !CheckPublicRoots (cookie.Domain))
+                               throw new CookieException ("Invalid cookie domain: " + cookie.Domain);
 
-               void AddCookie (Cookie cookie)
-               {
                        if (cookies == null)
                                cookies = new CookieCollection ();
 
@@ -165,9 +162,9 @@ namespace System.Net
 
                        // clone the important parts of the cookie
                        Cookie c = new Cookie (cookie.Name, cookie.Value);
-                       c.Path = (cookie.Path.Length == 0) ? "/" : cookie.Path;
+                       c.Path = cookie.Path;
                        c.Domain = cookie.Domain;
-                       c.ExactDomain = cookie.ExactDomain;
+                       c.HasDomain = cookie.HasDomain;
                        c.Version = cookie.Version;
                        c.Expires = cookie.Expires;
                        c.CommentUri = cookie.CommentUri;
@@ -235,9 +232,14 @@ namespace System.Net
                        if (cookie.Value == null)
                                throw new CookieException ("Invalid cookie: value");
 
-                       if (uri != null && cookie.Domain.Length == 0)
-                               cookie.Domain = uri.Host;
-
+                       if (uri != null) {
+                               if (cookie.Domain.Length == 0) {
+                                       cookie.Domain = uri.Host;
+                                       cookie.HasDomain = false;
+                               } else if (cookie.HasDomain && !CheckSameOrigin (uri, cookie.Domain))
+                                       throw new CookieException ("Invalid cookie domain: " + cookie.Domain);
+                       }
+                                               
                        if (cookie.Version == 0 && String.IsNullOrEmpty (cookie.Path)) {
                                if (uri != null) {
                                        cookie.Path = uri.AbsolutePath;
@@ -246,7 +248,7 @@ namespace System.Net
                                }
                        }
 
-                       if (cookie.Port.Length == 0 && uri != null && !uri.IsDefaultPort) {
+                       if (cookie.Version == 1 && cookie.Port.Length == 0 && uri != null && !uri.IsDefaultPort) {
                                cookie.Ports = new [] { uri.Port };
                        }
                }
@@ -279,7 +281,7 @@ namespace System.Net
                                        AddCookie (cookie);
                                }
                        }
-               }               
+               }
 
                public string GetCookieHeader (Uri uri)
                {
@@ -304,26 +306,82 @@ namespace System.Net
                        return result.ToString ();
                }
 
+               internal static bool CheckPublicRoots (string domain)
+               {
+                       if (string.IsNullOrEmpty (domain))
+                               return true;
+
+                       IPAddress address;
+                       if (IPAddress.TryParse (domain, out address))
+                               return domain[0] != '.';
+
+                       if (domain[0] == '.')
+                               domain = domain.Substring (1);
+
+                       if (string.Equals (domain, "localhost", StringComparison.InvariantCultureIgnoreCase))
+                               return true;
+
+                       var parts = domain.Split ('.');
+                       // Disallow TLDs
+                       if (parts.Length < 2)
+                               return false;
+
+                       // FIXME: Should probably use the public suffix list at
+                       //        http://publicsuffix.org/list/ or something similar.
+                       return true;
+               }
+
+               internal static bool CheckSameOrigin (Uri uri, string domain)
+               {
+                       if (!CheckPublicRoots (domain))
+                               return false;
+
+                       IPAddress address;
+                       if (IPAddress.TryParse (domain, out address)) {
+                               if (domain [0] == '.')
+                                       return false;
+
+                               foreach (var ip in Dns.GetHostAddresses (uri.DnsSafeHost)) {
+                                       if (address.Equals (ip))
+                                               return true;
+                               }
+                               return false;
+                       }
+
+                       return CheckDomain (domain, uri.Host, false);
+               }
+
                static bool CheckDomain (string domain, string host, bool exact)
                {
                        if (domain.Length == 0)
                                return false;
 
+                       var withoutDot = domain[0] == '.' ? domain.Substring (1) : domain;
+
                        if (exact)
-                               return (String.Compare (host, domain, StringComparison.InvariantCultureIgnoreCase) == 0);
+                               return (String.Compare (host, withoutDot, StringComparison.InvariantCultureIgnoreCase) == 0);
 
                        // check for allowed sub-domains - without string allocations
-                       if (!host.EndsWith (domain, StringComparison.InvariantCultureIgnoreCase))
+                       if (!host.EndsWith (withoutDot, StringComparison.InvariantCultureIgnoreCase))
                                return false;
                        // mono.com -> www.mono.com is OK but supermono.com NOT OK
-                       if (domain [0] == '.')
+                       if (false && domain [0] == '.')
                                return true;
-                       int p = host.Length - domain.Length - 1;
+                       int p = host.Length - withoutDot.Length - 1;
                        if (p < 0)
-                               return false;
+                               return true;
                        return (host [p] == '.');
                }
 
+               static bool CheckDomain_RFC2109 (string domain, string host)
+               {
+                       if (domain.Length == 0)
+                               return false;
+
+                       var withoutDot = domain[0] == '.' ? domain.Substring (1) : domain;
+                       return (String.Compare (host, withoutDot, StringComparison.InvariantCultureIgnoreCase) == 0);
+               }
+
                public CookieCollection GetCookies (Uri uri)
                {
                        if (uri == null)
@@ -336,8 +394,13 @@ namespace System.Net
 
                        foreach (Cookie cookie in cookies) {
                                string domain = cookie.Domain;
-                               if (!CheckDomain (domain, uri.Host, cookie.ExactDomain))
-                                       continue;
+                               if (cookie.Version == 1) {
+                                       if (!CheckDomain_RFC2109 (domain, uri.Host))
+                                               continue;
+                               } else {
+                                       if (!CheckDomain (domain, uri.Host, !cookie.HasDomain))
+                                               continue;
+                               }
 
                                if (cookie.Port.Length > 0 && cookie.Ports != null && uri.Port != -1) {
                                        if (Array.IndexOf (cookie.Ports, uri.Port) == -1)
@@ -410,8 +473,9 @@ namespace System.Net
                                        if (c.Domain.Length == 0) {
                                                c.Domain = uri.Host;
                                                // don't consider domain "a.b.com" as ".a.b.com"
-                                               c.ExactDomain = true;
-                                       }
+                                               c.HasDomain = false;
+                                       } else if (c.HasDomain && !CheckSameOrigin (uri, c.Domain))
+                                               throw new CookieException ("Invalid cookie domain: " + c.Domain);
 
                                        AddCookie (c);
                                }
@@ -445,11 +509,8 @@ namespace System.Net
                                        break;
                                case "domain":
                                case "$domain":
-                                       if (c.Domain.Length == 0) {
+                                       if (c.Domain.Length == 0)
                                                c.Domain = value;
-                                               // here mono.com means "*.mono.com"
-                                               c.ExactDomain = false;
-                                       }
                                        break;
                                case "expires":
                                case "$expires":
index f8be5c4f3b9e2e8b8d0eb065fe27b2be74937f33..efa4f56acb9cc5d6ffbd951d6862fa57c1121c74 100644 (file)
@@ -165,7 +165,7 @@ namespace System.Net {
                        if (Uri.MaybeUri (raw_url) && Uri.TryCreate (raw_url, UriKind.Absolute, out raw_uri))
                                path = raw_uri.PathAndQuery;
                        else
-                               path = HttpUtility.UrlDecode (raw_url);
+                               path = raw_url;
 
                        if ((host == null || host.Length == 0))
                                host = UserHostAddress;
index 4bb0684c93bfef1323afddee1fb2a6b053fd18a2..83de09ba62fe08b409c690dd55ac3b5111eff98e 100644 (file)
@@ -765,6 +765,9 @@ namespace System.Net
 
                        lock (locker)
                        {
+                               if (getResponseCalled)
+                                       throw new InvalidOperationException ("The operation cannot be performed once the request has been submitted.");
+
                                if (asyncWrite != null) {
                                        throw new InvalidOperationException ("Cannot re-call start of asynchronous " +
                                                                "method while a previous call is still in progress.");
index 1e6757d4f7cd8901482b2c838b5c0796031a67a7..ebcb186ef2da14c1f6fc2ba8fac8a389b740acaa 100644 (file)
@@ -350,8 +350,14 @@ namespace System.Net
 
                        var parser = new CookieParser (header);
                        foreach (var cookie in parser.Parse ()) {
-                               if (cookie.Domain == "")
+                               if (cookie.Domain == "") {
                                        cookie.Domain = uri.Host;
+                                       cookie.HasDomain = false;
+                               }
+
+                               if (cookie.HasDomain &&
+                                   !CookieContainer.CheckSameOrigin (uri, cookie.Domain))
+                                       continue;
 
                                cookieCollection.Add (cookie);
                                if (cookie_container != null)
index 951389772dfd98d64db0fc519bbc58d775bea8f9..0fb1e9ae0253b552d41ff943a1dff12ccd1274b8 100644 (file)
@@ -454,7 +454,14 @@ namespace System.Net
                                SslPolicyErrors errors = 0;
                                X509Chain chain = null;
                                bool result = false;
-#if !MONOTOUCH
+#if MONOTOUCH
+                               // The X509Chain is not really usable with MonoTouch (since the decision is not based on this data)
+                               // However if someone wants to override the results (good or bad) from iOS then they will want all
+                               // the certificates that the server provided (which generally does not include the root) so, only  
+                               // if there's a user callback, we'll create the X509Chain but won't build it
+                               // ref: https://bugzilla.xamarin.com/show_bug.cgi?id=7245
+                               if (cb != null) {
+#endif
                                chain = new X509Chain ();
                                chain.ChainPolicy = new X509ChainPolicy ();
                                chain.ChainPolicy.RevocationMode = revocation_mode;
@@ -462,7 +469,9 @@ namespace System.Net
                                        X509Certificate2 c2 = new X509Certificate2 (certs [i].RawData);
                                        chain.ChainPolicy.ExtraStore.Add (c2);
                                }
-
+#if MONOTOUCH
+                               }
+#else
                                try {
                                        if (!chain.Build (leaf))
                                                errors |= GetErrorsFromChain (chain);
@@ -494,12 +503,15 @@ namespace System.Net
                                                // to the .NET 2 callback for values like SecTrustResult.Confirm
                                                result = (trustResult == MSX.OSX509Certificates.SecTrustResult.Proceed ||
                                                                  trustResult == MSX.OSX509Certificates.SecTrustResult.Unspecified);
-
                                        } catch {
                                                // Ignore
                                        }
                                        
-                                       if (!result) {
+                                       if (result) {
+                                               // TrustEvaluateSsl was successful so there's no trust error
+                                               // IOW we discard our own chain (since we trust OSX one instead)
+                                               errors = 0;
+                                       } else {
                                                // callback and DefaultCertificatePolicy needs this since 'result' is not specified
                                                status11 = (int) trustResult;
                                                errors |= SslPolicyErrors.RemoteCertificateChainErrors;
@@ -510,6 +522,13 @@ namespace System.Net
 
 #if MONODROID
                                result = AndroidPlatform.TrustEvaluateSsl (certs, sender, leaf, chain, errors);
+                               if (result) {
+                                       // chain.Build() + GetErrorsFromChain() (above) will ALWAYS fail on
+                                       // Android (there are no mozroots or preinstalled root certificates),
+                                       // thus `errors` will ALWAYS have RemoteCertificateChainErrors.
+                                       // Android just verified the chain; clear RemoteCertificateChainErrors.
+                                       errors  &= ~SslPolicyErrors.RemoteCertificateChainErrors;
+                               }
 #endif
 
                                if (policy != null && (!(policy is DefaultCertificatePolicy) || cb == null)) {
index 7bed211b1e26fd9de330b821a4eb60972f3543ac..f121547f9bce58090d29d3c418d9495f1288e35e 100644 (file)
@@ -1079,7 +1079,8 @@ namespace System.Net
                                                        new DownloadDataCompletedEventArgs (null, e, canceled, args [1]));
                                        }
                                });
-                               object [] cb_args = new object [] {address, userToken};
+                               object [] cb_args = new object [] { CreateUri (address), userToken };
+                               async_thread.IsBackground = true;
                                async_thread.Start (cb_args);
                        }
                }
@@ -1115,7 +1116,8 @@ namespace System.Net
                                                OnDownloadFileCompleted (
                                                        new AsyncCompletedEventArgs (e, false, args [2]));
                                        }});
-                               object [] cb_args = new object [] {address, fileName, userToken};
+                               object [] cb_args = new object [] { CreateUri (address), fileName, userToken };
+                               async_thread.IsBackground = true;
                                async_thread.Start (cb_args);
                        }
                }
@@ -1150,7 +1152,8 @@ namespace System.Net
                                                OnDownloadStringCompleted (
                                                        new DownloadStringCompletedEventArgs (null, e, canceled, args [1]));
                                        }});
-                               object [] cb_args = new object [] {address, userToken};
+                               object [] cb_args = new object [] { CreateUri (address), userToken };
+                               async_thread.IsBackground = true;
                                async_thread.Start (cb_args);
                        }
                }
@@ -1188,7 +1191,8 @@ namespace System.Net
                                        } catch (Exception e){
                                                OnOpenReadCompleted (new OpenReadCompletedEventArgs (null, e, false, args [1]));
                                        } });
-                               object [] cb_args = new object [] {address, userToken};
+                               object [] cb_args = new object [] { CreateUri (address), userToken };
+                               async_thread.IsBackground = true;
                                async_thread.Start (cb_args);
                        }
                }
@@ -1231,7 +1235,8 @@ namespace System.Net
                                                OnOpenWriteCompleted (
                                                        new OpenWriteCompletedEventArgs (null, e, false, args [2]));
                                        }});
-                               object [] cb_args = new object [] {address, method, userToken};
+                               object [] cb_args = new object [] { CreateUri (address), method, userToken };
+                               async_thread.IsBackground = true;
                                async_thread.Start (cb_args);
                        }
                }
@@ -1275,7 +1280,8 @@ namespace System.Net
                                                OnUploadDataCompleted (
                                                        new UploadDataCompletedEventArgs (null, e, false, args [3]));
                                        }});
-                               object [] cb_args = new object [] {address, method, data,  userToken};
+                               object [] cb_args = new object [] { CreateUri (address), method, data,  userToken };
+                               async_thread.IsBackground = true;
                                async_thread.Start (cb_args);
                        }
                }
@@ -1318,7 +1324,8 @@ namespace System.Net
                                                OnUploadFileCompleted (
                                                        new UploadFileCompletedEventArgs (null, e, false, args [3]));
                                        }});
-                               object [] cb_args = new object [] {address, method, fileName,  userToken};
+                               object [] cb_args = new object [] { CreateUri (address), method, fileName,  userToken };
+                               async_thread.IsBackground = true;
                                async_thread.Start (cb_args);
                        }
                }
@@ -1360,7 +1367,8 @@ namespace System.Net
                                                OnUploadStringCompleted (
                                                        new UploadStringCompletedEventArgs (null, e, false, args [3]));
                                        }});
-                               object [] cb_args = new object [] {address, method, data, userToken};
+                               object [] cb_args = new object [] { CreateUri (address), method, data, userToken };
+                               async_thread.IsBackground = true;
                                async_thread.Start (cb_args);
                        }
                }
@@ -1401,7 +1409,8 @@ namespace System.Net
                                                OnUploadValuesCompleted (
                                                        new UploadValuesCompletedEventArgs (null, e, false, args [3]));
                                        }});
-                               object [] cb_args = new object [] {address, method, data,  userToken};
+                               object [] cb_args = new object [] { CreateUri (address), method, data,  userToken };
+                               async_thread.IsBackground = true;
                                async_thread.Start (cb_args);
                        }
                }
index e0a2bef8a5d367f413105a2d427cdce230e62ec1..c6f03c4c1f81ff2d9d692e7aae46e3624725e38e 100644 (file)
@@ -721,8 +721,7 @@ namespace System.Net
                {
                        lock (queue) {
                                if (queue.Count > 0) {
-                                       Data.request = (HttpWebRequest) queue.Dequeue ();
-                                       SendRequest (Data.request);
+                                       SendRequest ((HttpWebRequest) queue.Dequeue ());
                                }
                        }
                }
index 405d428f568b9873e0c9b9143d1387dd0d7985c2..e952f2a0992ebc13cc18dda6c50d5654d7e12a70 100644 (file)
@@ -636,7 +636,10 @@ namespace System.Net
                        string method = request.Method;
                        bool no_writestream = (method == "GET" || method == "CONNECT" || method == "HEAD" ||
                                                method == "TRACE");
-                       if (sendChunked || cl > -1 || no_writestream) {
+                       bool webdav = (method == "PROPFIND" || method == "PROPPATCH" || method == "MKCOL" ||
+                                      method == "COPY" || method == "MOVE" || method == "LOCK" ||
+                                      method == "UNLOCK");
+                       if (sendChunked || cl > -1 || no_writestream || webdav) {
                                WriteHeaders ();
                                if (!initRead) {
                                        initRead = true;
index 9639488f4fbc8207aca009bbd180e743ff61fc9f..eb143e9ff80790d40048870c3bcab02d43b3abf8 100644 (file)
@@ -60,6 +60,7 @@ namespace System.Security.Authentication.ExtendedProtection.Configuration
                [ConfigurationProperty ("name")]
                public string Name {
                        get { return (string) this [name]; }
+                       set { this [name] = value; }
                }
 
                protected override ConfigurationPropertyCollection Properties {
index 19ed3a07c734380581f5a666fc97335490f8e3e4..a4667c342be716f033b0a0c32ca7bf1715ad3ec7 100644 (file)
@@ -106,7 +106,9 @@ namespace Mono.Security.X509 {
                        IntPtr certArray = IntPtr.Zero;
                        IntPtr sslsecpolicy = IntPtr.Zero;
                        IntPtr host = IntPtr.Zero;
-                       
+                       IntPtr sectrust = IntPtr.Zero;
+                       SecTrustResult result = SecTrustResult.Deny;
+
                        try {
                                for (int i = 0; i < certCount; i++)
                                        cfDataPtrs [i] = MakeCFData (certificates [i].RawData);
@@ -119,19 +121,11 @@ namespace Mono.Security.X509 {
                                certArray = FromIntPtrs (secCerts);
                                host = CFStringCreateWithCharacters (IntPtr.Zero, hostName, hostName.Length);
                                sslsecpolicy = SecPolicyCreateSSL (true, host);
-                               IntPtr sectrust;
+
                                int code = SecTrustCreateWithCertificates (certArray, sslsecpolicy, out sectrust);
-                               if (code == 0){
-                                       SecTrustResult result;
+                               if (code == 0)
                                        code = SecTrustEvaluate (sectrust, out result);
-                                       if (code != 0)
-                                               return SecTrustResult.Deny;
-
-                                       CFRelease (sectrust);
-                                       
-                                       return result;
-                               }
-                               return SecTrustResult.Deny;
+                               return result;
                        } finally {
                                for (int i = 0; i < certCount; i++)
                                        if (cfDataPtrs [i] != IntPtr.Zero)
@@ -148,6 +142,8 @@ namespace Mono.Security.X509 {
                                        CFRelease (sslsecpolicy);
                                if (host != IntPtr.Zero)
                                        CFRelease (host);
+                               if (sectrust != IntPtr.Zero)
+                                       CFRelease (sectrust);
                        }
                }
        }
index 7f64af222f3618f537e588f1795a22174ed1880d..09dd7f00ec7ef2669275115a4a84aa4be55608b5 100644 (file)
@@ -204,6 +204,7 @@ System.ComponentModel/Container.cs
 System.ComponentModel/ContainerFilterService.cs
 System.ComponentModel/CultureInfoConverter.cs
 System.ComponentModel/CustomTypeDescriptor.cs
+System.ComponentModel/DataErrorsChangedEventArgs.cs
 System.ComponentModel/DataObjectAttribute.cs
 System.ComponentModel/DataObjectFieldAttribute.cs
 System.ComponentModel/DataObjectMethodAttribute.cs
@@ -337,6 +338,7 @@ System.ComponentModel/INestedSite.cs
 System.ComponentModel/InheritanceAttribute.cs
 System.ComponentModel/InheritanceLevel.cs
 System.ComponentModel/InitializationEventAttribute.cs
+System.ComponentModel/INotifyDataErrorInfo.cs
 System.ComponentModel/INotifyPropertyChanged.cs
 System.ComponentModel/INotifyPropertyChanging.cs
 System.ComponentModel/InstallerTypeAttribute.cs
index 4078f132a0a03154d67578313bebcf335feee40f..f56a59532e6e985b4e8022e7a4962cf0d625b265 100644 (file)
@@ -1038,6 +1038,13 @@ namespace System {
                                for (int i = k; i < segments2.Length; i++)
                                        result += segments2 [i];
                                
+                               // if there is more than 1 segment and if the last segment of segments
+                               // ends with separator char, assume its a directory and prepend "../"
+                               if (segments.Length > 1) {
+                                       var lastSegment = segments [segments.Length - 1];
+                                       if (lastSegment.EndsWith ("/"))
+                                               result = "../" + result;
+                               }
                        }
                        uri.AppendQueryAndFragment (ref result);
 
index b88479f3d973c19169c4d5b5878207be95e2ba11..0098e2de927e421859e0e5ed1356c5842cd0b191 100644 (file)
@@ -182,6 +182,16 @@ namespace MonoTests.System.Collections.Concurrent
                        Assert.AreEqual (default (int), value2);
                        Assert.IsFalse (secondTake);
                }
+
+               [Test]
+               public void EmptyTryTakeWithTimeout ()
+               {
+                       object o = null;
+                       var queue = new BlockingCollection<object> ();
+                       bool success = queue.TryTake (out o, 500);
+                       Assert.IsNull (o);
+                       Assert.IsFalse (success);
+               }
        }
 }
 #endif
index dcacc78373d7c0efb80cdcc18c6f221903c86327..4ecaba16d467d10d6053b9b74c2c08936ebc79f2 100644 (file)
@@ -464,6 +464,19 @@ namespace MonoTests.System.Collections.Generic
                        Assert.IsTrue(sl.Keys[2] == 3, "NCIC #D3");
                }
 
+               [Test]
+               public void ClearDoesNotTouchCapacity ()
+               {
+                       SortedList<int, int> sl = new SortedList<int, int> ();
+                       for (int i = 0; i < 18; i++) {
+                               sl.Add (i, i);
+                       }
+                       int capacityBeforeClear = sl.Capacity;
+                       sl.Clear ();
+                       int capacityAfterClear = sl.Capacity;
+                       Assert.AreEqual (capacityBeforeClear, capacityAfterClear);
+               }
+
                class Uncomparable : IComparer<double>
                {
                        public int Compare (double x, double y)
index 78fd0e506d4b2aac1944e32727e0b6f303a251a2..e844b5932e4f3c21037b89a6db9bb0687f556623 100644 (file)
@@ -17,6 +17,28 @@ using System.Reflection;
 
 using NUnit.Framework;
 
+/*
+ * About the RFC 2109 conditional:
+ * 
+ * According to the MSDN docs, settings Cookie.Version = 1 should make the
+ * implementation comply with RFC 2109.  I tested this on Windows and it
+ * looks like .NET 4.5 has a few bugs in this area.
+ * 
+ * The tests in this file also don't comply with RFC 2109 (for instance, the
+ * domain must start with a dot and single suffixes such as .localhost are
+ * not allowed).
+ * 
+ * Since there currently is no reference implementation due to these bugs in
+ * .NET 4.5, I disabled these tests for the moment and made them test the
+ * default behavior (the newer RFC 2965).
+ * 
+ * .NET 4.5 fixes several bugs in its (default, non-2109) cookie implementation
+ * over .NET 2.0 - I modified the tests to reflect this new, improved behavior.
+ * 
+ * 09/13/12 martin
+ * 
+ */
+
 namespace MonoTests.System.Net {
        [TestFixture]
        public class CookieContainerTest {
@@ -434,32 +456,35 @@ namespace MonoTests.System.Net {
                        cookie.HttpOnly = true;
                        cookie.Secure = true;
                        // except version
+#if RFC2109
                        cookie.Version = 1;
+#endif
 
                        cc.Add (cookie);
                        Assert.AreEqual (1, cc.Count, "#A1");
 
-                       CookieCollection cookies = cc.GetCookies (new Uri ("http://localhost/Whatever"));
+                       CookieCollection cookies = cc.GetCookies (new Uri ("https://localhost/Whatever"));
                        Assert.AreEqual (1, cookies.Count, "#A2");
                        Assert.AreNotSame (cookie, cookies [0], "!same");
 
                        cookie = cookies [0];
                        Assert.AreEqual ("Age", cookie.Name, "Clone-Name");
                        Assert.AreEqual ("28", cookie.Value, "Clone-Value");
-                       // Path is not the same, nor default
-                       Assert.AreEqual ("/", cookie.Path, "Clone-Path");
+                       Assert.AreEqual (string.Empty, cookie.Path, "Clone-Path");
                        Assert.AreEqual ("localhost", cookie.Domain, "Clone-Domain");
-                       // other non-core properties have default values
-                       Assert.AreEqual (String.Empty, cookie.Comment, "Clone-Comment");
-                       Assert.IsNull (cookie.CommentUri, "Clone-CommentUri");
-                       Assert.IsFalse (cookie.Discard, "Clone-Discard");
-                       Assert.AreEqual (DateTime.MinValue, cookie.Expires, "Clone-Expires");
-                       Assert.IsFalse (cookie.HttpOnly, "Clone-HttpOnly");
-                       Assert.IsFalse (cookie.Secure, "Clone-Secure");
-                       // except version
+                       Assert.AreEqual ("comment", cookie.Comment, "Clone-Comment");
+                       Assert.AreEqual (new Uri ("http://localhost"), cookie.CommentUri, "Clone-CommentUri");
+                       Assert.IsTrue (cookie.Discard, "Clone-Discard");
+                       Assert.AreEqual (DateTime.MaxValue, cookie.Expires, "Clone-Expires");
+                       Assert.IsTrue (cookie.HttpOnly, "Clone-HttpOnly");
+                       Assert.IsTrue (cookie.Secure, "Clone-Secure");
+#if RFC2109
                        Assert.AreEqual (1, cookie.Version, "Clone-Version");
+#else
+                       Assert.AreEqual (0, cookie.Version, "Clone-Version");
+#endif
 
-                       cookies = cc.GetCookies (new Uri ("http://localhost/Whatever"));
+                       cookies = cc.GetCookies (new Uri ("https://localhost/Whatever"));
                        // the same Cookie instance returned for a second query
                        Assert.AreSame (cookie, cookies [0], "!same-2");
                }
@@ -481,6 +506,25 @@ namespace MonoTests.System.Net {
                        }
                }
 
+               [Test]
+               public void Add_Domain_Invalid ()
+               {
+                       var cc = new CookieContainer ();
+                       try {
+                               cc.Add (new Cookie ("Foo", "Bar", string.Empty, ".com"));
+                               Assert.Fail ("#A1");
+                       } catch (CookieException) {
+                               ;
+                       }
+                       
+                       try {
+                               cc.Add (new Uri ("http://mono.com/"), new Cookie ("Foo", "Bar", string.Empty, ".evil.org"));
+                               Assert.Fail ("#A2");
+                       } catch (CookieException) {
+                               ;
+                       }
+               }
+
                [Test] // Add (CookieCollection)
                public void Add2_Cookies_Null ()
                {
@@ -565,6 +609,39 @@ namespace MonoTests.System.Net {
                        }
                }
 
+               /*
+                * This test demonstrates one of the new, fixed behaviors in .NET 4.5:
+                *
+                * The cookie domain implicitly assumes a leading dot, so "x.y" now matches
+                * "foo.x.y" and "foo.bar.x.y".
+                *
+                */
+               [Test]
+               public void Add5_Subdomain ()
+               {
+                       var cc = new CookieContainer ();
+                       var cookie = new Cookie ("Foo", "Bar", string.Empty, "mono.com");
+                       cc.Add (cookie);
+
+                       var coll = cc.GetCookies (new Uri ("http://www.mono.com/Whatever/"));
+                       Assert.AreEqual (1, coll.Count, "#A1");
+
+                       var coll2 = cc.GetCookies (new Uri ("http://www.us.mono.com/Whatever/"));
+                       Assert.AreEqual (1, coll.Count, "#A2");
+               }
+
+               public void Add6_Insecure ()
+               {
+                       var cc = new CookieContainer ();
+                       var cookie = new Cookie ("Foo", "Bar", string.Empty, ".mono.com");
+                       cookie.Secure = true;
+                       // FIXME: This should throw an exception - but .NET 4.5 does not.
+                       cc.Add (new Uri ("http://mono.com/"), cookie);
+                               
+                       var coll = cc.GetCookies (new Uri ("http://mono.com/"));
+                       Assert.AreEqual (0, coll.Count, "#A1");
+               }
+
                [Test]
                public void TestAdd_Cookie ()
                {
@@ -605,98 +682,45 @@ namespace MonoTests.System.Net {
                        Cookie c1 = new Cookie ("TEST", "MyValue", "/", uri.Host);
                        c1.Expires = expires;
                        cc.Add (c1);
-                       Assert.AreEqual (1, cc.Count, "#A1");
+                       Assert.AreEqual (0, cc.Count, "#A1");
                        CookieCollection coll = cc.GetCookies (uri);
-                       Assert.AreEqual (1, coll.Count, "#A1.1");
-                       Cookie cookie = coll [0];
-                       Assert.AreEqual ("", cookie.Comment, "#A2");
-                       Assert.IsNull (cookie.CommentUri, "#A3");
-                       Assert.AreEqual ("www.contoso.com", cookie.Domain, "#A4");
-                       Assert.IsFalse (cookie.Expired, "#A5");
-                       Assert.AreEqual (DateTime.MinValue, cookie.Expires, "#A6");
-                       Assert.AreEqual ("TEST", cookie.Name, "#A7");
-                       Assert.AreEqual ("MyValue", cookie.Value, "#A8");
-                       Assert.AreEqual ("/", cookie.Path, "#A9");
-                       Assert.AreEqual ("", cookie.Port, "#A10");
-                       Assert.IsFalse (cookie.Secure, "#A11");
+                       Assert.AreEqual (0, coll.Count, "#A1.1");
 
                        //expired cookie
                        Cookie c2 = new Cookie ("TEST2", "MyValue2");
                        c2.Expires = expires;
                        cc.Add (uri, c2);
-                       Assert.AreEqual (1, cc.Count, "#B1");
-                       coll = cc.GetCookies (uri);
-                       Assert.AreEqual (1, coll.Count, "#B1.1");
-                       cookie = coll [0];
-                       Assert.AreEqual ("", cookie.Comment, "#B2");
-                       Assert.IsNull (cookie.CommentUri, "#B3");
-                       Assert.AreEqual ("www.contoso.com", cookie.Domain, "#B4");
-                       Assert.IsFalse (cookie.Expired, "#B5");
-                       Assert.AreEqual (DateTime.MinValue, cookie.Expires, "#B6");
-                       Assert.AreEqual ("TEST", cookie.Name, "#B7");
-                       Assert.AreEqual ("MyValue", cookie.Value, "#B8");
-                       Assert.AreEqual ("/", cookie.Path, "#B9");
-                       Assert.AreEqual ("", cookie.Port, "#B10");
-                       Assert.IsFalse (cookie.Secure, "#B11");
+                       Assert.AreEqual (0, cc.Count, "#B1");
 
                        //not expired cookie
                        Cookie c3 = new Cookie ("TEST3", "MyValue3");
                        cc.Add (uri, c3);
-                       Assert.AreEqual (2, cc.Count, "#C1");
-                       coll = cc.GetCookies (uri);
-                       Assert.AreEqual (2, coll.Count, "#C1.1");
-                       cookie = coll [1];
-                       Assert.AreEqual ("", cookie.Comment, "#C2");
-                       Assert.IsNull (cookie.CommentUri, "#C3");
-                       Assert.AreEqual ("www.contoso.com", cookie.Domain, "#C4");
-                       Assert.IsFalse (cookie.Expired, "#C5");
-                       Assert.AreEqual (DateTime.MinValue, cookie.Expires, "#C6");
-                       Assert.AreEqual ("TEST3", cookie.Name, "#C7");
-                       Assert.AreEqual ("MyValue3", cookie.Value, "#C8");
-                       Assert.AreEqual ("/", cookie.Path, "#C9");
-                       Assert.AreEqual ("", cookie.Port, "#C10");
-                       Assert.IsFalse (cookie.Secure, "#C11");
-
-                       Assert.AreEqual (2, cc.Count, "#D1");
-                       coll = cc.GetCookies (new Uri ("http://contoso.com"));
-                       Assert.AreEqual (0, coll.Count, "#D1.1");
+                       Assert.AreEqual (1, cc.Count, "#C1");
 
                        //not expired cookie
                        Cookie c4 = new Cookie ("TEST4", "MyValue4", "/", ".contoso.com");
                        cc.Add (uri, c4);
-                       Assert.AreEqual (3, cc.Count, "#E1");
+                       Assert.AreEqual (2, cc.Count, "#E1");
                        coll = cc.GetCookies (uri);
-                       Assert.AreEqual (3, coll.Count, "#E1.1");
+                       Assert.AreEqual (2, coll.Count, "#E1.1");
 
                        //expired cookie
                        Cookie c5 = new Cookie ("TEST5", "MyValue5", "/", ".contoso.com");
                        c5.Expires = expires;
                        cc.Add (c5);
-                       Assert.AreEqual (4, cc.Count, "#F1");
+                       Assert.AreEqual (2, cc.Count, "#F1");
                        coll = cc.GetCookies (uri);
-                       Assert.AreEqual (4, coll.Count, "#F1.1");
-                       cookie = coll ["TEST5"];
-                       Assert.AreEqual (".contoso.com", cookie.Domain, "#F2");
-                       Assert.IsFalse (cookie.Expired, "#F3");
-                       Assert.AreEqual (DateTime.MinValue, cookie.Expires, "#F4");
-                       Assert.AreEqual ("TEST5", cookie.Name, "#F5");
-                       Assert.AreEqual ("MyValue5", cookie.Value, "#F6");
-                       Assert.AreEqual ("/", cookie.Path, "#F7");
+                       Assert.AreEqual (2, coll.Count, "#F1.1");
+                       Assert.IsNull (coll ["TEST5"], "#F2");
 
                        //expired cookie
                        Cookie c6 = new Cookie ("TEST6", "MyValue6", "/", ".contoso.com");
-                       c5.Expires = expires;
+                       c6.Expires = expires;
                        cc.Add (uri, c6);
-                       Assert.AreEqual (5, cc.Count, "#G1");
+                       Assert.AreEqual (2, cc.Count, "#G1");
                        coll = cc.GetCookies (uri);
-                       Assert.AreEqual (5, coll.Count, "#G1.1");
-                       cookie = coll ["TEST6"];
-                       Assert.AreEqual (".contoso.com", cookie.Domain, "#G2");
-                       Assert.IsFalse (cookie.Expired, "#G3");
-                       Assert.AreEqual (DateTime.MinValue, cookie.Expires, "#G4");
-                       Assert.AreEqual ("TEST6", cookie.Name, "#G5");
-                       Assert.AreEqual ("MyValue6", cookie.Value, "#G6");
-                       Assert.AreEqual ("/", cookie.Path, "#G7");
+                       Assert.AreEqual (2, coll.Count, "#G1.1");
+                       Assert.IsNull (coll ["TEST6"], "#G2");
                }
 
                [Test]
@@ -711,12 +735,14 @@ namespace MonoTests.System.Net {
                        cookie.Expires = DateTime.Now.Add (new TimeSpan (3, 2, 5));
                        cookie.Version = 0;
                        cc.Add (cookie);
+#if RFC2109
                        cookie = new Cookie ("name2", "value2", "/path/sub", "localhost");
                        cookie.Comment = "Description";
                        cookie.Expires = DateTime.Now.Add (new TimeSpan (3, 2, 5));
                        cookie.Version = 1;
                        cc.Add (cookie);
                        Assert.AreEqual ("$Version=1; name2=value2; $Path=/path/sub; name1=value1", cc.GetCookieHeader (new Uri ("http://localhost/path/sub")), "#A1");
+#endif
                        Assert.AreEqual ("name1=value1", cc.GetCookieHeader (new Uri ("http://localhost/path")), "#A2");
                        Assert.AreEqual (string.Empty, cc.GetCookieHeader (new Uri ("http://localhost/whatever")), "#A3");
                }
@@ -730,10 +756,10 @@ namespace MonoTests.System.Net {
                        cookie = new Cookie ("Age", "26", "/path", "dev.mono.com");
                        cc.Add (cookie);
 
-                       Assert.AreEqual ("Age=26", cc.GetCookieHeader (new Uri ("http://dev.mono.com/path/ok")), "#A1");
+                       Assert.AreEqual ("Age=26; Country=Belgium", cc.GetCookieHeader (new Uri ("http://dev.mono.com/path/ok")), "#A1");
                        Assert.AreEqual ("Country=Belgium", cc.GetCookieHeader (new Uri ("http://mono.com/path")), "#A2");
-                       Assert.AreEqual ("", cc.GetCookieHeader (new Uri ("http://test.mono.com/path")), "#A3");
-                       Assert.AreEqual ("", cc.GetCookieHeader (new Uri ("http://us.dev.mono.com/path")), "#A4");
+                       Assert.AreEqual ("Country=Belgium", cc.GetCookieHeader (new Uri ("http://test.mono.com/path")), "#A3");
+                       Assert.AreEqual ("Age=26; Country=Belgium", cc.GetCookieHeader (new Uri ("http://us.dev.mono.com/path")), "#A4");
                }
 
                [Test]
@@ -745,8 +771,8 @@ namespace MonoTests.System.Net {
                        cookie = new Cookie ("Age", "26", "/path", ".dev.mono.com");
                        cc.Add (cookie);
 
-                       Assert.AreEqual ("Country=Belgium", cc.GetCookieHeader (new Uri ("http://dev.mono.com/path/ok")), "#C1");
-                       Assert.AreEqual ("", cc.GetCookieHeader (new Uri ("http://mono.com/path")), "#C2");
+                       Assert.AreEqual ("Age=26; Country=Belgium", cc.GetCookieHeader (new Uri ("http://dev.mono.com/path/ok")), "#C1");
+                       Assert.AreEqual ("Country=Belgium", cc.GetCookieHeader (new Uri ("http://mono.com/path")), "#C2");
                        Assert.AreEqual ("Country=Belgium", cc.GetCookieHeader (new Uri ("http://test.mono.com/path")), "#C3");
                        Assert.AreEqual ("Age=26; Country=Belgium", cc.GetCookieHeader (new Uri ("http://us.dev.mono.com/path")), "#C4");
                }
@@ -761,14 +787,13 @@ namespace MonoTests.System.Net {
                                "Weight=87; path=/Whatever/Do; domain=.mono.com");
                        Assert.AreEqual ("Weight=87; Country=Belgium", cc.GetCookieHeader (new Uri ("http://dev.mono.com/Whatever/Do")), "#C1");
                        Assert.AreEqual ("Weight=87; Country=Belgium", cc.GetCookieHeader (new Uri ("http://test.mono.com/Whatever/Do")), "#C2");
-                       Assert.AreEqual ("", cc.GetCookieHeader (new Uri ("http://mono.com/Whatever/Do")), "#C3");
+                       Assert.AreEqual ("Weight=87; Country=Belgium", cc.GetCookieHeader (new Uri ("http://mono.com/Whatever/Do")), "#C3");
                        Assert.AreEqual ("Weight=87; Country=Belgium", cc.GetCookieHeader (new Uri ("http://us.test.mono.com/Whatever/Do")), "#C4");
                }
 
                [Test]
                public void GetCookieHeader4 ()
                {
-                       Console.WriteLine ("CookieHeader4");
                        CookieContainer cc = new CookieContainer ();
                        Cookie cookie = new Cookie ("Height", "178", "/Whatever", "mono.com");
                        cc.Add (cookie);
@@ -782,11 +807,12 @@ namespace MonoTests.System.Net {
                                "Country=Belgium," +
                                "Age=26; path=/Whatever/Do; domain=test.mono.com," +
                                "Weight=87; path=/");
-                       Assert.AreEqual ("Age=26; Income=34445; Town=Brussels",
+                       Assert.AreEqual ("Age=26; Income=34445; Height=178; Town=Brussels",
                                cc.GetCookieHeader (new Uri ("http://us.test.mono.com/Whatever/Do/Ok")),
                                "#D");
                }
 
+#if RFC2109
                [Test]
                public void GetCookieHeader5a ()
                {
@@ -815,6 +841,7 @@ namespace MonoTests.System.Net {
                        Assert.AreEqual ("$Version=1; name1=value1; $Path=/",
                                cc.GetCookieHeader (new Uri ("http://localhost/path/sub")), "#E1");
                }
+#endif
 
                [Test]
                public void GetCookieHeader6 ()
@@ -838,16 +865,18 @@ namespace MonoTests.System.Net {
                        cookie.Expires = DateTime.Now.Add (new TimeSpan (3, 2, 5));
                        cookie.Version = 0;
                        cc.Add (cookie);
+#if RFC2109
                        cookie = new Cookie ("name2", "value2", "/path/sub", ".mono.com");
                        cookie.Comment = "Description";
                        cookie.Expires = DateTime.Now.Add (new TimeSpan (3, 2, 5));
                        cookie.Version = 1;
                        cc.Add (cookie);
                        Assert.AreEqual ("$Version=1; name2=value2; $Path=/path/sub; $Domain=.mono.com; name1=value1", cc.GetCookieHeader (new Uri ("http://live.mono.com/path/sub")), "#A1");
+#endif
                        Assert.AreEqual ("name1=value1", cc.GetCookieHeader (new Uri ("http://live.mono.com/path")), "#A2");
                        Assert.AreEqual (string.Empty, cc.GetCookieHeader (new Uri ("http://live.mono.com/whatever")), "#A3");
                        Assert.AreEqual (string.Empty, cc.GetCookieHeader (new Uri ("http://gomono.com/path/sub")), "#A4");
-                       Assert.AreEqual (string.Empty, cc.GetCookieHeader (new Uri ("http://mono.com/path/sub")), "#A5");
+                       Assert.AreEqual ("name1=value1", cc.GetCookieHeader (new Uri ("http://mono.com/path/sub")), "#A5");
                }
 
                [Test]
@@ -859,16 +888,18 @@ namespace MonoTests.System.Net {
                        cookie.Expires = DateTime.Now.Add (new TimeSpan (3, 2, 5));
                        cookie.Version = 0;
                        cc.Add (cookie);
+#if RFC2109
                        cookie = new Cookie ("name2", "value2", "/path/sub", "live.mono.com");
                        cookie.Comment = "Description";
                        cookie.Expires = DateTime.Now.Add (new TimeSpan (3, 2, 5));
                        cookie.Version = 1;
                        cc.Add (cookie);
                        Assert.AreEqual ("$Version=1; name2=value2; $Path=/path/sub; name1=value1", cc.GetCookieHeader (new Uri ("http://live.mono.com/path/sub")), "#B1");
+#endif
                        Assert.AreEqual ("name1=value1", cc.GetCookieHeader (new Uri ("http://live.mono.com/path")), "#B2");
                        Assert.AreEqual (string.Empty, cc.GetCookieHeader (new Uri ("http://live.mono.com/whatever")), "#B3");
-                       Assert.AreEqual (string.Empty, cc.GetCookieHeader (new Uri ("http://go.live.mono.com/path/sub")), "#B4");
-                       Assert.AreEqual (string.Empty, cc.GetCookieHeader (new Uri ("http://go.live.mono.com/path")), "#B5");
+                       Assert.AreEqual ("name1=value1", cc.GetCookieHeader (new Uri ("http://go.live.mono.com/path/sub")), "#B4");
+                       Assert.AreEqual ("name1=value1", cc.GetCookieHeader (new Uri ("http://go.live.mono.com/path")), "#B5");
                        Assert.AreEqual (string.Empty, cc.GetCookieHeader (new Uri ("http://go.live.mono.com/whatever")), "#B6");
                        Assert.AreEqual (string.Empty, cc.GetCookieHeader (new Uri ("http://golive.mono.com/whatever")), "#B7");
                }
@@ -937,7 +968,7 @@ namespace MonoTests.System.Net {
 
                        CookieCollection cookies = container.GetCookies (new Uri ("http://dev.mono.com/path/ok"));
                        Assert.IsNotNull (cookies, "#G1");
-                       Assert.AreEqual (1, cookies.Count, "#G2");
+                       Assert.AreEqual (2, cookies.Count, "#G2");
 
                        Cookie cookie = cookies [0];
                        Assert.AreEqual ("Age", cookie.Name, "#H1");
@@ -957,11 +988,11 @@ namespace MonoTests.System.Net {
 
                        cookies = container.GetCookies (new Uri ("http://test.mono.com/path"));
                        Assert.IsNotNull (cookies, "#K1");
-                       Assert.AreEqual (0, cookies.Count, "#K2");
+                       Assert.AreEqual (1, cookies.Count, "#K2");
 
                        cookies = container.GetCookies (new Uri ("http://us.dev.mono.com/path"));
                        Assert.IsNotNull (cookies, "#L1");
-                       Assert.AreEqual (0, cookies.Count, "#L2");
+                       Assert.AreEqual (2, cookies.Count, "#L2");
                }
 
                [Test]
@@ -990,14 +1021,14 @@ namespace MonoTests.System.Net {
 
                        cookies = container.GetCookies (new Uri ("http://test.mono.com/Whatever/Do"));
                        Assert.IsNotNull (cookies, "#O1");
-                       Assert.AreEqual (2, cookies.Count, "#O2");
+                       Assert.AreEqual (3, cookies.Count, "#O2");
 
-                       cookie = cookies [0];
+                       cookie = cookies [1];
                        Assert.AreEqual ("Weight", cookie.Name, "#P1");
                        Assert.AreEqual ("87", cookie.Value, "#P2");
                        Assert.AreEqual ("/Whatever/Do", cookie.Path, "#P3");
                        Assert.AreEqual (".mono.com", cookie.Domain, "#P4");
-                       cookie = cookies [1];
+                       cookie = cookies [2];
                        Assert.AreEqual ("Country", cookie.Name, "#P5");
                        Assert.AreEqual ("Belgium", cookie.Value, "#P6");
                        Assert.AreEqual ("/Whatever", cookie.Path, "#P7");
@@ -1005,7 +1036,7 @@ namespace MonoTests.System.Net {
 
                        cookies = container.GetCookies (new Uri ("http://mono.com/Whatever/Do"));
                        Assert.IsNotNull (cookies, "#Q1");
-                       Assert.AreEqual (0, cookies.Count, "#Q2");
+                       Assert.AreEqual (2, cookies.Count, "#Q2");
 
                        cookies = container.GetCookies (new Uri ("http://us.test.mono.com/Whatever/Do"));
                        Assert.IsNotNull (cookies, "#R1");
@@ -1043,7 +1074,7 @@ namespace MonoTests.System.Net {
 
                        CookieCollection cookies = container.GetCookies (new Uri ("http://us.test.mono.com/Whatever/Do/Ok"));
                        Assert.IsNotNull (cookies, "#T1");
-                       Assert.AreEqual (3, cookies.Count, "#T2");
+                       Assert.AreEqual (4, cookies.Count, "#T2");
 
                        Cookie cookie = cookies [0];
                        Assert.AreEqual ("Age", cookie.Name, "#U1");
@@ -1055,7 +1086,7 @@ namespace MonoTests.System.Net {
                        Assert.AreEqual ("34445", cookie.Value, "#U6");
                        Assert.AreEqual ("/Whatever/", cookie.Path, "#U7");
                        Assert.AreEqual (".test.mono.com", cookie.Domain, "#U8");
-                       cookie = cookies [2];
+                       cookie = cookies [3];
                        Assert.AreEqual ("Town", cookie.Name, "#U9");
                        Assert.AreEqual ("Brussels", cookie.Value, "#U10");
                        Assert.AreEqual ("/Whatever", cookie.Path, "#U11");
@@ -1313,7 +1344,7 @@ namespace MonoTests.System.Net {
                                Assert.AreEqual (typeof (CookieException), ex.GetType (), "#A2");
                                Assert.IsNotNull (ex.InnerException, "#A3");
                                Assert.IsNotNull (ex.Message, "#A4");
-                               Assert.IsTrue (ex.Message.IndexOf ("'http://www.contoso.com/'") != -1, "#A5");
+                               Assert.IsTrue (ex.Message.IndexOf ("http://www.contoso.com/") != -1, "#A5");
 
                                // Cookie format error
                                CookieException inner = ex.InnerException as CookieException;
@@ -1339,7 +1370,7 @@ namespace MonoTests.System.Net {
                                Assert.AreEqual (typeof (CookieException), ex.GetType (), "#B2");
                                Assert.IsNotNull (ex.InnerException, "#B3");
                                Assert.IsNotNull (ex.Message, "#B4");
-                               Assert.IsTrue (ex.Message.IndexOf ("'http://dev.test.mono.com/Whatever'") != -1, "#B5");
+                               Assert.IsTrue (ex.Message.IndexOf ("http://dev.test.mono.com/Whatever") != -1, "#B5");
 
                                // The 'Path'='/Whatever/Do' part of the Cookie
                                // is invalid
@@ -1347,7 +1378,8 @@ namespace MonoTests.System.Net {
                                Assert.AreEqual (typeof (CookieException), inner.GetType (), "#B6");
                                Assert.IsNull (inner.InnerException, "#B7");
                                Assert.IsNotNull (inner.Message, "#B8");
-                               Assert.IsTrue (inner.Message.IndexOf ("'Path'='/Whatever/Do'") != -1, "#B9");
+                               Assert.IsTrue (inner.Message.IndexOf ("'Path'='/Whatever/Do'") != -1 ||
+                                              inner.Message.IndexOf ("\"Path\"=\"/Whatever/Do\"") != 1, "#B9");
                        }
                }
 
@@ -1376,12 +1408,13 @@ namespace MonoTests.System.Net {
                                "Age=26; path=/Whatever; domain=test.mono.com");
                        CookieCollection cookies = cc.GetCookies (new Uri ("http://test.mono.com/Whatever/Do"));
                        Assert.IsNotNull (cookies, "#A1");
-                       Assert.AreEqual (0, cookies.Count, "#A2");
+                       Assert.AreEqual (1, cookies.Count, "#A2");
                        cookies = cc.GetCookies (new Uri ("http://us.test.mono.com/Whatever/Do"));
                        Assert.IsNotNull (cookies, "#A3");
                        Assert.AreEqual (1, cookies.Count, "#A4");
                }
 
+#if FIXME
                [Test]
                public void SetCookies_Domain_Local ()
                {
@@ -1428,6 +1461,7 @@ namespace MonoTests.System.Net {
                        Assert.IsNotNull (cookies, "#C5");
                        Assert.AreEqual (hostname.EndsWith (".local") ? 1 : 0, cookies.Count, "#C6");
                }
+#endif
 
                [Test]
                public void bug421827 ()
@@ -1519,7 +1553,7 @@ namespace MonoTests.System.Net {
                        Assert.AreEqual (cookie.Expires.ToUniversalTime (), cloned.Expires.ToUniversalTime (), "#A7");
                        Assert.AreEqual (cookie.HttpOnly, cloned.HttpOnly, "#A8");
                        Assert.AreEqual (cookie.Name, cloned.Name, "#A9");
-                       Assert.AreEqual (cookie.Path, cloned.Path, "#A10");
+                       Assert.AreEqual ("/path/file", cloned.Path, "#A10");
                        Assert.AreEqual (cookie.Port, cloned.Port, "#A11");
                        Assert.AreEqual (cookie.Value, cloned.Value, "#A12");
                        Assert.AreEqual (cookie.Version, cloned.Version, "#A13");
index 99ad3345e05826d5c2a54e3872a34e794814f024..afe81eb33c3d394490881af4d3e95c8a329e73a7 100644 (file)
@@ -1,8 +1,9 @@
 //
 // HttpListenerRequestTest.cs - Unit tests for System.Net.HttpListenerRequest
 //
-// Author:
+// Authors:
 //     Gert Driesen (drieseng@users.sourceforge.net)
+//     David Straw
 //
 // Copyright (C) 2007 Gert Driesen
 //
@@ -173,5 +174,18 @@ namespace MonoTests.System.Net
                        ns.Close ();
                        listener.Close ();
                }
+
+               [Test]
+               public void HttpRequestUriIsNotDecoded ()
+               {
+                       HttpListener listener = HttpListener2Test.CreateAndStartListener (
+                               "http://127.0.0.1:9000/RequestUriDecodeTest/");
+                       NetworkStream ns = HttpListener2Test.CreateNS (9000);
+                       HttpListener2Test.Send (ns, "GET /RequestUriDecodeTest/?a=b&c=d%26e HTTP/1.1\r\nHost: 127.0.0.1\r\n\r\n");
+                       HttpListenerContext ctx = listener.GetContext ();
+                       HttpListenerRequest request = ctx.Request;
+                       Assert.AreEqual ("/RequestUriDecodeTest/?a=b&c=d%26e", request.Url.PathAndQuery);
+                       listener.Close ();
+               }
        }
 }
index 4667dff48c65dcf978987d360e8d6bac47c36cac..cf06911489b470f5cb7b75dffa08598ce1705bd0 100644 (file)
@@ -439,6 +439,8 @@ namespace MonoTests.System
                        Uri uri11 = new Uri ("mailto:xxx@xxx.com?subject=hola");
                        Uri uri12 = new Uri ("mailto:xxx@mail.xxx.com?subject=hola");
                        Uri uri13 = new Uri ("mailto:xxx@xxx.com/foo/bar");
+                       Uri uri14 = new Uri ("http://www.contoso.com/test1/");
+                       Uri uri15 = new Uri ("http://www.contoso.com/");
 
                        AssertRelativeUri ("foo/bar/index.htm#fragment", uri1, uri2, "#A");
                        AssertRelativeUri ("../../index.htm?x=2", uri2, uri1, "#B");
@@ -470,6 +472,8 @@ namespace MonoTests.System
                        Assert.IsTrue (relativeUri.IsAbsoluteUri, "#N1");
                        Assert.AreEqual (uri5.ToString (), relativeUri.ToString (), "#N2");
                        Assert.AreEqual (uri5.OriginalString, relativeUri.OriginalString, "#N3");
+
+                       AssertRelativeUri ("../", uri14, uri15, "#O");
                }
 
                [Test]
index 2608859aa8ad9a10265860e9b3840f6658ab4c0c..6f6c04cbbf8a69069bcf1cf7f434f2017a1da8bc 100644 (file)
@@ -94,11 +94,11 @@ namespace Mono.Interop
                        Marshal.ThrowExceptionForHR (hr);
                        ComInteropProxy obj = FindProxy (ppv);
                        if (obj == null) {
-                               Marshal.Release (pItf);
+                               Marshal.Release (ppv);
                                return new ComInteropProxy (ppv);
                        }
                        else {
-                               Marshal.Release (pItf);
+                               Marshal.Release (ppv);
                                System.Threading.Interlocked.Increment (ref obj.ref_count);
                                return obj;
                        }
index ac694bb5ef0d1d2721a43743de6e688ef642e00f..c118cc3785c7633399b4d0fff3da33ba6cdbf9a4 100644 (file)
@@ -100,10 +100,10 @@ namespace Mono.Security.Cryptography {
 #endif
        class KeyPairPersistence {
        
-               private static bool _userPathExists = false; // check at 1st use
+               private static bool _userPathExists; // check at 1st use
                private static string _userPath;
                
-               private static bool _machinePathExists = false; // check at 1st use
+               private static bool _machinePathExists; // check at 1st use
                private static string _machinePath;
 
                private CspParameters _params;
index bda13d875c517bb0d079b9f005f7b311c332d528..7f48185c64e2fa4e9acd823655b48d659a6f1cc6 100644 (file)
@@ -3,10 +3,11 @@
 //
 // Authors:
 //     Thomas Neidhart (tome@sbox.tugraz.at)
-//     Sebastien Pouliot <sebastien@ximian.com>
+//  Sebastien Pouliot  <sebastien@xamarin.com>
 //
 // Portions (C) 2002, 2003 Motus Technologies Inc. (http://www.motus.com)
 // Copyright (C) 2004-2008 Novell, Inc (http://www.novell.com)
+// Copyright 2012 Xamarin Inc.
 //
 // Permission is hereby granted, free of charge, to any person obtaining
 // a copy of this software and associated documentation files (the
@@ -376,19 +377,20 @@ namespace Mono.Security.Cryptography {
                                // we need to add an extra block for padding
                                total += BlockSizeByte;
                                break;
+                       case PaddingMode.None:
+                               if ((rem != 0) && (algo.Mode != CipherMode.CFB))
+                                       throw new CryptographicException ("invalid block length");
+                               goto default;
                        default:
                                if (inputCount == 0)
                                        return new byte [0];
                                if (rem != 0) {
-                                       if (algo.Padding == PaddingMode.None)
-                                               throw new CryptographicException ("invalid block length");
                                        // zero padding the input (by adding a block for the partial data)
                                        byte[] paddedInput = new byte [full + BlockSizeByte];
                                        Buffer.BlockCopy (inputBuffer, inputOffset, paddedInput, 0, inputCount);
                                        inputBuffer = paddedInput;
                                        inputOffset = 0;
-                                       inputCount = paddedInput.Length;
-                                       total = inputCount;
+                                       total = paddedInput.Length;
                                }
                                break;
                        }
@@ -438,8 +440,16 @@ namespace Mono.Security.Cryptography {
                                // the last padded block will be transformed in-place
                                InternalTransformBlock (res, full, BlockSizeByte, res, full);
                                break;
-                       default:
+                       case PaddingMode.Zeros:
+                               InternalTransformBlock (inputBuffer, inputOffset, BlockSizeByte, res, outputOffset);
+                               break;
+                       case PaddingMode.None:
                                InternalTransformBlock (inputBuffer, inputOffset, BlockSizeByte, res, outputOffset);
+                               if ((inputCount != total) && (algo.Mode == CipherMode.CFB)) {
+                                       byte[] part = new byte [inputCount];
+                                       Buffer.BlockCopy (res, 0, part, 0, inputCount);
+                                       res = part;
+                               }
                                break;
                        }
 #endif // NET_2_1
@@ -448,21 +458,29 @@ namespace Mono.Security.Cryptography {
 
                private byte[] FinalDecrypt (byte[] inputBuffer, int inputOffset, int inputCount) 
                {
-                       if ((inputCount % BlockSizeByte) > 0)
-                               throw new CryptographicException ("Invalid input block size.");
+                       int full = (inputCount / BlockSizeByte) * BlockSizeByte;
+                       int rem = inputCount - full;
+                       if (rem > 0) {
+                               if (algo.Mode != CipherMode.CFB)
+                                       throw new CryptographicException ("Invalid input block size.");
+                               full += BlockSizeByte;
+                               byte[] paddedInput = new byte [full];
+                               Buffer.BlockCopy (inputBuffer, 0, paddedInput, 0, inputCount);
+                               inputBuffer = paddedInput;
+                       }
 
-                       int total = inputCount;
+                       int total = full;
                        if (lastBlock)
                                total += BlockSizeByte;
 
                        byte[] res = new byte [total];
                        int outputOffset = 0;
 
-                       while (inputCount > 0) {
+                       while (full > 0) {
                                int len = InternalTransformBlock (inputBuffer, inputOffset, BlockSizeByte, res, outputOffset);
                                inputOffset += BlockSizeByte;
                                outputOffset += len;
-                               inputCount -= BlockSizeByte;
+                               full -= BlockSizeByte;
                        }
 
                        if (lastBlock) {
@@ -509,6 +527,9 @@ namespace Mono.Security.Cryptography {
                                total -= padding;
                                break;
                        case PaddingMode.None:  // nothing to do - it's a multiple of block size
+                               if (algo.Mode == CipherMode.CFB)
+                                       total = inputCount;
+                               break;
                        case PaddingMode.Zeros: // nothing to do - user must unpad himself
                                break;
                        }
index 5ecce72b8db96d41dbc1aaa51cdfd990a99cb69f..848ce803589e6c26a5cf9c519fa9c555df18d1e5 100644 (file)
@@ -265,7 +265,7 @@ namespace Mono.Security.X509 {
                        }
                }
 
-               static private int recommendedIterationCount = 2000;
+               const int recommendedIterationCount = 2000;
 
                //private int _version;
                private byte[] _password;
index 330dfae260227731381ed69334ad88e96670485f..af0c0a1f81994a6338526ef52a6bc25516204533 100644 (file)
@@ -49,6 +49,7 @@ namespace Mono.Security.X509 {
 #else
        public class X509Certificate : ISerializable {
 #endif
+               const string encoding_error = "Input data cannot be coded as a valid certificate.";
 
                private ASN1 decoder;
 
@@ -97,9 +98,6 @@ namespace Mono.Security.X509 {
                private byte[] subjectUniqueID;
                private X509ExtensionCollection extensions;
 
-               private static string encoding_error = Locale.GetText ("Input data cannot be coded as a valid certificate.");
-
-
                // that's were the real job is!
                private void Parse (byte[] data) 
                {
index 2905a03c125c4a9302b0249f588504d2d4bae5cd..6fb7d88eedfd2fcdc0fc1db229a33510500e91ea 100644 (file)
@@ -459,7 +459,7 @@ namespace Mono.Security {
 
 #if INSIDE_CORLIB
                static object lockObject = new object ();
-               static bool initialized = false;
+               static bool initialized;
 
                // We don't want a dependency on StrongNameManager in Mono.Security.dll
                static public bool IsAssemblyStrongnamed (string assemblyName) 
index 4567c8b35b679b60e4d9d996f8a06d655adc5289..a7e5a8c34b1b2552ae13e798fffff4c1cc4f7ba1 100644 (file)
@@ -101,10 +101,6 @@ namespace Mono.Security {
                static private Hashtable mappings;
                static private Hashtable tokens;
 
-               static StrongNameManager () 
-               {
-               }
-
                // note: more than one configuration file can be loaded at the 
                // same time (e.g. user specific and machine specific config).
                static public void LoadConfig (string filename) 
index 43ce4528a7fbde8fe5e5c48081cf698853d865fd..2c115e70cba08b15847a4f22e8b1ad3d1bfdc486 100644 (file)
@@ -48,21 +48,6 @@ namespace System.Collections.Concurrent
                Node tail;
                int count;
 
-               class NodeObjectPool : ObjectPool<Node> {
-                       protected override Node Creator ()
-                       {
-                               return new Node ();
-                       }
-               }
-               static readonly NodeObjectPool pool = new NodeObjectPool ();
-
-               static Node ZeroOut (Node node)
-               {
-                       node.Value = default(T);
-                       node.Next = null;
-                       return node;
-               }
-
                public ConcurrentQueue ()
                {
                        tail = head;
@@ -76,7 +61,7 @@ namespace System.Collections.Concurrent
                
                public void Enqueue (T item)
                {
-                       Node node = pool.Take ();
+                       Node node = new Node ();
                        node.Value = item;
                        
                        Node oldTail = null;
@@ -100,7 +85,6 @@ namespace System.Collections.Concurrent
                        }
                        // At this point we added correctly our node, now we have to update tail. If it fails then it will be done by another thread
                        Interlocked.CompareExchange (ref tail, node, oldTail);
-
                        Interlocked.Increment (ref count);
                }
                
@@ -122,19 +106,18 @@ namespace System.Collections.Concurrent
                                
                                if (oldHead == head) {
                                        // Empty case ?
-                                       if (oldHead == oldTail) {       
+                                       if (oldHead == oldTail) {
                                                // This should be false then
                                                if (oldNext != null) {
                                                        // If not then the linked list is mal formed, update tail
                                                        Interlocked.CompareExchange (ref tail, oldNext, oldTail);
+                                                       continue;
                                                }
                                                result = default (T);
                                                return false;
                                        } else {
                                                result = oldNext.Value;
                                                advanced = Interlocked.CompareExchange (ref head, oldNext, oldHead) == oldHead;
-                                               if (advanced)
-                                                       pool.Release (ZeroOut (oldHead));
                                        }
                                }
                        }
index d10e699ec8a1734c96d577d69eb586c551b2507a..e5e3ac9bdfc14075103bec6253f715ad0f2050d4 100644 (file)
@@ -47,21 +47,6 @@ namespace System.Collections.Concurrent
                Node head = null;
                
                int count;
-
-               class NodeObjectPool : ObjectPool<Node> {
-                       protected override Node Creator ()
-                       {
-                               return new Node ();
-                       }
-               }
-               static readonly NodeObjectPool pool = new NodeObjectPool ();
-
-               static Node ZeroOut (Node node)
-               {
-                       node.Value = default(T);
-                       node.Next = null;
-                       return node;
-               }
                
                public ConcurrentStack ()
                {
@@ -81,7 +66,7 @@ namespace System.Collections.Concurrent
                
                public void Push (T item)
                {
-                       Node temp = pool.Take ();
+                       Node temp = new Node ();
                        temp.Value = item;
                        do {
                          temp.Next = head;
@@ -101,7 +86,7 @@ namespace System.Collections.Concurrent
                        Node first = null;
                        
                        for (int i = startIndex; i < count; i++) {
-                               Node temp = pool.Take ();
+                               Node temp = new Node ();
                                temp.Value = items[i];
                                temp.Next = insert;
                                insert = temp;
@@ -132,7 +117,6 @@ namespace System.Collections.Concurrent
                        Interlocked.Decrement (ref count);
                        
                        result = temp.Value;
-                       pool.Release (ZeroOut (temp));
 
                        return true;
                }
@@ -175,7 +159,6 @@ namespace System.Collections.Concurrent
                                items[i] = temp.Value;
                                end = temp;
                                temp = temp.Next;
-                               pool.Release (ZeroOut (end));
                        }
                        Interlocked.Add (ref this.count, -(i - startIndex));
                        
diff --git a/mcs/class/corlib/System.Collections.Concurrent/ObjectPool.cs b/mcs/class/corlib/System.Collections.Concurrent/ObjectPool.cs
deleted file mode 100644 (file)
index 853953b..0000000
+++ /dev/null
@@ -1,112 +0,0 @@
-// ObjectPool.cs
-//
-// Copyright (c) 2011 Novell
-//
-// Authors: 
-//      Jérémie "garuma" Laval
-//
-// 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 NET_4_0 || MOBILE || BOOTSTRAP_NET_4_0 || INSIDE_SYSTEM_WEB
-
-using System;
-using System.Threading;
-using System.Collections;
-using System.Collections.Generic;
-using System.Runtime.Serialization;
-
-namespace System.Collections.Concurrent
-{
-       internal abstract class ObjectPool<T> where T : class
-       {
-               // This is the number of objects we are going to cache
-               const int capacity = 20;
-               /* We use this bit in addIndex to synchronize the array and the index itself
-                * Namely when we update addIndex we also set that bit for the time the value
-                * in the array hasn't still been updated to the object we are returning to the cache
-                */
-               const int bit = 0x8000000;
-
-               readonly T[] buffer;
-               int addIndex;
-               int removeIndex;
-
-               public ObjectPool ()
-               {
-                       buffer = new T[capacity];
-                       for (int i = 0; i < capacity; i++)
-                               buffer[i] = Creator ();
-                       addIndex = capacity - 1;
-               }
-
-               /* Code that want to use a pool subclass it and
-                * implement that method. In most case 'new T ()'.
-                */
-               protected abstract T Creator ();
-
-               public T Take ()
-               {
-                       // If no element in the cache, we return a new object
-                       if ((addIndex & ~bit) - 1 == removeIndex)
-                               return Creator ();
-
-                       int i;
-                       T result;
-                       int tries = 3;
-
-                       do {
-                               i = removeIndex;
-                               // We return a new element when looping becomes too costly
-                               if ((addIndex & ~bit) - 1 == i || tries == 0)
-                                       return Creator ();
-                               result = buffer[i % capacity];
-                       } while (Interlocked.CompareExchange (ref removeIndex, i + 1, i) != i && --tries > -1);
-
-                       return result;
-               }
-
-               public void Release (T obj)
-               {
-                       if (obj == null || addIndex - removeIndex >= capacity - 1)
-                               return;
-
-                       int i;
-                       int tries = 3;
-                       do {
-                               // While an array update is ongoing (i.e. an extra write op) we loop
-                               do {
-                                       i = addIndex;
-                               } while ((i & bit) > 0);
-                               // If no more room or too busy just forget about the object altogether
-                               if (i - removeIndex >= capacity - 1 || tries == 0)
-                                       return;
-                               // We update addIndex and notify that we are going to set buffer correctly
-                       } while (Interlocked.CompareExchange (ref addIndex, i + 1 + bit, i) != i && --tries > -1);
-
-                       buffer[i % capacity] = obj;
-                       Thread.MemoryBarrier ();
-                       // Since bit essentialy acts like a lock, we simply use an atomic read/write combo
-                       addIndex = addIndex - bit;
-               }
-       }
-}
-
-#endif
index 47246847453d85fe17d2519a8664675b03df087d..14b2d8786bf802be455bc276b6debff3aacb4dca 100644 (file)
@@ -81,14 +81,6 @@ namespace System.Collections.Concurrent
                        }
                }
 
-               class NodeObjectPool : ObjectPool<Node> {
-                       protected override Node Creator ()
-                       {
-                               return new Node ();
-                       }
-               }
-               static readonly NodeObjectPool pool = new NodeObjectPool ();
-
                const int MaxLoad = 5;
                const uint BucketSize = 512;
 
@@ -155,7 +147,7 @@ namespace System.Collections.Concurrent
 
                bool InsertInternal (uint key, TKey subKey, T data, Func<T> dataCreator, out Node current)
                {
-                       Node node = pool.Take ().Init (ComputeRegularKey (key), subKey, data);
+                       Node node = new Node ().Init (ComputeRegularKey (key), subKey, data);
 
                        uint b = key % (uint)size;
                        Node bucket;
@@ -252,7 +244,7 @@ namespace System.Collections.Concurrent
                        if ((bucket = GetBucket (parent)) == null)
                                bucket = InitializeBucket (parent);
 
-                       Node dummy = pool.Take ().Init (ComputeDummyKey (b));
+                       Node dummy = new Node ().Init (ComputeDummyKey (b));
                        if (!ListInsert (dummy, bucket, out current, null))
                                return current;
 
@@ -356,7 +348,6 @@ namespace System.Collections.Concurrent
                                }
                                
                                if (Interlocked.CompareExchange (ref left.Next, rightNode, leftNodeNext) == leftNodeNext) {
-                                       pool.Release (leftNodeNext);
                                        if (rightNode != tail && rightNode.Next.Marked)
                                                continue;
                                        else
@@ -381,7 +372,7 @@ namespace System.Collections.Concurrent
 
                                if (!rightNodeNext.Marked) {
                                        if (markedNode == null)
-                                               markedNode = pool.Take ();
+                                               markedNode = new Node ();
                                        markedNode.Init (rightNodeNext);
 
                                        if (Interlocked.CompareExchange (ref rightNode.Next, markedNode, rightNodeNext) == rightNodeNext)
@@ -391,8 +382,6 @@ namespace System.Collections.Concurrent
                        
                        if (Interlocked.CompareExchange (ref leftNode.Next, rightNodeNext, rightNode) != rightNode)
                                ListSearch (rightNode.Key, subKey, ref leftNode, startPoint);
-                       else
-                               pool.Release (rightNode);
                        
                        return true;
                }
index f00febd60db938af06d77e9a3c9a09ce3dcc9721..564e6b674a1910d922b8415e906cb3c5519717b1 100644 (file)
@@ -10,7 +10,7 @@
 //
 // Copyright (C) 2004-2005 Novell, Inc (http://www.novell.com)
 // Copyright (C) 2005 David Waite
-// Copyright (C) 2011 Xamarin, Inc (http://www.xamarin.com)
+// Copyright (C) 2011,2012 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
@@ -35,6 +35,7 @@
 using System.Collections.ObjectModel;
 using System.Runtime.InteropServices;
 using System.Diagnostics;
+using System.Runtime.CompilerServices;
 
 namespace System.Collections.Generic {
        [Serializable]
@@ -49,12 +50,11 @@ namespace System.Collections.Generic {
                int _size;
                int _version;
                
-               static readonly T [] EmptyArray = new T [0]; 
                const int DefaultCapacity = 4;
                
                public List ()
                {
-                       _items = EmptyArray;
+                       _items = EmptyArray<T>.Value;
                }
                
                public List (IEnumerable <T> collection)
@@ -65,7 +65,7 @@ namespace System.Collections.Generic {
                        // initialize to needed size (if determinable)
                        ICollection <T> c = collection as ICollection <T>;
                        if (c == null) {
-                               _items = EmptyArray;
+                               _items = EmptyArray<T>.Value;;
                                AddEnumerable (collection);
                        } else {
                                _size = c.Count;
@@ -93,7 +93,7 @@ namespace System.Collections.Generic {
                        // we can speed things up by 25%
                        if (_size == _items.Length)
                                GrowIfNeeded (1);
-                       _items [_size ++] = item;
+                       Array.UnsafeStore (_items, _size++, item);
                        _version++;
                }
                
@@ -635,16 +635,18 @@ namespace System.Collections.Generic {
                }
                
                public T this [int index] {
+                       [MethodImpl ((MethodImplOptions)256)]
                        get {
                                if ((uint) index >= (uint) _size)
                                        throw new ArgumentOutOfRangeException ("index");
-                               return _items [index];
+                               return Array.UnsafeLoad (_items, index);
                        }
+
+                       [MethodImpl ((MethodImplOptions)256)]
                        set {
-                               CheckIndex (index);
-                               if ((uint) index == (uint) _size)
+                               if ((uint) index >= (uint) _size)
                                        throw new ArgumentOutOfRangeException ("index");
-                               _items [index] = value;
+                               Array.UnsafeStore (_items, index, value);
                                _version++;
                        }
                }
@@ -764,9 +766,9 @@ namespace System.Collections.Generic {
                                
                [Serializable]
                public struct Enumerator : IEnumerator <T>, IDisposable {
-                       List <T> l;
+                       readonly List<T> l;
                        int next;
-                       int ver;
+                       readonly int ver;
 
                        T current;
 
@@ -781,42 +783,39 @@ namespace System.Collections.Generic {
                        {
                        }
 
-                       void VerifyState ()
-                       {
-                               if (ver != l._version)
-                                       throw new InvalidOperationException (
-                                               "Collection was modified; enumeration operation may not execute.");
-                       }
-                       
                        public bool MoveNext ()
                        {
-                               VerifyState ();
-
-                               if (next < 0)
-                                       return false;
+                               var list = l;
 
-                               if (next < l._size) {
-                                       current = l._items [next++];
+                               if ((uint)next < (uint)list._size && ver == list._version) {
+                                       current = list._items [next++];
                                        return true;
                                }
 
+                               if (ver != l._version)
+                                       throw new InvalidOperationException ("Collection was modified; enumeration operation may not execute.");
+
                                next = -1;
                                return false;
                        }
-                       
+
                        public T Current {
                                get { return current; }
                        }
                        
                        void IEnumerator.Reset ()
                        {
-                               VerifyState ();
+                               if (ver != l._version)
+                                       throw new InvalidOperationException ("Collection was modified; enumeration operation may not execute.");
+
                                next = 0;
                        }
                        
                        object IEnumerator.Current {
                                get {
-                                       VerifyState ();
+                                       if (ver != l._version)
+                                               throw new InvalidOperationException ("Collection was modified; enumeration operation may not execute.");
+
                                        if (next <= 0)
                                                throw new InvalidOperationException ();
                                        return current;
index 0a67c6a2c830e103b621716de866a21453f744e7..44544c18d504bd0d53cd3fd1eeaee17ef11392b7 100644 (file)
@@ -115,7 +115,7 @@ namespace System.Collections
                        object currentElement;
                        int index;
                        int version;
-                       static object endFlag = new object ();
+                       static readonly object endFlag = new object ();
                                                        
                        public SimpleEnumerator (ArrayList list)
                        {
@@ -2510,8 +2510,6 @@ namespace System.Collections
                /// </summary>
                private int _version;
 
-               private static readonly object [] EmptyArray = new object [0]; 
-
                #endregion
                
                #region Constructors
@@ -2522,7 +2520,7 @@ namespace System.Collections
                /// </summary>
                public ArrayList()
                {
-                       _items = EmptyArray;
+                       _items = EmptyArray<object>.Value;
                }               
 
                /// <summary>
index 2674397491a4159e6948ccb0ab8b6b97be4cafc8..9f4177e2f86796d183938c3925338b7b2ea64af7 100644 (file)
@@ -44,8 +44,8 @@ namespace System.Collections
 #endif
        class CaseInsensitiveComparer : IComparer
        {
-               private static CaseInsensitiveComparer defaultComparer = new CaseInsensitiveComparer ();
-               private static CaseInsensitiveComparer defaultInvariantComparer = new CaseInsensitiveComparer (true);
+               readonly static CaseInsensitiveComparer defaultComparer = new CaseInsensitiveComparer ();
+               readonly static CaseInsensitiveComparer defaultInvariantComparer = new CaseInsensitiveComparer (true);
 
                private CultureInfo culture;
 
index e11ef658bc88dbbdf4c9ee2f77b7875dd0bca501..dad69c1a62b6fd15f57d288996c40021ae8cff59 100644 (file)
@@ -864,7 +864,7 @@ namespace System.Collections {
                        private int size;
                        private EnumeratorMode mode;
 
-                       private readonly static string xstr = "Hashtable.Enumerator: snapshot out of sync.";
+                       const string xstr = "Hashtable.Enumerator: snapshot out of sync.";
 
                        public Enumerator (Hashtable host, EnumeratorMode mode) {
                                this.host = host;
index d39f7de044375ef60cd05e6a10f947cde6aa202a..56ac10f5bf876cc83f620f1b7b0852c5df74c270 100644 (file)
@@ -243,8 +243,7 @@ namespace System.Collections {
 
                public virtual void Clear () 
                {
-                       defaultCapacity = INITIAL_SIZE;
-                       this.table = new Slot [defaultCapacity];
+                       Array.Clear (table, 0, table.Length);
                        inUse = 0;
                        modificationCount++;
                }
@@ -619,9 +618,9 @@ namespace System.Collections {
                        private int size;
                        private EnumeratorMode mode;
 
-                       bool invalid = false;
+                       bool invalid;
 
-                       private readonly static string xstr = "SortedList.Enumerator: snapshot out of sync.";
+                       const string xstr = "SortedList.Enumerator: snapshot out of sync.";
 
                        public Enumerator (SortedList host, EnumeratorMode mode)
                        {
index 47ce1efaa346a960c5e64e63d8380928ebf6a4af..5d5e233222577a10c68c4c151de16bc34cf38693 100644 (file)
@@ -56,7 +56,7 @@ namespace System.IO.IsolatedStorage {
                private ulong _maxSize;
 #endif
                private Evidence _fullEvidences;
-               private static Mutex mutex = new Mutex ();
+               private static readonly Mutex mutex = new Mutex ();
 #if NET_4_0 || MOBILE
                private bool closed;
                private bool disposed;
index 67bb432f5352d9ba8ea6f970fa852bda4fc29909..6921a255e259b0ef12b7ca6bab64b0403484e187 100644 (file)
@@ -544,48 +544,48 @@ namespace System.IO
                                yield return path_with_pattern;
                                yield break;
                        }
-                       
+
                        IntPtr handle;
                        MonoIOError error;
                        FileAttributes rattr;
-                       bool subdirs = searchOption == SearchOption.AllDirectories;
                        
                        string s = MonoIO.FindFirst (path, path_with_pattern, out rattr, out error, out handle);
-                       if (s == null)
-                               yield break;
-                       if (error != 0)
-                               throw MonoIO.GetException (Path.GetDirectoryName (Path.Combine (path, searchPattern)), (MonoIOError) error);
-
                        try {
-                               //
-                               // Convert any file specific flag to FileAttributes.Normal which is used as include files flag
-                               //
-                               if (((rattr & FileAttributes.Directory) == 0) && rattr != 0)
-                                       rattr |= FileAttributes.Normal;
-
-                               bool first = true;
-                               if (((rattr & FileAttributes.ReparsePoint) == 0) && ((rattr & kind) != 0))
-                                       yield return s;
-                               
-                               do {
-                                       if (((rattr & FileAttributes.Directory) != 0) && subdirs) {
-                                               foreach (string child in EnumerateKind (s, searchPattern, searchOption, kind))
-                                                       yield return child;
-                                       }
-
-                                       if (first) {
-                                               first = false;
-                                               continue;
-                                       }
-                                       
-                                       if ((rattr & FileAttributes.ReparsePoint) != 0)
-                                               continue;
+                               while (s != null) {
+                                       // Convert any file specific flag to FileAttributes.Normal which is used as include files flag
+                                       if (((rattr & FileAttributes.Directory) == 0) && rattr != 0)
+                                               rattr |= FileAttributes.Normal;
 
-                                       if ((rattr & kind) != 0)
+                                       if ((rattr & FileAttributes.ReparsePoint) == 0 && (rattr & kind) != 0)
                                                yield return s;
-                               } while ((s = MonoIO.FindNext (handle, out rattr, out error)) != null);
+
+                                       s = MonoIO.FindNext (handle, out rattr, out error);
+                               }
+
+                               if (error != 0)
+                                       throw MonoIO.GetException (Path.GetDirectoryName (Path.Combine (path, searchPattern)), (MonoIOError) error);
                        } finally {
-                               MonoIO.FindClose (handle);
+                               if (handle != IntPtr.Zero)
+                                       MonoIO.FindClose (handle);
+                       }
+
+                       if (searchOption == SearchOption.AllDirectories) {
+                               s = MonoIO.FindFirst (path, Path.Combine (path, "*"), out rattr, out error, out handle);
+
+                               try {
+                                       while (s != null) {
+                                               if ((rattr & FileAttributes.Directory) != 0)
+                                                       foreach (string child in EnumerateKind (s, searchPattern, searchOption, kind))
+                                                               yield return child;
+                                               s = MonoIO.FindNext (handle, out rattr, out error);
+                                       }
+
+                                       if (error != 0)
+                                               throw MonoIO.GetException (path, (MonoIOError) error);
+                               } finally {
+                                       if (handle != IntPtr.Zero)
+                                               MonoIO.FindClose (handle);
+                               }
                        }
                }
 
index fa874887d6ff71c6a770c983022bce552ebb2d9d..4ce86df30b616f0b9ff96498f8d7fa783d76a698 100644 (file)
@@ -376,9 +376,6 @@ namespace System.IO
 
                public override void Write (byte [] buffer, int offset, int count)
                {
-                       if (!canWrite)
-                               throw new NotSupportedException ("Cannot write to this stream.");
-
                        if (buffer == null)
                                throw new ArgumentNullException ("buffer");
                        
@@ -391,6 +388,9 @@ namespace System.IO
 
                        CheckIfClosedThrowDisposed ();
 
+                       if (!CanWrite)
+                               throw new NotSupportedException ("Cannot write to this stream.");
+
                        // reordered to avoid possible integer overflow
                        if (position > length - count)
                                Expand (position + count);
@@ -436,33 +436,64 @@ namespace System.IO
                public override Task FlushAsync (CancellationToken cancellationToken)
                {
                        if (cancellationToken.IsCancellationRequested)
-                               return TaskConstants<int>.Canceled;
+                               return TaskConstants.Canceled;
 
-                       Flush ();
-                       return TaskConstants.Finished;
+                       try {
+                               Flush ();
+                               return TaskConstants.Finished;
+                       } catch (Exception ex) {
+                               return Task<object>.FromException (ex);
+                       }
                }
 
                public override Task<int> ReadAsync (byte[] buffer, int offset, int count, CancellationToken cancellationToken)
                {
+                       if (buffer == null)
+                               throw new ArgumentNullException ("buffer");
+
+                       if (offset < 0 || count < 0)
+                               throw new ArgumentOutOfRangeException ("offset or count less than zero.");
+
+                       if (buffer.Length - offset < count )
+                               throw new ArgumentException ("offset+count",
+                                                            "The size of the buffer is less than offset + count.");
                        if (cancellationToken.IsCancellationRequested)
                                return TaskConstants<int>.Canceled;
 
-                       count = Read (buffer, offset, count);
+                       try {
+                               count = Read (buffer, offset, count);
 
-                       // Try not to allocate a new task for every buffer read
-                       if (read_task == null || read_task.Result != count)
-                               read_task = Task<int>.FromResult (count);
+                               // Try not to allocate a new task for every buffer read
+                               if (read_task == null || read_task.Result != count)
+                                       read_task = Task<int>.FromResult (count);
 
-                       return read_task;
+                               return read_task;
+                       } catch (Exception ex) {
+                               return Task<int>.FromException (ex);
+                       }
                }
 
                public override Task WriteAsync (byte[] buffer, int offset, int count, CancellationToken cancellationToken)
                {
+                       if (buffer == null)
+                               throw new ArgumentNullException ("buffer");
+                       
+                       if (offset < 0 || count < 0)
+                               throw new ArgumentOutOfRangeException ();
+
+                       if (buffer.Length - offset < count)
+                               throw new ArgumentException ("offset+count",
+                                                            "The size of the buffer is less than offset + count.");
+
                        if (cancellationToken.IsCancellationRequested)
-                               return TaskConstants<int>.Canceled;
+                               return TaskConstants.Canceled;
 
-                       Write (buffer, offset, count);
-                       return TaskConstants.Finished;
+                       try {
+                               Write (buffer, offset, count);
+                               return TaskConstants.Finished;
+                       } catch (Exception ex) {
+                               return Task<object>.FromException (ex);
+                       }
                }
 #endif
        }               
index e50bc40698e02ab06e1d23bd728e6adf64c080ae..b62e1453665f5909d7a43a5fceb9aa27fd571b1a 100644 (file)
@@ -41,10 +41,10 @@ using System.IO.IsolatedStorage;
 
 namespace System.IO
 {
-       unsafe internal sealed class MonoIO {
-               internal static int FileAlreadyExistsHResult = unchecked ((int) 0x80070000) | (int)MonoIOError.ERROR_FILE_EXISTS;
+       unsafe static class MonoIO {
+               public const int FileAlreadyExistsHResult = unchecked ((int) 0x80070000) | (int)MonoIOError.ERROR_FILE_EXISTS;
 
-               public static readonly FileAttributes
+               public const FileAttributes
                        InvalidFileAttributes = (FileAttributes)(-1);
 
                public static readonly IntPtr
index 182cbde3b942041538a8a80fcc8eb02a57fb830b..929a04de654a07ccd21a106decdff765878a4548 100644 (file)
@@ -32,8 +32,8 @@
 \r
 using System.Text;\r
 using System.Runtime.InteropServices;\r
-#if NET_4_5
-using System.Threading.Tasks;
+#if NET_4_5\r
+using System.Threading.Tasks;\r
 #endif\r
 \r
 namespace System.IO {\r
@@ -56,7 +56,6 @@ namespace System.IO {
                private int decode_pos;\r
 \r
                private bool iflush;\r
-               private bool DisposedAlready;\r
                private bool preamble_done;\r
 \r
 #if NET_4_5\r
@@ -172,28 +171,22 @@ namespace System.IO {
 \r
                protected override void Dispose (bool disposing) \r
                {\r
-                       Exception exc = null;\r
-                       if (!DisposedAlready && disposing && internalStream != null && !leave_open) {\r
-                               try {\r
-                                       Flush();\r
-                               } catch (Exception e) {\r
-                                       exc = e;\r
-                               }\r
-                               DisposedAlready = true;\r
-                               try {\r
+                       if (byte_buf == null || !disposing)\r
+                               return;\r
+\r
+                       try {\r
+                               Flush ();\r
+                       } finally {\r
+                               byte_buf = null;\r
+                               internalEncoding = null;\r
+                               decode_buf = null;\r
+\r
+                               if (!leave_open) {\r
                                        internalStream.Close ();\r
-                               } catch (Exception e) {\r
-                                       if (exc == null)\r
-                                               exc = e;\r
                                }\r
-                       }\r
 \r
-                       internalStream = null;\r
-                       byte_buf = null;\r
-                       internalEncoding = null;\r
-                       decode_buf = null;\r
-                       if (exc != null)\r
-                               throw exc;\r
+                               internalStream = null;\r
+                       }\r
                }\r
 \r
                public override void Flush ()\r
@@ -333,14 +326,9 @@ namespace System.IO {
                        Dispose (true);\r
                }\r
 \r
-               ~StreamWriter ()\r
-               {\r
-                       Dispose(false);\r
-               }\r
-\r
                void CheckState ()\r
                {\r
-                       if (DisposedAlready)\r
+                       if (byte_buf == null)\r
                                throw new ObjectDisposedException ("StreamWriter");\r
 \r
 #if NET_4_5\r
index a77019cd9bb930926f821213720c092e9e2d7235..6d04142bc52297ef01038a4d55a98949c64c8d98 100644 (file)
@@ -39,14 +39,7 @@ namespace System.Reflection.Emit {
 
                internal int tokValue;
 
-               public static readonly EventToken Empty;
-
-
-               static EventToken ()
-               {
-                       Empty = new EventToken ();
-               }
-
+               public static readonly EventToken Empty = new EventToken ();
 
                internal EventToken (int val)
                {
index 13295696f839d09bf48b1eefbc2f0a9149cd642b..85cc6599ee68be075f36f9a36fb4d9b325fe4abd 100644 (file)
@@ -39,14 +39,7 @@ namespace System.Reflection.Emit {
 
                internal int tokValue;
 
-               public static readonly FieldToken Empty;
-
-
-               static FieldToken ()
-               {
-                       Empty = new FieldToken ();
-               }
-
+               public static readonly FieldToken Empty = new FieldToken ();
 
                internal FieldToken (int val)
                {
index 9d5b22558cfadc82aa5875f097adc52d36808364..cd521f59a38ca88d9164be18ca676dd3abe8b921 100644 (file)
@@ -207,7 +207,6 @@ namespace System.Reflection.Emit {
                        public int maxStack; 
                }
                
-               static readonly Type void_type = typeof (void);
                #region Sync with reflection.h
                private byte[] code;
                private int code_len;
@@ -740,7 +739,7 @@ namespace System.Reflection.Emit {
                                        add_token_fixup (meth);
                        }
                        emit_int (token);
-                       if (meth.ReturnType != void_type)
+                       if (meth.ReturnType != typeof (void))
                                cur_stack ++;
 
                        if (opcode.StackBehaviourPop == StackBehaviour.Varpop)
@@ -758,7 +757,7 @@ namespace System.Reflection.Emit {
                                        add_token_fixup (method);
                        }
                        emit_int (token);
-                       if (method.ReturnType != void_type)
+                       if (method.ReturnType != typeof (void))
                                cur_stack ++;
 
                        if (opcode.StackBehaviourPop == StackBehaviour.Varpop)
index a4f1b916e141909ffd0f282e8816a1717faed9d5..f4ad83a767aebb7577d13d61172971fe5d7f6bdd 100644 (file)
@@ -39,14 +39,7 @@ namespace System.Reflection.Emit {
 
                internal int tokValue;
 
-               public static readonly MethodToken Empty;
-
-
-               static MethodToken ()
-               {
-                       Empty = new MethodToken ();
-               }
-
+               public static readonly MethodToken Empty = new MethodToken ();
 
                internal MethodToken (int val)
                {
index f3d717529ff20bbcb2ae1f606dc814961b3143ae..67ddad4a581323bc34bab0f11809093484e2224f 100644 (file)
@@ -1,5 +1,5 @@
 namespace System.Reflection.Emit {
-       internal class OpCodeNames {
+       static class OpCodeNames {
                internal static readonly string [] names = {
                        "nop",
                        "break",
index 6858f248e2d187b775e6d6c0db30e713cde612de..87f56282a29fe87828cb8b71c2e7287b13db5bfe 100644 (file)
@@ -39,14 +39,7 @@ namespace System.Reflection.Emit {
 
                internal int tokValue;
 
-               public static readonly ParameterToken Empty;
-
-
-               static ParameterToken ()
-               {
-                       Empty = new ParameterToken ();
-               }
-
+               public static readonly ParameterToken Empty = new ParameterToken ();
 
                internal ParameterToken (int val)
                {
index b5ba3de6858c8f858e4b684bb66d25830d508a39..ca4868ec3ca0a93c2ca50ab34ad649c864e2a441 100644 (file)
@@ -39,14 +39,7 @@ namespace System.Reflection.Emit {
 
                internal int tokValue;
 
-               public static readonly PropertyToken Empty;
-
-
-               static PropertyToken ()
-               {
-                       Empty = new PropertyToken ();
-               }
-
+               public static readonly PropertyToken Empty = new PropertyToken ();
 
                internal PropertyToken (int val)
                {
index 1dde91245f6fda1843364a57e1c63ba4159e446a..193feb610ecd2ae2e9ee70b494581b565b519ec3 100644 (file)
@@ -38,14 +38,7 @@ namespace System.Reflection.Emit {
 
                internal int tokValue;
 
-               public static readonly SignatureToken Empty;
-
-
-               static SignatureToken ()
-               {
-                       Empty = new SignatureToken ();
-               }
-
+               public static readonly SignatureToken Empty = new SignatureToken ();
 
                internal SignatureToken (int val)
                {
index 6f632cc1941f1bc62b9cd2a13610cea427ecac9a..2bba43467ff0815a8b4e85a6b98b783f5ec0ade9 100644 (file)
@@ -39,11 +39,6 @@ namespace System.Reflection.Emit {
 
                internal int tokValue;
 
-               static StringToken ()
-               {
-               }
-
-
                internal StringToken (int val)
                {
                        tokValue = val;
index a3690df96a3b27bdb38a7518bb63981aa97019b3..4a8a56b1d9e3ae5cab268a6f0a3888702a885b13 100644 (file)
@@ -39,14 +39,7 @@ namespace System.Reflection.Emit {
 
                internal int tokValue;
 
-               public static readonly TypeToken Empty;
-
-
-               static TypeToken ()
-               {
-                       Empty = new TypeToken ();
-               }
-
+               public static readonly TypeToken Empty = new TypeToken ();
 
                internal TypeToken (int val)
                {
index 9000bec0430ac3d1569e4a2f228d383face4a830..f02283d73543e75b940cee1724796accc17ec88f 100644 (file)
@@ -50,7 +50,7 @@ namespace System.Reflection
                public abstract MethodBase SelectMethod (BindingFlags bindingAttr, MethodBase[] match, Type[] types, ParameterModifier[] modifiers);
                public abstract PropertyInfo SelectProperty( BindingFlags bindingAttr, PropertyInfo[] match, Type returnType, Type[] indexes, ParameterModifier[] modifiers);
 
-               static Binder default_binder = new Default ();
+               static readonly Binder default_binder = new Default ();
 
                internal static Binder DefaultBinder {
                        get {
index 3e3c66cbb8d3730e2d18eab4bed6811b0e326f92..8cb5b609fc007f0e210b53351b3f684b89ef31a0 100644 (file)
@@ -53,8 +53,8 @@ namespace System.Reflection {
 #else
        public partial class Module : ISerializable, ICustomAttributeProvider, _Module {
 #endif
-               public static readonly TypeFilter FilterTypeName;
-               public static readonly TypeFilter FilterTypeNameIgnoreCase;
+               public static readonly TypeFilter FilterTypeName = new TypeFilter (filter_by_type_name);
+               public static readonly TypeFilter FilterTypeNameIgnoreCase = new TypeFilter (filter_by_type_name_ignore_case);
        
 #pragma warning disable 649    
                internal IntPtr _impl; /* a pointer to a MonoImage */
@@ -68,12 +68,6 @@ namespace System.Reflection {
        
                const BindingFlags defaultBindingFlags = 
                        BindingFlags.Public | BindingFlags.Static | BindingFlags.Instance;
-               
-               static Module () {
-                       FilterTypeName = new TypeFilter (filter_by_type_name);
-                       FilterTypeNameIgnoreCase = new TypeFilter (filter_by_type_name_ignore_case);
-               }
-
 
 #if NET_4_0 || MOONLIGHT || MOBILE
                protected
index 9f8692c3884a6bdbea3f5043e2a31e07c9cfa488..0f9fce9cf0f2af2d2f95d6b7b48b2c03a69832b6 100644 (file)
@@ -45,8 +45,8 @@ namespace System.Resources
        public class ResourceManager
        {
                static readonly object thisLock = new object ();
-               static Hashtable ResourceCache = new Hashtable (); 
-               static Hashtable NonExistent = Hashtable.Synchronized (new Hashtable ());
+               static readonly Hashtable ResourceCache = new Hashtable (); 
+               static readonly Hashtable NonExistent = Hashtable.Synchronized (new Hashtable ());
                public static readonly int HeaderVersionNumber = 1;
                public static readonly int MagicNumber = unchecked ((int) 0xBEEFCACE);
 
index 68d3c49bb0534fb63b151ebf8e373bd1d5cd9de5..ef5f55f6a8d32808590f721cfe1083087085c1c2 100644 (file)
@@ -39,12 +39,7 @@ namespace System.Runtime.InteropServices
        [ComVisible (true)]
        public sealed class ExtensibleClassFactory
        {
-               static Hashtable hashtable;
-
-               static ExtensibleClassFactory ()
-               {
-                       hashtable = new Hashtable ();
-               }
+               static readonly Hashtable hashtable = new Hashtable ();
 
                private ExtensibleClassFactory ()
                {
index 6a706c9da652471851b81cfcf11a7c2aedc2bd99..43cf9bfe2ea147e350cbaaa314d07a366256f953 100644 (file)
@@ -52,12 +52,7 @@ namespace System.Runtime.InteropServices
        {
                /* fields */
                public static readonly int SystemMaxDBCSCharSize = 2; // don't know what this is
-               public static readonly int SystemDefaultCharSize;
-
-               static Marshal ()
-               {
-                       SystemDefaultCharSize = Environment.OSVersion.Platform == PlatformID.Win32NT ? 2 : 1;
-               }
+               public static readonly int SystemDefaultCharSize = Environment.OSVersion.Platform == PlatformID.Win32NT ? 2 : 1;
 
                [MethodImplAttribute (MethodImplOptions.InternalCall)]
                private extern static int AddRefInternal (IntPtr pUnk);
index f7f71db0fdaf8209d809e9b7a9d18efe6368ef22..d39348bd38d98f02fd1d1a66b024953a461ed0cd 100644 (file)
@@ -507,7 +507,8 @@ namespace System.Runtime.Serialization.Formatters.Binary
 
                        // Registers and writes the assembly of the array element type if needed
 
-                       if (!elementType.IsArray)
+                       var tag = GetTypeTag (elementType);
+                       if ((tag != TypeTag.ArrayOfObject) && (tag != TypeTag.ArrayOfString) && (tag != TypeTag.ArrayOfPrimitiveType))
                                WriteAssembly (writer, elementType.Assembly);
 
                        // Writes the array
index 3a1270cbd66d8e29ddca88d2cebd9df0c003ee49..6c4f84ea3b795ec521ae5decd8106005f137ba53 100644 (file)
@@ -135,7 +135,7 @@ namespace System.Security.Cryptography {
                        get { return "http://www.w3.org/2000/09/xmldsig#dsa-sha1"; }
                }
 
-               private static bool useMachineKeyStore = false;
+               private static bool useMachineKeyStore;
 
                public static bool UseMachineKeyStore {
                        get { return useMachineKeyStore; }
index bf4de13a90906925ed10d4c4fb9272b0f404585b..af8e8fb64e80acd366f289155ba501efbeecc72e 100644 (file)
@@ -118,7 +118,7 @@ namespace System.Security.Cryptography {
                        }
                }
 
-               private static bool useMachineKeyStore = false;
+               private static bool useMachineKeyStore;
 
                public static bool UseMachineKeyStore {
                        get { return useMachineKeyStore; }
index f90da2624a9963acad6ee34a2967667d1bee4492..c5ffe76aaa046a2ba62bb408c8fea1485d514165 100644 (file)
@@ -33,11 +33,11 @@ namespace System.Text
        [Serializable]
        public abstract class DecoderFallback
        {
-               static DecoderFallback exception_fallback =
+               static readonly DecoderFallback exception_fallback =
                        new DecoderExceptionFallback ();
-               static DecoderFallback replacement_fallback =
+               static readonly DecoderFallback replacement_fallback =
                        new DecoderReplacementFallback ();
-               static DecoderFallback standard_safe_fallback =
+               static readonly DecoderFallback standard_safe_fallback =
                        new DecoderReplacementFallback ("\uFFFD");
 
                protected DecoderFallback ()
index 818b51de37fbbbcf3b09f187e892bf6ab0b5d59b..182ff72f5329441985d1beabe04ab7a47c40e8dd 100644 (file)
@@ -33,11 +33,11 @@ namespace System.Text
        [Serializable]
        public abstract class EncoderFallback
        {
-               static EncoderFallback exception_fallback =
+               static readonly EncoderFallback exception_fallback =
                        new EncoderExceptionFallback ();
-               static EncoderFallback replacement_fallback =
+               static readonly EncoderFallback replacement_fallback =
                        new EncoderReplacementFallback ();
-               static EncoderFallback standard_safe_fallback =
+               static readonly EncoderFallback standard_safe_fallback =
                        new EncoderReplacementFallback ("\uFFFD");
 
                protected EncoderFallback ()
index 8570be976042cd43fbfcd7f6b5c9415666c4cd1b..7033b15d075ec8bb9d5a2e06dcfaa95ee74eb103 100644 (file)
@@ -42,8 +42,6 @@ public abstract class Encoding : ICloneable
        internal int codePage;
        internal int windows_code_page;
        bool is_readonly = true;
-       
-       internal static readonly byte[] empty = new byte[0];
 
        // Constructor.
        protected Encoding ()
@@ -246,10 +244,10 @@ public abstract class Encoding : ICloneable
                        throw new ArgumentNullException ("s");
 
                if (s.Length == 0)
-                       return empty;
+                       return EmptyArray<byte>.Value;
                int byteCount = GetByteCount (s);
                if (byteCount == 0)
-                       return empty;
+                       return EmptyArray<byte>.Value;
                unsafe {
                        fixed (char* cptr = s) {
                                byte [] bytes = new byte [byteCount];
@@ -697,7 +695,7 @@ public abstract class Encoding : ICloneable
        // Get the identifying preamble for this encoding.
        public virtual byte[] GetPreamble ()
        {
-               return empty;
+               return EmptyArray<byte>.Value;
        }
 
        // Decode a buffer of bytes into a string.
index 3761ecf41a6b7c66bb691d1cefe95858efd7f264..16413e8ad578a703c747aabed5bd206b6c0e0c2c 100644 (file)
@@ -316,7 +316,7 @@ public sealed class UTF32Encoding : Encoding
                        return preamble;
                }
                
-               return empty;
+               return EmptyArray<byte>.Value;
        }
 
        // Determine if this object is equal to another.
index f6d779996b3183a5ac97b17535341dd036939225..fd5e83be04e2305a2e4f14d198fe4e660401b196 100644 (file)
@@ -879,7 +879,7 @@ fail_no_space:
                if (emitIdentifier)
                        return new byte [] { 0xEF, 0xBB, 0xBF };
 
-               return empty;
+               return EmptyArray<byte>.Value;
        }
 
        // Determine if this object is equal to another.
index 216538d73bf54177357141ae482aa3426bd00d8b..6332b1509b352e9a92402cc6e00667ffdd4a2df5 100644 (file)
@@ -380,7 +380,7 @@ public class UnicodeEncoding : Encoding
                        return preamble;
                }
                
-               return empty;
+               return EmptyArray<byte>.Value;
        }
 
        // Determine if this object is equal to another.
index 7f6e461e85c01d750e6ef014eb8665bc03d728bf..fdf85a5c6679d9295a9d16390e661b6eff5eb971 100644 (file)
@@ -60,7 +60,7 @@ namespace System.Threading.Tasks
                CountdownEvent childTasks;
                
                int                 taskId;
-               TaskCreationOptions taskCreationOptions;
+               TaskCreationOptions creationOptions;
                
                internal TaskScheduler       scheduler;
 
@@ -137,26 +137,31 @@ namespace System.Threading.Tasks
                }
 
                internal Task (TaskActionInvoker invoker, object state, CancellationToken cancellationToken,
-                              TaskCreationOptions creationOptions, Task parent = null, Task contAncestor = null)
-               {
-                       this.invoker             = invoker;
-                       this.taskCreationOptions = creationOptions;
-                       this.state               = state;
-                       this.taskId              = Interlocked.Increment (ref id);
-                       this.status              = cancellationToken.IsCancellationRequested ? TaskStatus.Canceled : TaskStatus.Created;
-                       this.token               = cancellationToken;
-                       this.parent              = parent = parent == null ? current : parent;
-                       this.contAncestor        = contAncestor;
-
-                       // Process taskCreationOptions
-                       if (CheckTaskOptions (taskCreationOptions, TaskCreationOptions.AttachedToParent) && parent != null)
+                              TaskCreationOptions creationOptions, Task parent = null, Task contAncestor = null, bool ignoreCancellation = false)
+               {
+                       this.invoker         = invoker;
+                       this.creationOptions = creationOptions;
+                       this.state           = state;
+                       this.taskId          = Interlocked.Increment (ref id);
+                       this.token           = cancellationToken;
+                       this.parent          = parent = parent == null ? current : parent;
+                       this.contAncestor    = contAncestor;
+                       this.status          = cancellationToken.IsCancellationRequested && !ignoreCancellation ? TaskStatus.Canceled : TaskStatus.Created;
+
+                       // Process creationOptions
+#if NET_4_5
+                       if (HasFlag (creationOptions, TaskCreationOptions.AttachedToParent)
+                           && parent != null && !HasFlag (parent.CreationOptions, TaskCreationOptions.DenyChildAttach))
+#else
+                       if (HasFlag (creationOptions, TaskCreationOptions.AttachedToParent) && parent != null)
+#endif
                                parent.AddChild ();
 
-                       if (token.CanBeCanceled)
+                       if (token.CanBeCanceled && !ignoreCancellation)
                                cancellationRegistration = token.Register (l => ((Task) l).CancelReal (), this);
                }
 
-               static bool CheckTaskOptions (TaskCreationOptions opt, TaskCreationOptions member)
+               static bool HasFlag (TaskCreationOptions opt, TaskCreationOptions member)
                {
                        return (opt & member) == member;
                }
@@ -251,7 +256,11 @@ namespace System.Threading.Tasks
 
                internal Task ContinueWith (TaskActionInvoker invoker, CancellationToken cancellationToken, TaskContinuationOptions continuationOptions, TaskScheduler scheduler)
                {
-                       var continuation = new Task (invoker, null, cancellationToken, GetCreationOptions (continuationOptions), null, this);
+                       var lazyCancellation = false;
+#if NET_4_5
+                       lazyCancellation = (continuationOptions & TaskContinuationOptions.LazyCancellation) > 0;
+#endif
+                       var continuation = new Task (invoker, null, cancellationToken, GetCreationOptions (continuationOptions), null, this, lazyCancellation);
                        ContinueWithCore (continuation, continuationOptions, scheduler);
 
                        return continuation;
@@ -290,7 +299,11 @@ namespace System.Threading.Tasks
 
                internal Task<TResult> ContinueWith<TResult> (TaskActionInvoker invoker, CancellationToken cancellationToken, TaskContinuationOptions continuationOptions, TaskScheduler scheduler)
                {
-                       var continuation = new Task<TResult> (invoker, null, cancellationToken, GetCreationOptions (continuationOptions), parent, this);
+                       var lazyCancellation = false;
+#if NET_4_5
+                       lazyCancellation = (continuationOptions & TaskContinuationOptions.LazyCancellation) > 0;
+#endif
+                       var continuation = new Task<TResult> (invoker, null, cancellationToken, GetCreationOptions (continuationOptions), parent, this, lazyCancellation);
                        ContinueWithCore (continuation, continuationOptions, scheduler);
 
                        return continuation;
@@ -352,7 +365,7 @@ namespace System.Threading.Tasks
                        
                        // If worker is null it means it is a local one, revert to the old behavior
                        // If TaskScheduler.Current is not being used, the scheduler was explicitly provided, so we must use that
-                       if (scheduler != TaskScheduler.Current || childWorkAdder == null || CheckTaskOptions (taskCreationOptions, TaskCreationOptions.PreferFairness)) {
+                       if (scheduler != TaskScheduler.Current || childWorkAdder == null || HasFlag (creationOptions, TaskCreationOptions.PreferFairness)) {
                                scheduler.QueueTask (this);
                        } else {
                                /* Like the semantic of the ABP paper describe it, we add ourselves to the bottom 
@@ -383,7 +396,11 @@ namespace System.Threading.Tasks
                        var saveScheduler = TaskScheduler.Current;
 
                        current = this;
+#if NET_4_5
+                       TaskScheduler.Current = HasFlag (creationOptions, TaskCreationOptions.HideScheduler) ? TaskScheduler.Default : scheduler;
+#else
                        TaskScheduler.Current = scheduler;
+#endif
                        
                        if (!token.IsCancellationRequested) {
                                
@@ -468,7 +485,7 @@ namespace System.Threading.Tasks
                                ProcessChildExceptions ();
                                Status = exSlot == null ? TaskStatus.RanToCompletion : TaskStatus.Faulted;
                                ProcessCompleteDelegates ();
-                               if (CheckTaskOptions (taskCreationOptions, TaskCreationOptions.AttachedToParent) && parent != null)
+                               if (HasFlag (creationOptions, TaskCreationOptions.AttachedToParent) && parent != null)
                                        parent.ChildCompleted (this.Exception);
                        }
                }
@@ -512,7 +529,7 @@ namespace System.Threading.Tasks
                                cancellationRegistration.Value.Dispose ();
                        
                        // Tell parent that we are finished
-                       if (CheckTaskOptions (taskCreationOptions, TaskCreationOptions.AttachedToParent) && parent != null && status != TaskStatus.WaitingForChildrenToComplete) {
+                       if (HasFlag (creationOptions, TaskCreationOptions.AttachedToParent) && parent != null && status != TaskStatus.WaitingForChildrenToComplete) {
                                parent.ChildCompleted (this.Exception);
                        }
                }
@@ -937,9 +954,7 @@ namespace System.Threading.Tasks
                        if (cancellationToken.IsCancellationRequested)
                                return TaskConstants.Canceled;
 
-                       var t = new Task (action, cancellationToken, TaskCreationOptions.DenyChildAttach);
-                       t.Start ();
-                       return t;
+                       return Task.Factory.StartNew (action, cancellationToken, TaskCreationOptions.DenyChildAttach, TaskScheduler.Default);
                }
 
                public static Task Run (Func<Task> function)
@@ -952,9 +967,7 @@ namespace System.Threading.Tasks
                        if (cancellationToken.IsCancellationRequested)
                                return TaskConstants.Canceled;
 
-                       var t = new Task<Task> (function, cancellationToken);
-                       t.Start ();
-                       return t;
+                       return TaskExtensions.Unwrap (Task.Factory.StartNew (function, cancellationToken, TaskCreationOptions.DenyChildAttach, TaskScheduler.Default));
                }
 
                public static Task<TResult> Run<TResult> (Func<TResult> function)
@@ -967,9 +980,7 @@ namespace System.Threading.Tasks
                        if (cancellationToken.IsCancellationRequested)
                                return TaskConstants<TResult>.Canceled;
 
-                       var t = new Task<TResult> (function, cancellationToken, TaskCreationOptions.DenyChildAttach);
-                       t.Start ();
-                       return t;
+                       return Task.Factory.StartNew (function, cancellationToken, TaskCreationOptions.DenyChildAttach, TaskScheduler.Default);
                }
 
                public static Task<TResult> Run<TResult> (Func<Task<TResult>> function)
@@ -982,14 +993,7 @@ namespace System.Threading.Tasks
                        if (cancellationToken.IsCancellationRequested)
                                return TaskConstants<TResult>.Canceled;
 
-                       var t = Task<Task<TResult>>.Factory.StartNew (function, cancellationToken, TaskCreationOptions.DenyChildAttach, TaskScheduler.Default);
-                       return GetTaskResult (t);
-               }
-
-               async static Task<TResult> GetTaskResult<TResult> (Task<Task<TResult>> task)
-               {
-                       var r = await task.ConfigureAwait (false);
-                       return r.Result;
+                       return TaskExtensions.Unwrap (Task.Factory.StartNew (function, cancellationToken, TaskCreationOptions.DenyChildAttach, TaskScheduler.Default));
                }
 
                public static Task WhenAll (params Task[] tasks)
@@ -1217,7 +1221,7 @@ namespace System.Threading.Tasks
 
                public TaskCreationOptions CreationOptions {
                        get {
-                               return taskCreationOptions & MaxTaskCreationOptions;
+                               return creationOptions & MaxTaskCreationOptions;
                        }
                }
                
index bbc83bcb1ad41cd95d63e70b4fcf7fb6d8fc55dd..789071d6dc449050a960c5c57505d950ee7169cb 100644 (file)
@@ -34,6 +34,11 @@ namespace System.Threading.Tasks
                PreferFairness        = 0x00001,
                LongRunning           = 0x00002,
                AttachedToParent      = 0x00004,
+#if NET_4_5
+               DenyChildAttach       = 0x00008,
+               HideScheduler         = 0x00010,
+               LazyCancellation      = 0x00020,
+#endif
                NotOnRanToCompletion  = 0x10000,
                NotOnFaulted          = 0x20000,
                NotOnCanceled         = 0x40000,
index af9ff6fe122088829f7118fee3053873b78197d3..28f5c365ed6a98f554db86f37077a7b1a5a88d91 100644 (file)
@@ -339,7 +339,10 @@ namespace System.Threading.Tasks
                                throw new ArgumentOutOfRangeException ("creationOptions");
 
                        var tcs = new TaskCompletionSource<TResult> (state, creationOptions);
-                       beginMethod (l => InnerInvoke (tcs, endMethod, l), state);
+                       var iar = beginMethod (l => InnerInvoke (tcs, endMethod, l), state);
+                       if (iar != null && iar.CompletedSynchronously) {
+                               InnerInvoke (tcs, endMethod, iar);
+                       }
 
                        return tcs.Task;
                }
@@ -370,7 +373,10 @@ namespace System.Threading.Tasks
                                throw new ArgumentOutOfRangeException ("creationOptions");
 
                        var tcs = new TaskCompletionSource<TResult> (state, creationOptions);
-                       beginMethod (arg1, l => InnerInvoke (tcs, endMethod, l), state);
+                       var iar = beginMethod (arg1, l => InnerInvoke (tcs, endMethod, l), state);
+                       if (iar != null && iar.CompletedSynchronously) {
+                               InnerInvoke (tcs, endMethod, iar);
+                       }
 
                        return tcs.Task;
                }
@@ -400,7 +406,10 @@ namespace System.Threading.Tasks
                                throw new ArgumentOutOfRangeException ("creationOptions");
 
                        var tcs = new TaskCompletionSource<TResult> (state, creationOptions);
-                       beginMethod (arg1, arg2, l => InnerInvoke (tcs, endMethod, l), state);
+                       var iar = beginMethod (arg1, arg2, l => InnerInvoke (tcs, endMethod, l), state);
+                       if (iar != null && iar.CompletedSynchronously) {
+                               InnerInvoke (tcs, endMethod, iar);
+                       }
 
                        return tcs.Task;
                }
@@ -431,7 +440,10 @@ namespace System.Threading.Tasks
                                throw new ArgumentOutOfRangeException ("creationOptions");
 
                        var tcs = new TaskCompletionSource<TResult> (state, creationOptions);
-                       beginMethod (arg1, arg2, arg3, l => InnerInvoke (tcs, endMethod, l), state);
+                       var iar = beginMethod (arg1, arg2, arg3, l => InnerInvoke (tcs, endMethod, l), state);
+                       if (iar != null && iar.CompletedSynchronously) {
+                               InnerInvoke (tcs, endMethod, iar);
+                       }
 
                        return tcs.Task;
                }
index f02f17bf9d0f4938717ac7103f789e93d2801627..0d2891b4b0b51d01efa0a59e5ea7acc4bbde0641 100644 (file)
@@ -122,8 +122,8 @@ namespace System.Threading.Tasks
                                throw new ArgumentNullException ("function");
                }
 
-               internal Task (TaskActionInvoker invoker, object state, CancellationToken cancellationToken, TaskCreationOptions creationOptions, Task parent, Task contAncestor = null)
-                       : base (invoker, state, cancellationToken, creationOptions, parent, contAncestor)
+               internal Task (TaskActionInvoker invoker, object state, CancellationToken cancellationToken, TaskCreationOptions creationOptions, Task parent, Task contAncestor = null, bool ignoreCancellation = false)
+                       : base (invoker, state, cancellationToken, creationOptions, parent, contAncestor, ignoreCancellation)
                {
                }
 
@@ -323,6 +323,13 @@ namespace System.Threading.Tasks
                {
                        return new TaskAwaiter<TResult> (this);
                }
+
+               internal static Task<TResult> FromException (Exception ex)
+               {
+                       var tcs = new TaskCompletionSource<TResult>();
+                       tcs.TrySetException (ex);
+                       return tcs.Task;
+               }
 #endif
        }
 }
index 7666e17e496388e669e598b1a39680179e0393d8..683c98374180e2dad7e7a2160cda1144ccfeabee 100644 (file)
@@ -57,7 +57,7 @@ namespace System.Threading
                int threadWhoTookLock;
                readonly bool isThreadOwnerTrackingEnabled;
 
-               static Watch sw = Watch.StartNew ();
+               static readonly Watch sw = Watch.StartNew ();
 
                ConcurrentOrderedList<int> stallTickets;
 
index b12fad9f0029cee8d20970449f5eea16387f0010..0576cb14d75107e298af4643f0bb5afdf1138da7 100644 (file)
@@ -51,9 +51,7 @@ namespace System.Threading {
                internal IntPtr system_thread_handle;
 
                /* Note this is an opaque object (an array), not a CultureInfo */
-               private object cached_culture_info; /*FIXME remove this on the next corlib version bump*/
-               private IntPtr unused0;
-               internal bool threadpool_thread;
+               private object cached_culture_info;
                /* accessed only from unmanaged code */
                private IntPtr name;
                private int name_len; 
@@ -74,42 +72,42 @@ namespace System.Threading {
                /* current System.Runtime.Remoting.Contexts.Context instance
                   keep as an object to avoid triggering its class constructor when not needed */
                private object current_appcontext;
-               internal int stack_size;
+               private object pending_exception;
+               private object root_domain_thread;
+               internal byte[] _serialized_principal;
+               internal int _serialized_principal_version;
                private IntPtr appdomain_refs;
                private int interruption_requested;
                private IntPtr suspend_event;
                private IntPtr suspended_event;
                private IntPtr resume_event;
                private IntPtr synch_cs;
+               internal bool threadpool_thread;
                private bool thread_dump_requested;
-               private IntPtr end_stack;
                private bool thread_interrupt_requested;
+               private IntPtr end_stack;
+               /* These are used from managed code */
+               internal int stack_size;
                internal byte apartment_state;
                internal volatile int critical_region_level;
+               internal int managed_id;
                private int small_id;
                private IntPtr manage_callback;
-               private object pending_exception;
-               /* This is the ExecutionContext that will be set by
-                  start_wrapper() in the runtime. */
-               private ExecutionContext ec_to_set;
-
                private IntPtr interrupt_on_stop;
-
+               private IntPtr flags;
+               private IntPtr android_tid;
+               private IntPtr thread_pinning_ref;
+               private int ignore_next_signal;
                /* 
                 * These fields are used to avoid having to increment corlib versions
                 * when a new field is added to the unmanaged MonoThread structure.
                 */
-               private IntPtr unused3;
-               private IntPtr unused4;
-               private IntPtr unused5;
-               internal int managed_id;
-               int ignore_next_signal;
+               private IntPtr unused0;
+               private IntPtr unused1;
+               private IntPtr unused2;
                #endregion
 #pragma warning restore 169, 414, 649
 
-               internal byte[] _serialized_principal;
-               internal int _serialized_principal_version;
-
                // Closes the system thread handle
                [MethodImplAttribute(MethodImplOptions.InternalCall)]
                private extern void Thread_free_internal(IntPtr handle);
index 917c66729ae4a6a5aa1cbdcb06f40bcfb29ed1d8..7bebd9c013bd1554fd4285ed54e5a61454841f0c 100644 (file)
@@ -41,7 +41,7 @@ namespace System.Threading
                : MarshalByRefObject, IDisposable
 #endif
        {
-               static Scheduler scheduler = Scheduler.Instance;
+               static readonly Scheduler scheduler = Scheduler.Instance;
 #region Timer instance fields
                TimerCallback callback;
                object state;
index ef253f49dc4d5ca2a1ef16d44f9afbde4a7a6199..48e51d267e938645289b20cb9947aec257722aee 100644 (file)
@@ -490,7 +490,7 @@ namespace System
 
                        int hash = 0;
                        for (int i = 0; i < Length; i++)
-                               hash = ((hash << 7) + hash) ^ GetValue (i).GetHashCode ();
+                               hash = ((hash << 7) + hash) ^ comparer.GetHashCode (GetValueImpl (i));
                        return hash;
                }
 #endif
@@ -1134,28 +1134,13 @@ namespace System
                        return lb - 1;
                }
 
-               /* delegate used to swap array elements */
-               delegate void Swapper (int i, int j);
-
-               static Swapper get_swapper (Array array)
-               {
-                       if (array is int[])
-                               return new Swapper (array.int_swapper);
-                       if (array is double[])
-                               return new Swapper (array.double_swapper);
-                       if (array is object[]) {
-                               return new Swapper (array.obj_swapper);
-                       }
-                       return new Swapper (array.slow_swapper);
-               }
-
                [ReliabilityContractAttribute (Consistency.MayCorruptInstance, Cer.MayFail)]
                public static void Reverse (Array array)
                {
                        if (array == null)
                                throw new ArgumentNullException ("array");
 
-                       Reverse (array, array.GetLowerBound (0), array.GetLength (0));
+                       Reverse (array, array.GetLowerBound (0), array.Length);
                }
 
                [ReliabilityContractAttribute (Consistency.MayCorruptInstance, Cer.MayFail)]
@@ -1175,45 +1160,120 @@ namespace System
                                throw new ArgumentException ();
 
                        int end = index + length - 1;
-                       object[] oarray = array as object[];
-                       if (oarray != null) {
+                       var et = array.GetType ().GetElementType ();
+                       switch (Type.GetTypeCode (et)) {
+                       case TypeCode.Boolean:
                                while (index < end) {
-                                       object tmp = oarray [index];
-                                       oarray [index] = oarray [end];
-                                       oarray [end] = tmp;
+                                       bool a, b;
+
+                                       array.GetGenericValueImpl (index, out a);
+                                       array.GetGenericValueImpl (end, out b);
+                                       array.SetGenericValueImpl (index, ref b);
+                                       array.SetGenericValueImpl (end, ref a);
                                        ++index;
                                        --end;
                                }
                                return;
-                       }
-                       int[] iarray = array as int[];
-                       if (iarray != null) {
+
+                       case TypeCode.Byte:
+                       case TypeCode.SByte:
                                while (index < end) {
-                                       int tmp = iarray [index];
-                                       iarray [index] = iarray [end];
-                                       iarray [end] = tmp;
+                                       byte a, b;
+
+                                       array.GetGenericValueImpl (index, out a);
+                                       array.GetGenericValueImpl (end, out b);
+                                       array.SetGenericValueImpl (index, ref b);
+                                       array.SetGenericValueImpl (end, ref a);
                                        ++index;
                                        --end;
                                }
                                return;
-                       }
-                       double[] darray = array as double[];
-                       if (darray != null) {
+
+                       case TypeCode.Int16:
+                       case TypeCode.UInt16:
+                       case TypeCode.Char:
                                while (index < end) {
-                                       double tmp = darray [index];
-                                       darray [index] = darray [end];
-                                       darray [end] = tmp;
+                                       short a, b;
+
+                                       array.GetGenericValueImpl (index, out a);
+                                       array.GetGenericValueImpl (end, out b);
+                                       array.SetGenericValueImpl (index, ref b);
+                                       array.SetGenericValueImpl (end, ref a);
                                        ++index;
                                        --end;
                                }
                                return;
-                       }
-                       // fallback
-                       Swapper swapper = get_swapper (array);
-                       while (index < end) {
-                               swapper (index, end);
-                               ++index;
-                               --end;
+
+                       case TypeCode.Int32:
+                       case TypeCode.UInt32:
+                       case TypeCode.Single:
+                               while (index < end) {
+                                       int a, b;
+
+                                       array.GetGenericValueImpl (index, out a);
+                                       array.GetGenericValueImpl (end, out b);
+                                       array.SetGenericValueImpl (index, ref b);
+                                       array.SetGenericValueImpl (end, ref a);
+                                       ++index;
+                                       --end;
+                               }
+                               return;
+
+                       case TypeCode.Int64:
+                       case TypeCode.UInt64:
+                       case TypeCode.Double:
+                               while (index < end) {
+                                       long a, b;
+
+                                       array.GetGenericValueImpl (index, out a);
+                                       array.GetGenericValueImpl (end, out b);
+                                       array.SetGenericValueImpl (index, ref b);
+                                       array.SetGenericValueImpl (end, ref a);
+                                       ++index;
+                                       --end;
+                               }
+                               return;
+
+                       case TypeCode.Decimal:
+                               while (index < end) {
+                                       decimal a, b;
+
+                                       array.GetGenericValueImpl (index, out a);
+                                       array.GetGenericValueImpl (end, out b);
+                                       array.SetGenericValueImpl (index, ref b);
+                                       array.SetGenericValueImpl (end, ref a);
+                                       ++index;
+                                       --end;
+                               }
+                               return;
+
+                       case TypeCode.String:
+                       case TypeCode.Object:
+                               while (index < end) {
+                                       object a, b;
+
+                                       array.GetGenericValueImpl (index, out a);
+                                       array.GetGenericValueImpl (end, out b);
+                                       array.SetGenericValueImpl (index, ref b);
+                                       array.SetGenericValueImpl (end, ref a);
+                                       ++index;
+                                       --end;
+                               }
+                               return;
+                       default:
+                               if (array is object[])
+                                       goto case TypeCode.Object;
+
+                               // Very slow fallback
+                               while (index < end) {
+                                       object val = array.GetValueImpl (index);
+                                       array.SetValueImpl (array.GetValueImpl (end), index);
+                                       array.SetValueImpl (val, end);
+                                       ++index;
+                                       --end;
+                               }
+
+                               return;
                        }
                }
 
@@ -1388,34 +1448,6 @@ namespace System
                                throw new InvalidOperationException (Locale.GetText ("The comparer threw an exception."), e);
                        }
                }
-
-               /* note, these are instance methods */
-               void int_swapper (int i, int j) {
-                       int[] array = this as int[];
-                       int val = array [i];
-                       array [i] = array [j];
-                       array [j] = val;
-               }
-
-               void obj_swapper (int i, int j) {
-                       object[] array = this as object[];
-                       object val = array [i];
-                       array [i] = array [j];
-                       array [j] = val;
-               }
-
-               void slow_swapper (int i, int j) {
-                       object val = GetValueImpl (i);
-                       SetValueImpl (GetValue (j), i);
-                       SetValueImpl (val, j);
-               }
-
-               void double_swapper (int i, int j) {
-                       double[] array = this as double[];
-                       double val = array [i];
-                       array [i] = array [j];
-                       array [j] = val;
-               }
                
                struct QSortStack {
                        public int high;
@@ -3077,5 +3109,13 @@ namespace System
                {
                        Copy (sourceArray, sourceIndex, destinationArray, destinationIndex, length);
                }
+
+               internal static T UnsafeLoad<T> (T[] array, int index) {
+                       return array [index];
+               }
+
+               internal static void UnsafeStore<T> (T[] array, int index, T value) {
+                       array [index] = value;
+               }
        }
 }
diff --git a/mcs/class/corlib/System/EmptyArray.cs b/mcs/class/corlib/System/EmptyArray.cs
new file mode 100644 (file)
index 0000000..136f887
--- /dev/null
@@ -0,0 +1,35 @@
+//
+// EmptyArray.cs
+//
+// Authors:
+//     Marek Safar  <marek.safar@gmail.com>
+//
+// Copyright (C) 2012 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.
+//
+
+namespace System
+{
+       static class EmptyArray<T>
+       {
+               public static readonly T[] Value = new T [0];
+       }
+}
\ No newline at end of file
index 4cc6f3c55413ce9a421fbea0c27e5c62f4351a50..789ad5de6d8be4649fe39af889d40d1843ccb229 100644 (file)
@@ -48,8 +48,8 @@ namespace System
                internal Hashtable name_hash;
                [ThreadStatic]
                static Hashtable cache;
-               static Hashtable global_cache;
-               static object global_cache_monitor;
+               static Hashtable global_cache = new Hashtable ();
+               static object global_cache_monitor = new object ();
                
                [MethodImplAttribute (MethodImplOptions.InternalCall)]
                private static extern void get_enum_info (Type enumType, out MonoEnumInfo info);
@@ -145,12 +145,6 @@ namespace System
                                return 1;
                        }
                }
-                       
-               static MonoEnumInfo ()
-               {
-                       global_cache_monitor = new object ();
-                       global_cache = new Hashtable ();
-               }
 
                static Hashtable Cache {
                        get {
@@ -512,8 +506,6 @@ namespace System
                        throw new ArgumentException ("typeCode is not a valid type code for an Enum");
                }
 
-               private static char [] split_char = { ',' };
-
                [ComVisible(true)]
                public static object Parse (Type enumType, string value, bool ignoreCase)
                {
@@ -537,6 +529,8 @@ namespace System
                        return result;
                }
 
+               static char [] split_char;
+
                static bool Parse<TEnum> (Type enumType, string value, bool ignoreCase, out TEnum result)
                {
                        result = default (TEnum);
@@ -555,6 +549,8 @@ namespace System
 
                        // is 'value' a list of named constants?
                        if (value.IndexOf (',') != -1) {
+                               if (split_char == null)
+                                       split_char = new [] { ',' };
                                string [] names = value.Split (split_char);
                                ulong retVal = 0;
                                for (int i = 0; i < names.Length; ++i) {
index 07d80cf75503b687a84646a33d2b4b2371613dda..0571215dafd6e3876928259621cce8030ac013a8 100644 (file)
@@ -56,7 +56,7 @@ namespace System {
                 * of icalls, do not require an increment.
                 */
 #pragma warning disable 169
-               private const int mono_corlib_version = 105;
+               private const int mono_corlib_version = 107;
 #pragma warning restore 169
 
                [ComVisible (true)]
index dda41dd8c767c6c91ef9a0e19950bca9e84a8eca..15a58c0be476810863fec276206bb608c540a00e 100644 (file)
@@ -402,8 +402,7 @@ namespace System
                                return new AttributeUsageAttribute (AttributeTargets.Class);
 
                        AttributeUsageAttribute usageAttribute = null;
-                       object[] attribs = GetCustomAttributes (attributeType,
-                               MonoCustomAttrs.AttributeUsageType, false);
+                       object[] attribs = GetCustomAttributes (attributeType, typeof(AttributeUsageAttribute), false);
                        if (attribs.Length == 0)
                        {
                                // if no AttributeUsage was defined on the attribute level, then
@@ -435,7 +434,6 @@ namespace System
                        return ((AttributeUsageAttribute) attribs[0]);
                }
 
-               private static readonly Type AttributeUsageType = typeof(AttributeUsageAttribute);
                private static readonly AttributeUsageAttribute DefaultAttributeUsage =
                        new AttributeUsageAttribute (AttributeTargets.All);
 
index 9b345f17d72ab9859b397882cb6de215e238c375..91f24fb835f0dff7817a4c20e1dbdedd3beec437 100644 (file)
@@ -11,6 +11,7 @@
 //
 // (C) 2001 Ximian, Inc.  http://www.ximian.com
 // Copyright (C) 2004-2005 Novell (http://www.novell.com)
+// Copyright (c) 2012 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
@@ -785,17 +786,15 @@ namespace System
                internal static unsafe int CompareOrdinalUnchecked (String strA, int indexA, int lenA, String strB, int indexB, int lenB)
                {
                        if (strA == null) {
-                               if (strB == null)
-                                       return 0;
-                               else
-                                       return -1;
-                       } else if (strB == null) {
+                               return strB == null ? 0 : -1;
+                       }
+                       if (strB == null) {
                                return 1;
                        }
                        int lengthA = Math.Min (lenA, strA.Length - indexA);
                        int lengthB = Math.Min (lenB, strB.Length - indexB);
 
-                       if (lengthA == lengthB && Object.ReferenceEquals (strA, strB))
+                       if (lengthA == lengthB && indexA == indexB && Object.ReferenceEquals (strA, strB))
                                return 0;
 
                        fixed (char* aptr = strA, bptr = strB) {
index a08bc519668d65bf8c3f2ded3675cdc22bdc5403..906d21addafbbc87d2fc1ae6e2ac4f8a6f7bb79a 100644 (file)
@@ -37,11 +37,14 @@ namespace System
        [Serializable, ComVisible(true)]
        public abstract class StringComparer : IComparer, IEqualityComparer, IComparer<string>, IEqualityComparer<string>
        {
-               static StringComparer invariantCultureIgnoreCase = new CultureAwareComparer (CultureInfo.InvariantCulture, true);
-               static StringComparer invariantCulture = new CultureAwareComparer (CultureInfo.InvariantCulture, false);
-               static StringComparer ordinalIgnoreCase = new OrdinalComparer (true);
-               static StringComparer ordinal = new OrdinalComparer (false);
-
+               static class Predefined
+               {
+                       public static readonly StringComparer invariantCultureIgnoreCase = new CultureAwareComparer (CultureInfo.InvariantCulture, true);
+                       public static readonly StringComparer invariantCulture = new CultureAwareComparer (CultureInfo.InvariantCulture, false);
+                       public static readonly StringComparer ordinalIgnoreCase = new OrdinalComparer (true);
+                       public static readonly StringComparer ordinal = new OrdinalComparer (false);
+               }
+               
                // Constructors
                protected StringComparer ()
                {
@@ -62,22 +65,22 @@ namespace System
 
                public static StringComparer InvariantCulture {
                        get {
-                               return invariantCulture;
+                               return Predefined.invariantCulture;
                        }
                }
 
                public static StringComparer InvariantCultureIgnoreCase {
                        get {
-                               return invariantCultureIgnoreCase;
+                               return Predefined.invariantCultureIgnoreCase;
                        }
                }
 
                public static StringComparer Ordinal {
-                       get { return ordinal; }
+                       get { return Predefined.ordinal; }
                }
 
                public static StringComparer OrdinalIgnoreCase {
-                       get { return ordinalIgnoreCase; }
+                       get { return Predefined.ordinalIgnoreCase; }
                }
 
                // Methods
index 89279cab218e128e8a12987a64d3cef1abd5aed0..e14f7127e20c9e1a93b7b943e2a5830e86b225c7 100644 (file)
@@ -47,7 +47,7 @@ namespace System {
                static int terminal_size;
                
                //static uint flag = 0xdeadbeef;
-               static string [] locations = { "/etc/terminfo", "/usr/share/terminfo", "/usr/lib/terminfo" };
+               readonly static string [] locations = { "/etc/terminfo", "/usr/share/terminfo", "/usr/lib/terminfo" };
 
                TermInfoReader reader;
                int cursorLeft;
@@ -1325,74 +1325,6 @@ namespace System {
                        keymap [TermInfoStrings.KeyIc] = new ConsoleKeyInfo ('\0', ConsoleKey.Insert, false, false, false);
                }
 
-               //
-               // The keys that we know about and use
-               //
-               static TermInfoStrings [] UsedKeys = {
-                       TermInfoStrings.KeyBackspace,
-                       TermInfoStrings.KeyClear,
-                       TermInfoStrings.KeyDown,
-                       TermInfoStrings.KeyF1,
-                       TermInfoStrings.KeyF10,
-                       TermInfoStrings.KeyF2,
-                       TermInfoStrings.KeyF3,
-                       TermInfoStrings.KeyF4,
-                       TermInfoStrings.KeyF5,
-                       TermInfoStrings.KeyF6,
-                       TermInfoStrings.KeyF7,
-                       TermInfoStrings.KeyF8,
-                       TermInfoStrings.KeyF9,
-                       TermInfoStrings.KeyHome,
-                       TermInfoStrings.KeyLeft,
-                       TermInfoStrings.KeyLl,
-                       TermInfoStrings.KeyNpage,
-                       TermInfoStrings.KeyPpage,
-                       TermInfoStrings.KeyRight,
-                       TermInfoStrings.KeySf,
-                       TermInfoStrings.KeySr,
-                       TermInfoStrings.KeyUp,
-                       TermInfoStrings.KeyA1,
-                       TermInfoStrings.KeyA3,
-                       TermInfoStrings.KeyB2,
-                       TermInfoStrings.KeyC1,
-                       TermInfoStrings.KeyC3,
-                       TermInfoStrings.KeyBtab,
-                       TermInfoStrings.KeyBeg,
-                       TermInfoStrings.KeyCopy,
-                       TermInfoStrings.KeyEnd,
-                       TermInfoStrings.KeyEnter,
-                       TermInfoStrings.KeyHelp,
-                       TermInfoStrings.KeyPrint,
-                       TermInfoStrings.KeyUndo,
-                       TermInfoStrings.KeySbeg,
-                       TermInfoStrings.KeyScopy,
-                       TermInfoStrings.KeySdc,
-                       TermInfoStrings.KeyShelp,
-                       TermInfoStrings.KeyShome,
-                       TermInfoStrings.KeySleft,
-                       TermInfoStrings.KeySprint,
-                       TermInfoStrings.KeySright,
-                       TermInfoStrings.KeySundo,
-                       TermInfoStrings.KeyF11,
-                       TermInfoStrings.KeyF12,
-                       TermInfoStrings.KeyF13,
-                       TermInfoStrings.KeyF14,
-                       TermInfoStrings.KeyF15,
-                       TermInfoStrings.KeyF16,
-                       TermInfoStrings.KeyF17,
-                       TermInfoStrings.KeyF18,
-                       TermInfoStrings.KeyF19,
-                       TermInfoStrings.KeyF20,
-                       TermInfoStrings.KeyF21,
-                       TermInfoStrings.KeyF22,
-                       TermInfoStrings.KeyF23,
-                       TermInfoStrings.KeyF24,
-
-                       // These were missing
-                       TermInfoStrings.KeyDc,
-                       TermInfoStrings.KeyIc
-               };
-               
                void InitKeys ()
                {
                        if (initKeys)
@@ -1401,6 +1333,74 @@ namespace System {
                        CreateKeyMap ();
                        rootmap = new ByteMatcher ();
 
+                       //
+                       // The keys that we know about and use
+                       //
+                       var UsedKeys = new [] {
+                               TermInfoStrings.KeyBackspace,
+                               TermInfoStrings.KeyClear,
+                               TermInfoStrings.KeyDown,
+                               TermInfoStrings.KeyF1,
+                               TermInfoStrings.KeyF10,
+                               TermInfoStrings.KeyF2,
+                               TermInfoStrings.KeyF3,
+                               TermInfoStrings.KeyF4,
+                               TermInfoStrings.KeyF5,
+                               TermInfoStrings.KeyF6,
+                               TermInfoStrings.KeyF7,
+                               TermInfoStrings.KeyF8,
+                               TermInfoStrings.KeyF9,
+                               TermInfoStrings.KeyHome,
+                               TermInfoStrings.KeyLeft,
+                               TermInfoStrings.KeyLl,
+                               TermInfoStrings.KeyNpage,
+                               TermInfoStrings.KeyPpage,
+                               TermInfoStrings.KeyRight,
+                               TermInfoStrings.KeySf,
+                               TermInfoStrings.KeySr,
+                               TermInfoStrings.KeyUp,
+                               TermInfoStrings.KeyA1,
+                               TermInfoStrings.KeyA3,
+                               TermInfoStrings.KeyB2,
+                               TermInfoStrings.KeyC1,
+                               TermInfoStrings.KeyC3,
+                               TermInfoStrings.KeyBtab,
+                               TermInfoStrings.KeyBeg,
+                               TermInfoStrings.KeyCopy,
+                               TermInfoStrings.KeyEnd,
+                               TermInfoStrings.KeyEnter,
+                               TermInfoStrings.KeyHelp,
+                               TermInfoStrings.KeyPrint,
+                               TermInfoStrings.KeyUndo,
+                               TermInfoStrings.KeySbeg,
+                               TermInfoStrings.KeyScopy,
+                               TermInfoStrings.KeySdc,
+                               TermInfoStrings.KeyShelp,
+                               TermInfoStrings.KeyShome,
+                               TermInfoStrings.KeySleft,
+                               TermInfoStrings.KeySprint,
+                               TermInfoStrings.KeySright,
+                               TermInfoStrings.KeySundo,
+                               TermInfoStrings.KeyF11,
+                               TermInfoStrings.KeyF12,
+                               TermInfoStrings.KeyF13,
+                               TermInfoStrings.KeyF14,
+                               TermInfoStrings.KeyF15,
+                               TermInfoStrings.KeyF16,
+                               TermInfoStrings.KeyF17,
+                               TermInfoStrings.KeyF18,
+                               TermInfoStrings.KeyF19,
+                               TermInfoStrings.KeyF20,
+                               TermInfoStrings.KeyF21,
+                               TermInfoStrings.KeyF22,
+                               TermInfoStrings.KeyF23,
+                               TermInfoStrings.KeyF24,
+
+                               // These were missing
+                               TermInfoStrings.KeyDc,
+                               TermInfoStrings.KeyIc
+                       };
+                       
                        foreach (TermInfoStrings tis in UsedKeys)
                                AddStringMapping (tis);
                        
index a160d80863b924a743bdd0636a4d50829054485d..8f5bbdf1e6af54d51e072eff58ae0447b3d4e2e2 100644 (file)
@@ -347,6 +347,20 @@ namespace MonoTests.System.Collections
                }
 #endif
 
+               [Test]
+               public void ClearDoesNotTouchCapacity ()
+               {
+                       SortedList sl = new SortedList ();
+                       // according to MSDN docs Clear () does not change capacity
+                       for (int i = 0; i < 18; i++) {
+                               sl.Add (i, i);
+                       }
+                       int capacityBeforeClear = sl.Capacity;
+                       sl.Clear ();
+                       int capacityAfterClear = sl.Capacity;
+                       Assert.AreEqual (capacityBeforeClear, capacityAfterClear);
+               }
+
                [Test]
                public void TestClone ()
                {
index 938d578a85f8aa51e628ac41f25a531e67263f02..2f8e2c05f5a779229b5cb3a1d15ece50c1f80045 100644 (file)
@@ -17,6 +17,9 @@ using System.IO;
 using System.Runtime.Serialization.Formatters.Binary;
 using System.Text;
 using System.Threading;
+#if NET_4_5
+using System.Threading.Tasks;
+#endif
 
 using NUnit.Framework;
 
@@ -45,6 +48,54 @@ namespace MonoTests.System.IO
                        }
                }
 
+               class ExceptionalStream : MemoryStream
+               {
+                       public static string Message = "ExceptionalMessage";
+                       public bool Throw = false;
+
+                       public ExceptionalStream ()
+                       {
+                               AllowRead = true;
+                               AllowWrite = true;
+                       }
+
+                       public ExceptionalStream (byte [] buffer, bool writable) : base (buffer, writable)
+                       {
+                               AllowRead = true;
+                               AllowWrite = true;  // we are testing the inherited write property
+                       }
+
+
+                       public override int Read(byte[] buffer, int offset, int count)
+                       {
+                               if (Throw)
+                                       throw new Exception(Message);
+
+                               return base.Read(buffer, offset, count);
+                       }
+
+                       public override void Write(byte[] buffer, int offset, int count)
+                       {
+                               if (Throw)
+                                       throw new Exception(Message);
+
+                               base.Write(buffer, offset, count);
+                       }
+
+                       public bool AllowRead { get; set; }
+                       public override bool CanRead { get { return AllowRead; } }
+
+                       public bool AllowWrite { get; set; }
+                       public override bool CanWrite { get { return AllowWrite; } }
+                       
+                       public override void Flush()
+                       {
+                               if (Throw)
+                                       throw new Exception(Message);
+
+                               base.Flush();
+                       }
+               }
 
                MemoryStream testStream;
                byte [] testStreamData;
@@ -1074,6 +1125,150 @@ namespace MonoTests.System.IO
                        Assert.AreEqual (1, buffer[0], "#4");
                }
 
+               [Test]
+               public void TestAsyncReadExceptions ()
+               {
+                       var buffer = new byte [3];
+                       using (var stream = new ExceptionalStream ()) {
+                               stream.Write (buffer, 0, buffer.Length);
+                               stream.Write (buffer, 0, buffer.Length);
+                               stream.Position = 0;
+                               var task = stream.ReadAsync (buffer, 0, buffer.Length);
+                               Assert.AreEqual (TaskStatus.RanToCompletion, task.Status, "#1");
+
+                               stream.Throw = true;
+                               task = stream.ReadAsync (buffer, 0, buffer.Length);
+                               Assert.IsTrue (task.IsFaulted, "#2");
+                               Assert.AreEqual (ExceptionalStream.Message, task.Exception.InnerException.Message, "#3");
+                       }
+               }
+
+               [Test]
+               public void TestAsyncWriteExceptions ()
+               {
+                       var buffer = new byte [3];
+                       using (var stream = new ExceptionalStream ()) {
+                               var task = stream.WriteAsync (buffer, 0, buffer.Length);
+                               Assert.AreEqual(TaskStatus.RanToCompletion, task.Status, "#1");
+
+                               stream.Throw = true;
+                               task = stream.WriteAsync (buffer, 0, buffer.Length);
+                               Assert.IsTrue (task.IsFaulted, "#2");
+                               Assert.AreEqual (ExceptionalStream.Message, task.Exception.InnerException.Message, "#3");
+                       }
+               }
+
+               [Test]
+               public void TestAsyncArgumentExceptions ()
+               {
+                       var buffer = new byte [3];
+                       using (var stream = new ExceptionalStream ()) {
+                               var task = stream.WriteAsync (buffer, 0, buffer.Length);
+                               Assert.IsTrue (task.IsCompleted);
+
+                               Assert.IsTrue (Throws<ArgumentException> (() => { stream.WriteAsync (buffer, 0, 1000); }), "#2");
+                               Assert.IsTrue (Throws<ArgumentException> (() => { stream.ReadAsync (buffer, 0, 1000); }), "#3");
+                               Assert.IsTrue (Throws<ArgumentException> (() => { stream.WriteAsync (buffer, 0, 1000, new CancellationToken (true)); }), "#4");
+                               Assert.IsTrue (Throws<ArgumentException> (() => { stream.ReadAsync (buffer, 0, 1000, new CancellationToken (true)); }), "#5");
+                               Assert.IsTrue (Throws<ArgumentException> (() => { stream.WriteAsync (null, 0, buffer.Length, new CancellationToken (true)); }), "#6");
+                               Assert.IsTrue (Throws<ArgumentException> (() => { stream.ReadAsync (null, 0, buffer.Length, new CancellationToken (true)); }), "#7");
+                               Assert.IsTrue (Throws<ArgumentException> (() => { stream.WriteAsync (buffer, 1000, buffer.Length, new CancellationToken (true)); }), "#8");
+                               Assert.IsTrue (Throws<ArgumentException> (() => { stream.ReadAsync (buffer, 1000, buffer.Length, new CancellationToken (true)); }), "#9");
+
+                               stream.AllowRead = false;
+                               var read_task = stream.ReadAsync (buffer, 0, buffer.Length);
+                               Assert.AreEqual (TaskStatus.RanToCompletion, read_task.Status, "#8");
+                               Assert.AreEqual (0, read_task.Result, "#9");
+
+                               stream.Position = 0;
+                               read_task = stream.ReadAsync (buffer, 0, buffer.Length);
+                               Assert.AreEqual (TaskStatus.RanToCompletion, read_task.Status, "#9");
+                               Assert.AreEqual (3, read_task.Result, "#10");
+
+                               var write_task = stream.WriteAsync (buffer, 0, buffer.Length);
+                               Assert.AreEqual (TaskStatus.RanToCompletion, write_task.Status, "#10");
+
+                               // test what happens when CanRead is overridden
+                               using (var norm = new ExceptionalStream (buffer, false)) {
+                                       write_task = norm.WriteAsync (buffer, 0, buffer.Length);
+                                       Assert.AreEqual (TaskStatus.RanToCompletion, write_task.Status, "#11");
+                               }
+
+                               stream.AllowWrite = false;
+                               Assert.IsTrue (Throws<NotSupportedException> (() => { stream.Write (buffer, 0, buffer.Length); }), "#12");
+                               write_task = stream.WriteAsync (buffer, 0, buffer.Length);
+                               Assert.AreEqual (TaskStatus.Faulted, write_task.Status, "#13");
+                       }
+               }
+
+               [Test]
+               public void TestAsyncFlushExceptions ()
+               {
+                       using (var stream = new ExceptionalStream ()) {
+                               var task = stream.FlushAsync ();
+                               Assert.IsTrue (task.IsCompleted, "#1");
+                               
+                               task = stream.FlushAsync (new CancellationToken(true));
+                               Assert.IsTrue (task.IsCanceled, "#2");
+
+                               stream.Throw = true;
+                               task = stream.FlushAsync ();
+                               Assert.IsTrue (task.IsFaulted, "#3");
+                               Assert.AreEqual (ExceptionalStream.Message, task.Exception.InnerException.Message, "#4");
+
+                               task = stream.FlushAsync (new CancellationToken (true));
+                               Assert.IsTrue (task.IsCanceled, "#5");
+                       }
+               }
+
+               [Test]
+               public void TestCopyAsync ()
+               {
+                       using (var stream = new ExceptionalStream ()) {
+                               using (var dest = new ExceptionalStream ()) {
+                                       byte [] buffer = new byte [] { 12, 13, 8 };
+
+                                       stream.Write (buffer, 0, buffer.Length);
+                                       stream.Position = 0;
+                                       var task = stream.CopyToAsync (dest, 1);
+                                       Assert.AreEqual (TaskStatus.RanToCompletion, task.Status);
+                                       Assert.AreEqual (3, stream.Length);
+                                       Assert.AreEqual (3, dest.Length);
+
+                                       stream.Position = 0;
+                                       dest.Throw = true;
+                                       task = stream.CopyToAsync (dest, 1);
+                                       Assert.AreEqual (TaskStatus.Faulted, task.Status);
+                                       Assert.AreEqual (3, stream.Length);
+                                       Assert.AreEqual (3, dest.Length);
+                               }
+                       }
+               }
+
+               [Test]
+               public void WritableOverride ()
+               {
+                       var buffer = new byte [3];
+                       var stream = new MemoryStream (buffer, false);
+                       Assert.IsTrue (Throws<NotSupportedException> (() => { stream.Write (buffer, 0, buffer.Length); }), "#1");
+                       Assert.IsTrue (Throws<ArgumentNullException> (() => { stream.Write (null, 0, buffer.Length); }), "#1.1");
+                       stream.Close ();
+                       Assert.IsTrue (Throws<ObjectDisposedException> (() => { stream.Write (buffer, 0, buffer.Length); }), "#2");
+                       stream = new MemoryStream (buffer, true);
+                       stream.Close ();
+                       Assert.IsFalse (stream.CanWrite, "#3");
+
+                       var estream = new ExceptionalStream (buffer, false);
+                       Assert.IsFalse (Throws<Exception> (() => { estream.Write (buffer, 0, buffer.Length); }), "#4");
+                       estream.AllowWrite = false;
+                       estream.Position = 0;
+                       Assert.IsTrue (Throws<NotSupportedException> (() => { estream.Write (buffer, 0, buffer.Length); }), "#5");
+                       estream.AllowWrite = true;
+                       estream.Close ();
+                       Assert.IsTrue (estream.CanWrite, "#6");
+                       Assert.IsTrue (Throws<ObjectDisposedException> (() => { stream.Write (buffer, 0, buffer.Length); }), "#7");
+               }
+
                [Test]
                public void ReadAsync_Canceled ()
                {
@@ -1109,6 +1304,16 @@ namespace MonoTests.System.IO
                        t = testStream.WriteAsync (buffer, 0, buffer.Length);
                        Assert.IsTrue (t.IsCompleted, "#1");
                }
+
+               bool Throws<T> (Action a) where T : Exception
+               {
+                       try {
+                               a ();
+                               return false;
+                       } catch (T) {
+                               return true;
+                       }
+               }
 #endif
        }
 }
index ac1b49d543c96c87432c192f8e9d7653e02c8774..81ee37cddbe7fc51d2cc09d169e3613a5f71cf3a 100644 (file)
@@ -1052,18 +1052,29 @@ namespace MonoTests.System.IO
        }
 
 #if NET_4_5
-               [Test]
-               public void FlushAsync ()
-               {
-                       ManualResetEvent mre = new ManualResetEvent (false);
-                       var m = new MockStream(true, false, true);
-                       var w = new StreamWriter (m);
-                       w.Write(1);
-                       Assert.AreEqual (0L, m.Length, "#1");
-                       var t = w.WriteLineAsync ();
-                       Assert.IsTrue (t.Wait (1000), "#2");
+       [Test]
+       public void FlushAsync ()
+       {
+               ManualResetEvent mre = new ManualResetEvent (false);
+               var m = new MockStream(true, false, true);
+               var w = new StreamWriter (m);
+               w.Write(1);
+               Assert.AreEqual (0L, m.Length, "#1");
+               var t = w.WriteLineAsync ();
+               Assert.IsTrue (t.Wait (1000), "#2");
+       }
+
+       [Test]
+       public void KeepOpenWithDispose ()
+       {
+               var ms = new MemoryStream ();
+               using (StreamWriter writer = new StreamWriter (ms, new UTF8Encoding (false), 4096, true)) {
+                       writer.Write ('X');
                }
 
+               Assert.AreEqual (1, ms.Length);
+       }
+
 #endif
 
        // TODO - Write - test errors, functionality tested in TestFlush.
index c86a161bf5080cda3270f0aaafa75d384ccb1146..52c6a27c7d1cf17810d257805a67add15ee076e7 100644 (file)
@@ -192,6 +192,28 @@ namespace MonoTests.System.Runtime.Serialization.Formatters.Binary
                }
        }
 
+       [Serializable]
+       public class Comparable
+       {
+               public int Foo {
+                       get;
+                       set;
+               }
+
+               public override bool Equals (object obj)
+               {
+                       var other = obj as Comparable;
+                       if (other == null)
+                               return false;
+                       return other.Foo == Foo;
+               }
+
+               public override int GetHashCode ()
+               {
+                       return Foo;
+               }
+       }
+
        [TestFixture]
        public class BinaryFormatterTest
        {
@@ -320,6 +342,24 @@ namespace MonoTests.System.Runtime.Serialization.Formatters.Binary
                                Assert.AreEqual (e [i], a [i], names [i]);
                }
 
+               [Test]
+               public void GenericArray ()
+               {
+                       Comparable [] a = new Comparable [1];
+                       a [0] = new Comparable ();
+
+                       BinaryFormatter bf = new BinaryFormatter ();
+                       MemoryStream ms = new MemoryStream ();
+
+                       bf.Serialize (ms, a);
+
+                       ms.Position = 0;
+                       Comparable [] b = (Comparable []) bf.Deserialize (ms);
+
+                       Assert.AreEqual (a.Length, b.Length, "#1");
+                       Assert.AreEqual (a [0], b [0], "#2");
+               }
+
                public Stream GetSerializedStream ()
                {
                        SerializationTest test = new SerializationTest (true, Int32.MinValue);
index 7d923a5b0aad2dc9e3aa30253a1581b2c95dfaaa..4e387d95917acd14e328d57efecda0a5f6187296 100644 (file)
@@ -3,9 +3,10 @@
 //
 // Authors:
 //      Andrew Birkett (andy@nobugs.org)
-//      Sebastien Pouliot  <sebastien@ximian.com>
+//      Sebastien Pouliot  <sebastien@xamarin.com>
 //
 // Copyright (C) 2005 Novell, Inc (http://www.novell.com)
+// Copyright 2012 Xamarin Inc.
 //
 
 using System;
@@ -363,5 +364,28 @@ namespace MonoTests.System.Security.Cryptography {
                        CreateDecryptor_IV (size);
                }
 #endif
+               [Test]
+               public void CFB_7193 ()
+               {
+                       const int size = 23; // not a block size
+                       byte [] original = new byte [size];
+                       byte [] expected = new byte [] { 0xDC, 0xA8, 0x39, 0x5C, 0xA1, 0x89, 0x3B, 0x05, 0xFA, 0xD8, 0xB5, 0x76, 0x5F, 0x8F, 0x40, 0xCF, 0xA7, 0xFF, 0x86, 0xE6, 0x30, 0x67, 0x6B };
+                       byte [] encdata;
+                       byte [] decdata;
+                       using (RijndaelManaged aes = new RijndaelManaged ()) {
+                               aes.Mode = CipherMode.CFB;
+                               aes.FeedbackSize = 8;
+                               aes.Padding = PaddingMode.None;
+                               aes.Key = new byte [32];
+                               aes.IV = new byte [16];
+                               using (ICryptoTransform encryptor = aes.CreateEncryptor ())
+                                       encdata = encryptor.TransformFinalBlock (original, 0, original.Length);
+                               Assert.AreEqual (encdata.Length, size, "enc.Length");
+                               Assert.AreEqual (encdata, expected, "encrypted");
+                               using (ICryptoTransform decryptor = aes.CreateDecryptor ())
+                                       decdata = decryptor.TransformFinalBlock (encdata, 0, encdata.Length);
+                               Assert.AreEqual (decdata, original, "roundtrip");
+                       }
+               }
        }
 }
index 7f3190c62d8c166208aa4f20682c460a0022fcc0..e08f85b3d27836c9a1f95ddedc125e77486aadce 100644 (file)
@@ -249,5 +249,20 @@ namespace MonoTests.System.Security.Cryptography {
                        int size = tdes.BlockSize; // 8 times too big
                        CreateDecryptor_IV (size);
                }
+               
+               [Test]
+               public void TwoKeysTripleDes ()
+               {
+                       byte[] key = new byte [16]; // 128 bits
+                       Buffer.BlockCopy (tdes.Key, 0, key, 0, 16);
+                       
+                       ICryptoTransform encryptor = tdes.CreateEncryptor (key, tdes.IV);
+                       byte[] data = new byte[encryptor.InputBlockSize];
+                       byte[] encdata = encryptor.TransformFinalBlock (data, 0, data.Length);
+
+                       ICryptoTransform decryptor = tdes.CreateDecryptor (key, tdes.IV);
+                       byte[] decdata = decryptor.TransformFinalBlock (encdata, 0, encdata.Length);
+                       Assert.IsTrue (BitConverter.ToString (data) == BitConverter.ToString (decdata), "Compare");
+               }
        }
 }
index 36b9bec17d89cf399a7d0503e0075ab5df55c19c..91f70159dba1b3d685217b0fb8c21f84a70ae95e 100644 (file)
@@ -40,11 +40,8 @@ namespace MonoTests.System.Text
 
                        List<int> list = new List<int> ();
                        for (int i = 1; i < 0x10000; i++) {
-                               try {
-                                       Encoding.GetEncoding (i);
-                                       list.Add (i);
-                               } catch {
-                               }
+                               // Do this in a method to work around #5432
+                               GetEncoding (i, list);
                        }
                        int [] reference = list.ToArray ();
 
@@ -63,6 +60,14 @@ namespace MonoTests.System.Text
                        foreach (EncodingInfo i in Encoding.GetEncodings ())
                                Assert.IsNotNull (i.GetEncoding (), "codepage " + i);
                }
+
+               void GetEncoding (int id, List<int> list) {
+                       try {
+                               Encoding.GetEncoding (id);
+                               list.Add (id);
+                       } catch {
+                       }
+               }
        }
 }
 
index b8c3776d5fdda4eb36bd46272c49be4892f8bac1..3fe032f20c639e23229478d870089c4276e09c46 100644 (file)
@@ -90,6 +90,34 @@ namespace MonoTests.System.Threading.Tasks
                        }
                }
 
+               class TestAsyncResultCompletedSynchronously : IAsyncResult
+               {
+                       public object AsyncState {
+                               get {
+                                       throw new NotImplementedException ();
+                               }
+                       }
+
+                       public WaitHandle AsyncWaitHandle {
+                               get {
+                                       throw new NotImplementedException ();
+                               }
+                       }
+
+                       public bool CompletedSynchronously {
+                               get {
+                                       return true;
+                               }
+                       }
+
+                       public bool IsCompleted {
+                               get {
+                                       throw new NotImplementedException ();
+                               }
+                       }
+               }
+               
+
                [SetUp]
                public void Setup ()
                {
@@ -178,6 +206,26 @@ namespace MonoTests.System.Threading.Tasks
                        Assert.IsTrue (task.Wait (1000), "#1");
                        Assert.AreEqual (5, task.Result, "#2");
                }
+
+               IAsyncResult BeginGetTestAsyncResultCompletedSynchronously (AsyncCallback cb, object obj)
+               {
+                       return new TestAsyncResultCompletedSynchronously ();
+               }
+
+               string EndGetTestAsyncResultCompletedSynchronously (IAsyncResult res)
+               {
+                       return "1";
+               }
+
+               [Test]
+               public void FromAsync_CompletedSynchronously ()
+               {
+                       var factory = new TaskFactory<string> ();
+                       var task = factory.FromAsync (BeginGetTestAsyncResultCompletedSynchronously, EndGetTestAsyncResultCompletedSynchronously, null);
+
+                       Assert.IsTrue (task.Wait (1000), "#1");
+                       Assert.AreEqual ("1", task.Result, "#2");
+               }
        }
 }
 
index 15600ff5f77fce2d88f1d0dfc5ea9f4060d53477..42f3f4e9486fcf260c9faa370011ff4b49a51939 100644 (file)
@@ -1632,9 +1632,11 @@ namespace MonoTests.System.Threading.Tasks
                [Test]
                public void Run ()
                {
-                       var t = Task.Run (delegate { });
+                       bool ranOnDefaultScheduler = false;
+                       var t = Task.Run (delegate { ranOnDefaultScheduler = Thread.CurrentThread.IsThreadPoolThread; });
                        Assert.AreEqual (TaskCreationOptions.DenyChildAttach, t.CreationOptions, "#1");
                        t.Wait ();
+                       Assert.IsTrue (ranOnDefaultScheduler, "#2");
                }
 
                [Test]
@@ -1651,7 +1653,7 @@ namespace MonoTests.System.Threading.Tasks
                }
 
                [Test]
-               public void Run_ExistingTask ()
+               public void Run_ExistingTaskT ()
                {
                        var t = new Task<int> (() => 5);
                        var t2 = Task.Run (() => { t.Start (); return t; });
@@ -1659,6 +1661,85 @@ namespace MonoTests.System.Threading.Tasks
                        Assert.IsTrue (t2.Wait (1000), "#1");
                        Assert.AreEqual (5, t2.Result, "#2");
                }
+
+               [Test]
+               public void Run_ExistingTask ()
+               {
+                       var t = new Task (delegate { throw new Exception ("Foo"); });
+                       var t2 = Task.Run (() => { t.Start (); return t; });
+
+                       try {
+                               t2.Wait (1000);
+                               Assert.Fail ();
+                       } catch (Exception) {}
+
+                       Assert.AreEqual (TaskStatus.Faulted, t.Status, "#2");
+               }
+
+               [Test]
+               public void DenyChildAttachTest ()
+               {
+                       var mre = new ManualResetEventSlim ();
+                       Task parent = Task.Factory.StartNew (() => {
+                               Task.Factory.StartNew (() => mre.Wait (2000), TaskCreationOptions.AttachedToParent);
+                       }, TaskCreationOptions.DenyChildAttach);
+                       Assert.IsTrue (parent.Wait (500), "#1");
+                       mre.Set ();
+               }
+
+               class SynchronousScheduler : TaskScheduler
+               {
+                       protected override IEnumerable<Task> GetScheduledTasks ()
+                       {
+                               throw new NotImplementedException ();
+                       }
+
+                       protected override void QueueTask (Task task)
+                       {
+                               TryExecuteTaskInline (task, false);
+                       }
+
+                       protected override bool TryExecuteTaskInline (Task task, bool taskWasPreviouslyQueued)
+                       {
+                               return base.TryExecuteTask (task);
+                       }
+               }
+
+               [Test]
+               public void HideSchedulerTest ()
+               {
+                       var mre = new ManualResetEventSlim ();
+                       var ranOnDefault = false;
+                       var scheduler = new SynchronousScheduler ();
+
+                       Task parent = Task.Factory.StartNew (() => {
+                               Task.Factory.StartNew (() => {
+                                       ranOnDefault = Thread.CurrentThread.IsThreadPoolThread;
+                                       mre.Set ();
+                               });
+                       }, CancellationToken.None, TaskCreationOptions.HideScheduler, scheduler);
+
+                       Assert.IsTrue (mre.Wait (1000), "#1");
+                       Assert.IsTrue (ranOnDefault, "#2");
+               }
+
+               [Test]
+               public void LazyCancelationTest ()
+               {
+                       var source = new CancellationTokenSource ();
+                       source.Cancel ();
+                       var parent = new Task (delegate {});
+                       var cont = parent.ContinueWith (delegate {}, source.Token, TaskContinuationOptions.LazyCancellation, TaskScheduler.Default);
+
+                       Assert.AreNotEqual (TaskStatus.Canceled, cont.Status, "#1");
+                       parent.Start ();
+                       try {
+                               Assert.IsTrue (cont.Wait (1000), "#2");
+                               Assert.Fail ();
+                       } catch (AggregateException ex) {
+                               Assert.IsInstanceOfType (typeof (TaskCanceledException), ex.InnerException);
+                       }
+               }
 #endif
        }
 }
index b8148a1260d805aca4c608cd4a99a85f49672012..a3acee11f30a3de19dc10edc58888573123cdf74 100644 (file)
@@ -3407,6 +3407,39 @@ public class ArrayTest
                array.Equals (array2, EqualityComparer<long>.Default);
        }
 
+       [Test]
+       [ExpectedException (typeof (ArgumentNullException))]    
+       public void IStructuralEquatable_GetHashCode_NullComparer ()
+       {
+               IStructuralEquatable a = new int[] { 1, 2 };
+               a.GetHashCode (null);
+       }
+
+       class TestComparer_GetHashCode : IEqualityComparer
+       {
+               public int Counter;
+
+               bool IEqualityComparer.Equals (object x, object y)
+               {
+                       throw new NotImplementedException ();
+               }
+
+               public int GetHashCode (object obj)
+               {
+                       return Counter++;
+               }
+       }
+
+       [Test]
+       public void IStructuralEquatable_GetHashCode ()
+       {
+               IStructuralEquatable a = new int[] { 1, 2, 9 };
+
+               var c = new TestComparer_GetHashCode ();
+               a.GetHashCode (c);
+               Assert.AreEqual (3, c.Counter);         
+       }
+
 #endif
 
 }
index ef92166c2815ce63f4fe6609b7ba7375724c2153..ab1ba7080b6ee93469d6dabc502db37aaf91f005 100644 (file)
@@ -648,6 +648,16 @@ public class StringTest
                }
        }
 
+       [Test]
+       public void CompareOrdinalWithOffset ()
+       {
+               string ab1 = "ab";
+               string ab2 = "a" + new string ('b', 1);
+               
+               Assert.IsTrue (string.CompareOrdinal (ab1, 0, ab1, 1, 1) < 0, "#1");
+               Assert.IsTrue (string.CompareOrdinal (ab2, 0, ab1, 1, 1) < 0, "#2");
+       }
+
        [Test]
        public void CompareTo ()
        {
index 768d0c782e5526c0780de3e5119ebba5bd43971f..cc0e806b8bfc8828bd7410449f8c1e6bba756939 100644 (file)
    <Compile Include="System.Security.AccessControl\AccessControlSections.cs" />
    <Compile Include="System.Security.AccessControl\AccessControlType.cs" />
    <Compile Include="System.Security.AccessControl\AccessRule.cs" />
+   <Compile Include="System.Security.AccessControl\AccessRule_T.cs" />
    <Compile Include="System.Security.AccessControl\AceEnumerator.cs" />
    <Compile Include="System.Security.AccessControl\AceFlags.cs" />
    <Compile Include="System.Security.AccessControl\AceQualifier.cs" />
    <Compile Include="System.Security.AccessControl\AceType.cs" />
    <Compile Include="System.Security.AccessControl\AuditFlags.cs" />
    <Compile Include="System.Security.AccessControl\AuditRule.cs" />
+   <Compile Include="System.Security.AccessControl\AuditRule_T.cs" />
    <Compile Include="System.Security.AccessControl\AuthorizationRule.cs" />
    <Compile Include="System.Security.AccessControl\AuthorizationRuleCollection.cs" />
    <Compile Include="System.Security.AccessControl\CommonAce.cs" />
    <Compile Include="System.Security.Policy\CodeGroup.cs" />
    <Compile Include="System.Security.Policy\DefaultPolicies.cs" />
    <Compile Include="System.Security.Policy\Evidence.cs" />
+   <Compile Include="System.Security.Policy\EvidenceBase.cs" />
    <Compile Include="System.Security.Policy\FileCodeGroup.cs" />
    <Compile Include="System.Security.Policy\FirstMatchCodeGroup.cs" />
    <Compile Include="System.Security.Policy\Gac.cs" />
    <Compile Include="System.Threading.Tasks\SimpleConcurrentBag.cs" />
    <Compile Include="System.Threading.Tasks\SynchronizationContextScheduler.cs" />
    <Compile Include="System.Threading.Tasks\UnobservedTaskExceptionEventArgs.cs" />
-   <Compile Include="System.Collections.Concurrent\ObjectPool.cs" />
    <Compile Include="System.Threading.Tasks\TpScheduler.cs" />
+   <Compile Include="..\System.Core\System.Threading.Tasks\TaskExtensions.cs" />
 \r
   </ItemGroup>\r
   <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
index 7d85c672f9ddb1f4301d91ce2af03446ff432c95..e5cdd8e4e025aa143a6daa11d57e4eb2611a8381 100644 (file)
    <Compile Include="System.Security.AccessControl\AccessControlSections.cs" />
    <Compile Include="System.Security.AccessControl\AccessControlType.cs" />
    <Compile Include="System.Security.AccessControl\AccessRule.cs" />
+   <Compile Include="System.Security.AccessControl\AccessRule_T.cs" />
    <Compile Include="System.Security.AccessControl\AceEnumerator.cs" />
    <Compile Include="System.Security.AccessControl\AceFlags.cs" />
    <Compile Include="System.Security.AccessControl\AceQualifier.cs" />
    <Compile Include="System.Security.AccessControl\AceType.cs" />
    <Compile Include="System.Security.AccessControl\AuditFlags.cs" />
    <Compile Include="System.Security.AccessControl\AuditRule.cs" />
+   <Compile Include="System.Security.AccessControl\AuditRule_T.cs" />
    <Compile Include="System.Security.AccessControl\AuthorizationRule.cs" />
    <Compile Include="System.Security.AccessControl\AuthorizationRuleCollection.cs" />
    <Compile Include="System.Security.AccessControl\CommonAce.cs" />
    <Compile Include="System.Security.Policy\CodeGroup.cs" />
    <Compile Include="System.Security.Policy\DefaultPolicies.cs" />
    <Compile Include="System.Security.Policy\Evidence.cs" />
+   <Compile Include="System.Security.Policy\EvidenceBase.cs" />
    <Compile Include="System.Security.Policy\FileCodeGroup.cs" />
    <Compile Include="System.Security.Policy\FirstMatchCodeGroup.cs" />
    <Compile Include="System.Security.Policy\Gac.cs" />
    <Compile Include="System.Threading.Tasks\SimpleConcurrentBag.cs" />
    <Compile Include="System.Threading.Tasks\SynchronizationContextScheduler.cs" />
    <Compile Include="System.Threading.Tasks\UnobservedTaskExceptionEventArgs.cs" />
-   <Compile Include="System.Collections.Concurrent\ObjectPool.cs" />
    <Compile Include="System.Threading.Tasks\TpScheduler.cs" />
+   <Compile Include="..\System.Core\System.Threading.Tasks\TaskExtensions.cs" />
 \r
   </ItemGroup>\r
   <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
index 1d4eec611807bed42b3b5234aeb5406e6493da9f..f4c60411e95e725ed81ea0b5c27c3dea1baf87e0 100644 (file)
    <Compile Include="System.Security.AccessControl\AccessControlSections.cs" />
    <Compile Include="System.Security.AccessControl\AccessControlType.cs" />
    <Compile Include="System.Security.AccessControl\AccessRule.cs" />
+   <Compile Include="System.Security.AccessControl\AccessRule_T.cs" />
    <Compile Include="System.Security.AccessControl\AceEnumerator.cs" />
    <Compile Include="System.Security.AccessControl\AceFlags.cs" />
    <Compile Include="System.Security.AccessControl\AceQualifier.cs" />
    <Compile Include="System.Security.AccessControl\AceType.cs" />
    <Compile Include="System.Security.AccessControl\AuditFlags.cs" />
    <Compile Include="System.Security.AccessControl\AuditRule.cs" />
+   <Compile Include="System.Security.AccessControl\AuditRule_T.cs" />
    <Compile Include="System.Security.AccessControl\AuthorizationRule.cs" />
    <Compile Include="System.Security.AccessControl\AuthorizationRuleCollection.cs" />
    <Compile Include="System.Security.AccessControl\CommonAce.cs" />
    <Compile Include="System.Security.Policy\CodeGroup.cs" />
    <Compile Include="System.Security.Policy\DefaultPolicies.cs" />
    <Compile Include="System.Security.Policy\Evidence.cs" />
+   <Compile Include="System.Security.Policy\EvidenceBase.cs" />
    <Compile Include="System.Security.Policy\FileCodeGroup.cs" />
    <Compile Include="System.Security.Policy\FirstMatchCodeGroup.cs" />
    <Compile Include="System.Security.Policy\Gac.cs" />
    <Compile Include="System.Threading.Tasks\SimpleConcurrentBag.cs" />
    <Compile Include="System.Threading.Tasks\SynchronizationContextScheduler.cs" />
    <Compile Include="System.Threading.Tasks\UnobservedTaskExceptionEventArgs.cs" />
-   <Compile Include="System.Collections.Concurrent\ObjectPool.cs" />
    <Compile Include="System.Threading.Tasks\TpScheduler.cs" />
+   <Compile Include="..\System.Core\System.Threading.Tasks\TaskExtensions.cs" />
 \r
   </ItemGroup>\r
   <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
index 0a30d25bb70544118430f6be6e14dc12a67bbc9e..181d91a352ca8bc6d160ff5d32f47d8f20cb34b5 100644 (file)
    <Compile Include="System.Security.AccessControl\AccessControlSections.cs" />
    <Compile Include="System.Security.AccessControl\AccessControlType.cs" />
    <Compile Include="System.Security.AccessControl\AccessRule.cs" />
+   <Compile Include="System.Security.AccessControl\AccessRule_T.cs" />
    <Compile Include="System.Security.AccessControl\AceEnumerator.cs" />
    <Compile Include="System.Security.AccessControl\AceFlags.cs" />
    <Compile Include="System.Security.AccessControl\AceQualifier.cs" />
    <Compile Include="System.Security.AccessControl\AceType.cs" />
    <Compile Include="System.Security.AccessControl\AuditFlags.cs" />
    <Compile Include="System.Security.AccessControl\AuditRule.cs" />
+   <Compile Include="System.Security.AccessControl\AuditRule_T.cs" />
    <Compile Include="System.Security.AccessControl\AuthorizationRule.cs" />
    <Compile Include="System.Security.AccessControl\AuthorizationRuleCollection.cs" />
    <Compile Include="System.Security.AccessControl\CommonAce.cs" />
    <Compile Include="System.Security.Policy\CodeGroup.cs" />
    <Compile Include="System.Security.Policy\DefaultPolicies.cs" />
    <Compile Include="System.Security.Policy\Evidence.cs" />
+   <Compile Include="System.Security.Policy\EvidenceBase.cs" />
    <Compile Include="System.Security.Policy\FileCodeGroup.cs" />
    <Compile Include="System.Security.Policy\FirstMatchCodeGroup.cs" />
    <Compile Include="System.Security.Policy\Gac.cs" />
    <Compile Include="System.Threading.Tasks\SimpleConcurrentBag.cs" />
    <Compile Include="System.Threading.Tasks\SynchronizationContextScheduler.cs" />
    <Compile Include="System.Threading.Tasks\UnobservedTaskExceptionEventArgs.cs" />
-   <Compile Include="System.Collections.Concurrent\ObjectPool.cs" />
    <Compile Include="System.Threading.Tasks\TpScheduler.cs" />
+   <Compile Include="..\System.Core\System.Threading.Tasks\TaskExtensions.cs" />
 \r
   </ItemGroup>\r
   <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
index be775da29b057078cd94af849d06808b24c9dbde..3737352c9954db35fe195d50d5e264171f0565f4 100644 (file)
    <Compile Include="Test\System.Runtime.Versioning\VersioningHelperTest.cs" />
    <Compile Include="Test\System\SByteTest.cs" />
    <Compile Include="Test\System.Security\CodeAccessPermissionTest.cs" />
+   <Compile Include="Test\System.Security.AccessControl\AuthorizationRuleTest.cs" />
    <Compile Include="Test\System.Security.AccessControl\CommonAceTest.cs" />
+   <Compile Include="Test\System.Security.AccessControl\CommonAclTest.cs" />
+   <Compile Include="Test\System.Security.AccessControl\CommonObjectSecurityTest.cs" />
+   <Compile Include="Test\System.Security.AccessControl\CommonSecurityDescriptorTest.cs" />
+   <Compile Include="Test\System.Security.AccessControl\CryptoKeyAccessRuleTest.cs" />
+   <Compile Include="Test\System.Security.AccessControl\DirectoryObjectSecurityTest.cs" />
+   <Compile Include="Test\System.Security.AccessControl\DirectorySecurityTest.cs" />
+   <Compile Include="Test\System.Security.AccessControl\DiscretionaryAclTest.cs" />
+   <Compile Include="Test\System.Security.AccessControl\EventWaitHandleSecurityTest.cs" />
+   <Compile Include="Test\System.Security.AccessControl\FileSecurityTest.cs" />
+   <Compile Include="Test\System.Security.AccessControl\MutexAccessRuleTest.cs" />
+   <Compile Include="Test\System.Security.AccessControl\MutexSecurityTest.cs" />
+   <Compile Include="Test\System.Security.AccessControl\ObjectAceTest.cs" />
+   <Compile Include="Test\System.Security.AccessControl\ObjectSecurityTest.cs" />
+   <Compile Include="Test\System.Security.AccessControl\ObjectSecurity_TTest.cs" />
    <Compile Include="Test\System.Security.AccessControl\RawAclTest.cs" />
    <Compile Include="Test\System.Security.AccessControl\RawSecurityDescriptorTest.cs" />
+   <Compile Include="Test\System.Security.AccessControl\RegistrySecurityTest.cs" />
+   <Compile Include="Test\System.Security.AccessControl\SystemAclTest.cs" />
    <Compile Include="Test\System.Security.Cryptography\AllTests2.cs" />
    <Compile Include="Test\System.Security.Cryptography\AsymmetricAlgorithmTest.cs" />
    <Compile Include="Test\System.Security.Cryptography\CipherModeTest.cs" />
index 89329ebc4e9b385b84db26d5f070ff149cdc3194..89c9b65205c107026596bd0f84eea3ac4de6c7f7 100644 (file)
    <Compile Include="Test\System.Runtime.Versioning\VersioningHelperTest.cs" />
    <Compile Include="Test\System\SByteTest.cs" />
    <Compile Include="Test\System.Security\CodeAccessPermissionTest.cs" />
+   <Compile Include="Test\System.Security.AccessControl\AuthorizationRuleTest.cs" />
    <Compile Include="Test\System.Security.AccessControl\CommonAceTest.cs" />
+   <Compile Include="Test\System.Security.AccessControl\CommonAclTest.cs" />
+   <Compile Include="Test\System.Security.AccessControl\CommonObjectSecurityTest.cs" />
+   <Compile Include="Test\System.Security.AccessControl\CommonSecurityDescriptorTest.cs" />
+   <Compile Include="Test\System.Security.AccessControl\CryptoKeyAccessRuleTest.cs" />
+   <Compile Include="Test\System.Security.AccessControl\DirectoryObjectSecurityTest.cs" />
+   <Compile Include="Test\System.Security.AccessControl\DirectorySecurityTest.cs" />
+   <Compile Include="Test\System.Security.AccessControl\DiscretionaryAclTest.cs" />
+   <Compile Include="Test\System.Security.AccessControl\EventWaitHandleSecurityTest.cs" />
+   <Compile Include="Test\System.Security.AccessControl\FileSecurityTest.cs" />
+   <Compile Include="Test\System.Security.AccessControl\MutexAccessRuleTest.cs" />
+   <Compile Include="Test\System.Security.AccessControl\MutexSecurityTest.cs" />
+   <Compile Include="Test\System.Security.AccessControl\ObjectAceTest.cs" />
+   <Compile Include="Test\System.Security.AccessControl\ObjectSecurityTest.cs" />
+   <Compile Include="Test\System.Security.AccessControl\ObjectSecurity_TTest.cs" />
    <Compile Include="Test\System.Security.AccessControl\RawAclTest.cs" />
    <Compile Include="Test\System.Security.AccessControl\RawSecurityDescriptorTest.cs" />
+   <Compile Include="Test\System.Security.AccessControl\RegistrySecurityTest.cs" />
+   <Compile Include="Test\System.Security.AccessControl\SystemAclTest.cs" />
    <Compile Include="Test\System.Security.Cryptography\AllTests2.cs" />
    <Compile Include="Test\System.Security.Cryptography\AsymmetricAlgorithmTest.cs" />
    <Compile Include="Test\System.Security.Cryptography\CipherModeTest.cs" />
index 58bb50c6c78074404b8849d386e4b7fd6da52b2c..c413cf70af41ef147a44724b6f6b0fb2cd5cc441 100644 (file)
    <Compile Include="Test\System.Runtime.Versioning\VersioningHelperTest.cs" />
    <Compile Include="Test\System\SByteTest.cs" />
    <Compile Include="Test\System.Security\CodeAccessPermissionTest.cs" />
+   <Compile Include="Test\System.Security.AccessControl\AuthorizationRuleTest.cs" />
    <Compile Include="Test\System.Security.AccessControl\CommonAceTest.cs" />
+   <Compile Include="Test\System.Security.AccessControl\CommonAclTest.cs" />
+   <Compile Include="Test\System.Security.AccessControl\CommonObjectSecurityTest.cs" />
+   <Compile Include="Test\System.Security.AccessControl\CommonSecurityDescriptorTest.cs" />
+   <Compile Include="Test\System.Security.AccessControl\CryptoKeyAccessRuleTest.cs" />
+   <Compile Include="Test\System.Security.AccessControl\DirectoryObjectSecurityTest.cs" />
+   <Compile Include="Test\System.Security.AccessControl\DirectorySecurityTest.cs" />
+   <Compile Include="Test\System.Security.AccessControl\DiscretionaryAclTest.cs" />
+   <Compile Include="Test\System.Security.AccessControl\EventWaitHandleSecurityTest.cs" />
+   <Compile Include="Test\System.Security.AccessControl\FileSecurityTest.cs" />
+   <Compile Include="Test\System.Security.AccessControl\MutexAccessRuleTest.cs" />
+   <Compile Include="Test\System.Security.AccessControl\MutexSecurityTest.cs" />
+   <Compile Include="Test\System.Security.AccessControl\ObjectAceTest.cs" />
+   <Compile Include="Test\System.Security.AccessControl\ObjectSecurityTest.cs" />
+   <Compile Include="Test\System.Security.AccessControl\ObjectSecurity_TTest.cs" />
    <Compile Include="Test\System.Security.AccessControl\RawAclTest.cs" />
    <Compile Include="Test\System.Security.AccessControl\RawSecurityDescriptorTest.cs" />
+   <Compile Include="Test\System.Security.AccessControl\RegistrySecurityTest.cs" />
+   <Compile Include="Test\System.Security.AccessControl\SystemAclTest.cs" />
    <Compile Include="Test\System.Security.Cryptography\AllTests2.cs" />
    <Compile Include="Test\System.Security.Cryptography\AsymmetricAlgorithmTest.cs" />
    <Compile Include="Test\System.Security.Cryptography\CipherModeTest.cs" />
index c28cc0beb08a9d09d61f8babb09d09ade338f00f..e1b8ba133d29f70369bfc3cbbaa5268671407365 100644 (file)
@@ -143,6 +143,7 @@ System/DllNotFoundException.cs
 System/DomainManagerInitializationFlags.cs
 System/Double.cs
 System/DuplicateWaitObjectException.cs
+System/EmptyArray.cs
 System/EntryPointNotFoundException.cs
 System/Enum.cs
 System/Environment.cs
@@ -1624,5 +1625,5 @@ System/AggregateException.cs
 System.Threading.Tasks/SimpleConcurrentBag.cs
 System.Threading.Tasks/SynchronizationContextScheduler.cs
 System.Threading.Tasks/UnobservedTaskExceptionEventArgs.cs
-System.Collections.Concurrent/ObjectPool.cs
 System.Threading.Tasks/TpScheduler.cs
+../System.Core/System.Threading.Tasks/TaskExtensions.cs
diff --git a/mcs/errors/cs0030-15.cs b/mcs/errors/cs0030-15.cs
new file mode 100644 (file)
index 0000000..a485f74
--- /dev/null
@@ -0,0 +1,12 @@
+// CS0030: Cannot convert type `long' to `System.DayOfWeek?'
+// Line: 10
+
+using System;
+
+class C
+{
+    static void Main ()
+    {
+               var dow = (DayOfWeek?) long.MaxValue;
+    }
+}
\ No newline at end of file
diff --git a/mcs/errors/cs0162-15.cs b/mcs/errors/cs0162-15.cs
new file mode 100644 (file)
index 0000000..02459c9
--- /dev/null
@@ -0,0 +1,15 @@
+// CS0162: Unreachable code detected
+// Line: 10
+// Compiler options: -warnaserror
+
+class C
+{
+       void Test (int a)
+       {
+               return;
+               if (a > 0) {
+                       int x = a + 20;
+                       return;
+               }
+       }
+}
\ No newline at end of file
diff --git a/mcs/errors/cs0162-16.cs b/mcs/errors/cs0162-16.cs
new file mode 100644 (file)
index 0000000..982cff5
--- /dev/null
@@ -0,0 +1,18 @@
+// CS0162: Unreachable code detected
+// Line: 10
+// Compiler options: -warnaserror
+
+using System;
+
+class C
+{
+       void Test ()
+       {
+               return;
+               const int a = 0;
+               if (a > 0) {
+                       int x = a + 20;
+                       return;
+               }
+       }
+}
\ No newline at end of file
index b8dc58ecea004e0d1a5b327c2e35343fa6691442..4e7051208e7c5d6677873ae538941c7c5098bab4 100644 (file)
@@ -1,7 +1,7 @@
-// CS1001: Unexpected symbol `{', expecting identifier
+// CS1001: Unexpected symbol `}', expecting identifier
 // Line: 6
 
-public class SomeClass {
-       public void SomeMethod<T>() where
-       {}
-}
+public class Foo
+{
+    public event System.Collections.Generic.IList<int>
+}
\ No newline at end of file
diff --git a/mcs/errors/cs1001-7.cs b/mcs/errors/cs1001-7.cs
new file mode 100644 (file)
index 0000000..ffe9c83
--- /dev/null
@@ -0,0 +1,9 @@
+// CS1001: Unexpected symbol `)', expecting identifier
+// Line: 6
+
+class C
+{
+       public void Foo (params System.Action)
+       {
+       }
+}
\ No newline at end of file
diff --git a/mcs/errors/cs1514.cs b/mcs/errors/cs1514.cs
new file mode 100644 (file)
index 0000000..7b9fbb1
--- /dev/null
@@ -0,0 +1,4 @@
+// CS1514: Unexpected symbol `end-of-file', expecting `.' or `{'
+// Line: 5
+
+namespace A.B
index b0f1e12ec32ecb9a229c15b2042df7afe68ee382..f20f87ca0cbe18fd809361fb853c0b59d6143a32 100644 (file)
@@ -1,4 +1,4 @@
-// CS1525: Unexpected symbol `::', expecting `.' or `{'
+// CS1525: Unexpected symbol `::'
 // Line: 4
 
 namespace a::b
diff --git a/mcs/errors/cs1525-49.cs b/mcs/errors/cs1525-49.cs
new file mode 100644 (file)
index 0000000..dd8c293
--- /dev/null
@@ -0,0 +1,20 @@
+// CS1525: Unexpected symbol `/'
+// Line: 10
+
+namespace Test674
+{
+       class MainClass
+       {
+               public static void Main(string[] args)
+               {
+                       var a = new A(another: something, sth: /without/quotes);
+               }
+       }
+
+       public class A
+       {
+               public A(string sth, string another)
+               {
+               }
+       }
+}
diff --git a/mcs/errors/cs1525-50.cs b/mcs/errors/cs1525-50.cs
new file mode 100644 (file)
index 0000000..8516e05
--- /dev/null
@@ -0,0 +1,13 @@
+// CS1525: Unexpected symbol `}', expecting `{'
+// Line: 11
+
+using System;
+
+class MyTest
+{
+       public static void Main (string[] args)
+       {
+               try {
+               } catch (Exception)
+       }
+}
\ No newline at end of file
diff --git a/mcs/errors/cs1612-9.cs b/mcs/errors/cs1612-9.cs
new file mode 100644 (file)
index 0000000..d9b0f65
--- /dev/null
@@ -0,0 +1,21 @@
+// CS1612: Cannot modify a value type return value of `R.Size'. Consider storing the value in a temporary variable
+// Line: 19
+
+struct R
+{
+       public S Size { get; set; }
+}
+
+struct S
+{
+       public float Height { get; set; }
+}
+
+public class Test
+{
+       public static void Main ()
+       {
+               var r = new R ();
+               r.Size.Height = 3;
+       }
+}
diff --git a/mcs/errors/cs4014-5.cs b/mcs/errors/cs4014-5.cs
new file mode 100644 (file)
index 0000000..d0df5dc
--- /dev/null
@@ -0,0 +1,19 @@
+// CS4014: The statement is not awaited and execution of current method continues before the call is completed. Consider using `await' operator or calling `Wait' method
+// Line: 17
+// Compiler options: -warnaserror
+
+using System;
+using System.Threading.Tasks;
+
+class C
+{
+    public static async Task<T> Test<T> ()
+    {
+        return await Task.FromResult (default (T));
+    }
+
+    static void Main ()
+    {
+        Test<object> ();
+    }
+}
index 8724e48b52d7196baf82672bb14f3f673a22a225..e2f6fbdb9102c8113fdb63c2271ad2244a0ab57a 100644 (file)
@@ -149,7 +149,7 @@ namespace Mono.CSharp {
                                        case Binary.Operator.ExclusiveOr:
                                                result = BinaryFold (ec, oper, ((EnumConstant)left).Child, ((EnumConstant)right).Child, loc);
                                                if (result != null)
-                                                       result = result.TryReduce (ec, lt);
+                                                       result = result.Reduce (ec, lt);
                                                return result;
 
                                        ///
@@ -158,7 +158,7 @@ namespace Mono.CSharp {
                                        case Binary.Operator.Subtraction:
                                                result = BinaryFold (ec, oper, ((EnumConstant)left).Child, ((EnumConstant)right).Child, loc);
                                                if (result != null)
-                                                       result = result.TryReduce (ec, EnumSpec.GetUnderlyingType (lt));
+                                                       result = result.Reduce (ec, EnumSpec.GetUnderlyingType (lt));
                                                return result;
 
                                        ///
@@ -340,7 +340,7 @@ namespace Mono.CSharp {
                                        if (result == null)
                                                return null;
 
-                                       result = result.TryReduce (ec, lt);
+                                       result = result.Reduce (ec, lt);
                                        if (result == null)
                                                return null;
 
@@ -459,7 +459,7 @@ namespace Mono.CSharp {
                                        if (result == null)
                                                return null;
 
-                                       result = result.TryReduce (ec, lt);
+                                       result = result.Reduce (ec, lt);
                                        if (result == null)
                                                return null;
 
index ffc0c44738e957775eebf9bc43618eb6fe7060a2..bd2c129d9e3abdc2828d60f52f8e175e4370cd4c 100644 (file)
@@ -1008,6 +1008,9 @@ namespace Mono.CSharp
 
                internal override void GenerateDocComment (DocumentationBuilder builder)
                {
+                       if (IsPartialPart)
+                               return;
+
                        base.GenerateDocComment (builder);
 
                        foreach (var member in members)
@@ -3429,6 +3432,16 @@ namespace Mono.CSharp
                        get { return IsExplicitImpl || base.IsUsed; }
                }
 
+               public override void SetConstraints (List<Constraints> constraints_list)
+               {
+                       if (((ModFlags & Modifiers.OVERRIDE) != 0 || IsExplicitImpl)) {
+                               Report.Error (460, Location,
+                                       "`{0}': Cannot specify constraints for overrides and explicit interface implementation methods",
+                                       GetSignatureForError ());
+                       }
+
+                       base.SetConstraints (constraints_list);
+               }
        }
 
        public abstract class MemberBase : MemberCore
index 3cf689ddd81fc60b9fbafbda936eb4733fb4fc43..e13e300f35c75e10c1c629c8c6b2a52dfd1b5d13 100644 (file)
@@ -251,10 +251,12 @@ namespace Mono.CSharp {
                        return this;
                }
 
-               /// <summary>
-               ///   Attempts to do a compile-time folding of a constant cast.
-               /// </summary>
-               public Constant TryReduce (ResolveContext ec, TypeSpec target_type)
+               //
+               // Attempts to do a compile-time folding of a constant cast and handles
+               // error reporting for constant overlows only, on normal conversion
+               // errors returns null
+               // 
+               public Constant Reduce (ResolveContext ec, TypeSpec target_type)
                {
                        try {
                                return TryReduceConstant (ec, target_type);
@@ -271,6 +273,15 @@ namespace Mono.CSharp {
                        }
                }
 
+               public Constant TryReduce (ResolveContext rc, TypeSpec targetType)
+               {
+                       try {
+                               return TryReduceConstant (rc, targetType);
+                       } catch (OverflowException) {
+                               return null;
+                       }
+               }
+
                Constant TryReduceConstant (ResolveContext ec, TypeSpec target_type)
                {
                        if (Type == target_type) {
index 0e45bd5deb2a66ec4f70d8eec6d0062f5354e492..a3e7b285dcdcf8afc33ef7c3dab2f7f2ea034717 100644 (file)
@@ -105,6 +105,24 @@ namespace Mono.CSharp
                        get { return return_type; }
                }
 
+               public bool IsUnreachable {
+                       get {
+                               return HasSet (Options.UnreachableScope);
+                       }
+                       set {
+                               flags = value ? flags | Options.UnreachableScope : flags & ~Options.UnreachableScope;
+                       }
+               }
+
+               public bool UnreachableReported {
+                       get {
+                               return HasSet (Options.UnreachableReported);
+                       }
+                       set {
+                               flags = value ? flags | Options.UnreachableReported : flags & ~Options.UnreachableScope;
+                       }
+               }
+
                // <summary>
                //   Starts a new code branching.  This inherits the state of all local
                //   variables and parameters from the current branching.
@@ -257,6 +275,10 @@ namespace Mono.CSharp
 
                        LockScope = 1 << 13,
 
+                       UnreachableScope = 1 << 14,
+
+                       UnreachableReported = 1 << 15,
+
                        /// <summary>
                        ///   Whether control flow analysis is enabled
                        /// </summary>
@@ -475,14 +497,14 @@ namespace Mono.CSharp
                        // or it's a parameter
                        //
                        if (CurrentAnonymousMethod.IsIterator)
-                               return local.IsParameter || CurrentBlock.Explicit.HasYield;
+                               return local.IsParameter || local.Block.Explicit.HasYield;
 
                        //
                        // Capture only if this or any of child blocks contain await
                        // or it's a parameter
                        //
                        if (CurrentAnonymousMethod is AsyncInitializer)
-                               return local.IsParameter || CurrentBlock.Explicit.HasAwait;
+                               return local.IsParameter || local.Block.Explicit.HasAwait || CurrentBlock.Explicit.HasAwait;
 
                        return local.Block.ParametersBlock != CurrentBlock.ParametersBlock.Original;
                }
index f0e743adc5040499fe91e8e87aaf5b496618f352..8230e89708f0bfa6dbe902da214ca58c863fe508 100644 (file)
@@ -1196,7 +1196,7 @@ namespace Mono.CSharp {
                        if (s_x != source_type) {
                                var c = source as Constant;
                                if (c != null) {
-                                       source = c.TryReduce (ec, s_x);
+                                       source = c.Reduce (ec, s_x);
                                        if (source == null)
                                                c = null;
                                }
@@ -1990,21 +1990,28 @@ namespace Mono.CSharp {
                                if (expr_type == real_target)
                                        return EmptyCast.Create (expr, target_type);
 
-                               ne = ImplicitNumericConversion (expr, real_target);
-                               if (ne != null)
-                                       return EmptyCast.Create (ne, target_type);
-
-                               ne = ExplicitNumericConversion (ec, expr, real_target);
-                               if (ne != null)
-                                       return EmptyCast.Create (ne, target_type);
+                               Constant c = expr as Constant;
+                               if (c != null) {
+                                       c = c.TryReduce (ec, real_target);
+                                       if (c != null)
+                                               return c;
+                               } else {
+                                       ne = ImplicitNumericConversion (expr, real_target);
+                                       if (ne != null)
+                                               return EmptyCast.Create (ne, target_type);
 
-                               //
-                               // LAMESPEC: IntPtr and UIntPtr conversion to any Enum is allowed
-                               //
-                               if (expr_type.BuiltinType == BuiltinTypeSpec.Type.IntPtr || expr_type.BuiltinType == BuiltinTypeSpec.Type.UIntPtr) {
-                                       ne = ExplicitUserConversion (ec, expr, real_target, loc);
+                                       ne = ExplicitNumericConversion (ec, expr, real_target);
                                        if (ne != null)
-                                               return ExplicitConversionCore (ec, ne, target_type, loc);
+                                               return EmptyCast.Create (ne, target_type);
+
+                                       //
+                                       // LAMESPEC: IntPtr and UIntPtr conversion to any Enum is allowed
+                                       //
+                                       if (expr_type.BuiltinType == BuiltinTypeSpec.Type.IntPtr || expr_type.BuiltinType == BuiltinTypeSpec.Type.UIntPtr) {
+                                               ne = ExplicitUserConversion (ec, expr, real_target, loc);
+                                               if (ne != null)
+                                                       return ExplicitConversionCore (ec, ne, target_type, loc);
+                                       }
                                }
                        } else {
                                ne = ExplicitNumericConversion (ec, expr, target_type);
index dd0a8a96673886a489647690f0b57f6a2c424e00..3367ca12c9344313a5eae54ac4f78e6f1d849d8d 100644 (file)
@@ -530,6 +530,15 @@ namespace_declaration
          
                current_container = current_namespace = current_namespace.Parent;
          }
+       | opt_attributes NAMESPACE namespace_name
+         {
+               report.Error (1514, lexer.Location, "Unexpected symbol `{0}', expecting `.' or `{{'", GetSymbolName (yyToken));
+
+               var name = (MemberName) $3;             
+               var ns = new NamespaceContainer (name, current_namespace);
+               lbag.AddLocation (ns, GetLocation ($2));
+               current_namespace.AddTypeContainer (ns);
+         }
        ;
 
 namespace_name
@@ -956,6 +965,14 @@ constant_declaration
                lbag.AddMember (current_field, mod_locations, GetLocation ($3), GetLocation ($9));
                current_field = null;
          }
+       | opt_attributes 
+         opt_modifiers
+         CONST type error
+         {
+               Error_SyntaxError (yyToken);
+
+               current_type.AddMember (new Const (current_type, (FullNamedExpression) $4, (Modifiers) $2, MemberName.Null, (Attributes) $1));
+         }     
        ;
        
 opt_constant_declarators
@@ -1181,10 +1198,7 @@ method_declaration
                if (doc_support)
                        Lexer.doc_state = XmlCommentState.NotAllowed;
 
-               // Add it early in the case of body being eof for full ast
-               Method m = (Method) $1;
-               async_block = (m.ModFlags & Modifiers.ASYNC) != 0;
-               current_type.AddMember (m);
+               // Was added earlier in the case of body being eof for full ast
          }
          method_body
          {
@@ -1223,26 +1237,36 @@ method_header
          }
          opt_formal_parameter_list CLOSE_PARENS
          {
-               lexer.ConstraintsParsing = true;
-         }
-         opt_type_parameter_constraints_clauses
-         {
-               lexer.ConstraintsParsing = false;
                valid_param_mod = 0;
                MemberName name = (MemberName) $4;
                current_local_parameters = (ParametersCompiled) $7;
 
                var method = Method.Create (current_type, (FullNamedExpression) $3, (Modifiers) $2,
-                                    name, current_local_parameters, (Attributes) $1, $10 != null);
+                                    name, current_local_parameters, (Attributes) $1);
+
+               current_type.AddMember (method);
+
+               async_block = (method.ModFlags & Modifiers.ASYNC) != 0;
 
-               if ($10 != null)
-                       method.SetConstraints ((List<Constraints>) $10);
-                                    
                if (doc_support)
                        method.DocComment = Lexer.consume_doc_comment ();
 
                lbag.AddMember (method, mod_locations, GetLocation ($5), GetLocation ($8));
+
                $$ = method;
+
+               lexer.ConstraintsParsing = true;
+         }
+         opt_type_parameter_constraints_clauses
+         {
+               lexer.ConstraintsParsing = false;
+
+               if ($10 != null) {
+                       var method = (Method) $9;
+                       method.SetConstraints ((List<Constraints>) $10);
+               }
+
+               $$ = $9;
          }
        | opt_attributes
          opt_modifiers
@@ -1273,7 +1297,9 @@ method_header
                modifiers |= Modifiers.PARTIAL;
 
                var method = Method.Create (current_type, new TypeExpression (compiler.BuiltinTypes.Void, GetLocation ($4)),
-                                    modifiers, name, current_local_parameters, (Attributes) $1, $11 != null);
+                                    modifiers, name, current_local_parameters, (Attributes) $1);
+
+               current_type.AddMember (method);
 
                if ($11 != null)
                        method.SetConstraints ((List<Constraints>) $11);
@@ -1295,7 +1321,9 @@ method_header
                        "Member modifier `{0}' must precede the member type and name", ModifiersExtensions.Name ((Modifiers) $4));
 
                var method = Method.Create (current_type, (FullNamedExpression) $3,
-                                           0, name, (ParametersCompiled) $7, (Attributes) $1, false);
+                                           0, name, (ParametersCompiled) $7, (Attributes) $1);
+
+               current_type.AddMember (method);
 
                current_local_parameters = (ParametersCompiled) $7;
 
@@ -1314,7 +1342,9 @@ method_header
 
                MemberName name = (MemberName) $4;
                var method = Method.Create (current_type, (FullNamedExpression) $3, (Modifiers) $2,
-                                                                       name, current_local_parameters, (Attributes) $1, false);
+                                                                       name, current_local_parameters, (Attributes) $1);
+
+               current_type.AddMember (method);
 
                if (doc_support)
                        method.DocComment = Lexer.consume_doc_comment ();
@@ -1585,7 +1615,8 @@ parameter_array
        | opt_attributes params_modifier type error
          {
                Error_SyntaxError (yyToken);
-               $$ = null;
+
+               $$ = new ParamsParameter ((FullNamedExpression) $3, null, (Attributes) $1, Location.Null);
          }
        ;
        
@@ -1662,7 +1693,7 @@ indexer_declaration
          {
                valid_param_mod = ParameterModifierType.Params | ParameterModifierType.DefaultValue;
          }
-         opt_formal_parameter_list CLOSE_BRACKET OPEN_BRACE
+         opt_formal_parameter_list CLOSE_BRACKET 
          {
                valid_param_mod = 0;
                var type = (FullNamedExpression) $3;
@@ -1671,7 +1702,7 @@ indexer_declaration
                current_property = indexer;
 
                current_type.AddIndexer (indexer);
-               lbag.AddMember (current_property, mod_locations, GetLocation ($5), GetLocation ($8), GetLocation ($9));
+               lbag.AddMember (current_property, mod_locations, GetLocation ($5), GetLocation ($8));
                
                if (type.Type != null && type.Type.Kind == MemberKind.Void)
                        report.Error (620, GetLocation ($3), "`{0}': indexer return type cannot be `void'", indexer.GetSignatureForError ());           
@@ -1687,7 +1718,7 @@ indexer_declaration
 
                lexer.PropertyParsing = true;
          }
-         accessor_declarations 
+         OPEN_BRACE accessor_declarations 
          {
                lexer.PropertyParsing = false;
          }
@@ -1699,7 +1730,7 @@ indexer_declaration
                if (doc_support)
                        current_property.DocComment = ConsumeStoredComment ();
                        
-               lbag.AppendToMember (current_property, GetLocation ($12));
+               lbag.AppendToMember (current_property, GetLocation ($10), GetLocation ($13));
                current_property = null;                
          }
        ;
@@ -2296,6 +2327,14 @@ event_declaration
                current_event = null;   
                current_local_parameters = null;
          }
+       | opt_attributes
+         opt_modifiers
+         EVENT type error
+         {
+               Error_SyntaxError (yyToken);
+
+               current_type.AddMember (new EventField (current_type, (FullNamedExpression) $4, (Modifiers) $2, MemberName.Null, (Attributes) $1));
+         }
        ;
        
 opt_event_initializer
@@ -3235,7 +3274,8 @@ argument_list
          }
        | argument_list COMMA error
          {
-               lexer.putback (')'); // TODO: Wrong but what can I do
+               if (lexer.putback_char == -1)
+                       lexer.putback (')'); // TODO: Wrong but what can I do
                Error_SyntaxError (yyToken);
                $$ = $1;
          }
@@ -5602,6 +5642,24 @@ catch_clause
                
                $$ = new Catch (null, GetLocation ($1));
          }
+       | CATCH open_parens_any type opt_identifier CLOSE_PARENS error
+         {
+               Error_SyntaxError (yyToken);
+
+               // Required otherwise missing block could not be detected because
+               // start_block is run early
+               var c = new Catch (null, GetLocation ($1));
+               c.TypeExpression = (FullNamedExpression) $3;
+
+               if ($4 != null) {
+                       var lt = (Tokenizer.LocatedToken) $4;
+                       c.Variable = new LocalVariable (current_block, lt.Value, lt.Location);
+               }
+
+               lbag.AddLocation (c, GetLocation ($2), GetLocation ($5));
+
+               $$ = c;
+         }
        ;
 
 checked_statement
@@ -6754,6 +6812,10 @@ void Error_SyntaxError (int error_code, int token, string msg)
        // An error message has been reported by tokenizer
        if (token == Token.ERROR)
                return;
+       
+       // Avoid duplicit error message after unterminated string literals
+       if (token == Token.LITERAL && lexer.Location.Column == 0)
+               return;
 
        string symbol = GetSymbolName (token);
        string expecting = GetExpecting ();
index 7475a3055fabcd00e8a69901c526ec90f8046212..2c957615115c4626d8627f693f68b78319b3b172 100644 (file)
@@ -2421,6 +2421,11 @@ namespace Mono.CSharp
                                }
 
                                Report.Warning (1634, 1, Location, "Expected disable or restore");
+
+                               // Eat any remaining characters on the line
+                               while (c != '\n' && c != -1)
+                                       c = get_char ();
+
                                return;
                        }
 
@@ -2858,7 +2863,14 @@ namespace Mono.CSharp
 #endif
 
                        while (true){
-                               c = get_char ();
+                               // Cannot use get_char because of \r in quoted strings
+                               if (putback_char != -1) {
+                                       c = putback_char;
+                                       putback_char = -1;
+                               } else {
+                                       c = reader.Read ();
+                               }
+
                                if (c == '"') {
                                        if (quoted && peek_char () == '"') {
                                                if (pos == value_builder.Length)
@@ -2891,9 +2903,18 @@ namespace Mono.CSharp
                                if (c == '\n') {
                                        if (!quoted) {
                                                Report.Error (1010, Location, "Newline in constant");
+
+                                               advance_line ();
+
+                                               // Don't add \r to string literal
+                                               if (pos > 1 && value_builder [pos - 1] == '\r')
+                                                       --pos;
+
                                                val = new StringLiteral (context.BuiltinTypes, new string (value_builder, 0, pos), start_location);
                                                return Token.LITERAL;
                                        }
+
+                                       advance_line ();
                                } else if (c == '\\' && !quoted) {
                                        int surrogate;
                                        c = escape (c, out surrogate);
@@ -2909,6 +2930,8 @@ namespace Mono.CSharp
                                } else if (c == -1) {
                                        Report.Error (1039, Location, "Unterminated string literal");
                                        return Token.EOF;
+                               } else {
+                                       ++col;
                                }
 
                                if (pos == value_builder.Length)
index b705e6c744c2c6f96186699e52e55bc41d86ac78..47d4971197cca5b7c4126b782cf7abac8d554b3a 100644 (file)
@@ -466,7 +466,7 @@ namespace Mono.CSharp {
                        caching_flags |= Flags.IsAssigned;
                }
 
-               public void SetConstraints (List<Constraints> constraints_list)
+               public virtual void SetConstraints (List<Constraints> constraints_list)
                {
                        var tparams = member_name.TypeParameters;
                        if (tparams == null) {
index fa9d7a134f38c029dac0a205e89ec26b5c3fa8c4..2c434e3a08234f4ad6cd0cf2346df6e101557ada 100644 (file)
@@ -3,11 +3,11 @@
 //
 // Author:
 //   Miguel de Icaza (miguel@ximian.com)
-//   Marek Safar (marek.safar@seznam.cz)
+//   Marek Safar (marek.safar@gmail.com)
 //
 // Copyright 2001, 2002, 2003 Ximian, Inc.
 // Copyright 2003-2008 Novell, Inc.
-// Copyright 2011 Xamarin Inc.
+// Copyright 2011-2012 Xamarin Inc.
 //
 //
 
@@ -323,14 +323,7 @@ namespace Mono.CSharp {
                public virtual void Error_ValueAssignment (ResolveContext rc, Expression rhs)
                {
                        if (rhs == EmptyExpression.LValueMemberAccess || rhs == EmptyExpression.LValueMemberOutAccess) {
-                               rc.Report.SymbolRelatedToPreviousError (type);
-                               if (rc.CurrentInitializerVariable != null) {
-                                       rc.Report.Error (1918, loc, "Members of value type `{0}' cannot be assigned using a property `{1}' object initializer",
-                                               type.GetSignatureForError (), GetSignatureForError ());
-                               } else {
-                                       rc.Report.Error (1612, loc, "Cannot modify a value type return value of `{0}'. Consider storing the value in a temporary variable",
-                                               GetSignatureForError ());
-                               }
+                               // Already reported as CS1612
                        } else {
                                rc.Report.Error (131, loc, "The left-hand side of an assignment must be a variable, a property or an indexer");
                        }
@@ -1031,15 +1024,30 @@ namespace Mono.CSharp {
                        if (es == null)
                                Error_InvalidExpressionStatement (ec);
 
-                       if (ec.CurrentAnonymousMethod is AsyncInitializer && !(e is Assign) &&
-                               (e.Type.IsGenericTask || e.Type == ec.Module.PredefinedTypes.Task.TypeSpec)) {
-                               ec.Report.Warning (4014, 1, e.Location,
-                                       "The statement is not awaited and execution of current method continues before the call is completed. Consider using `await' operator");
+                       if (!(e is Assign) && (e.Type.IsGenericTask || e.Type == ec.Module.PredefinedTypes.Task.TypeSpec)) {
+                               WarningAsyncWithoutWait (ec, e);
                        }
 
                        return es;
                }
 
+               static void WarningAsyncWithoutWait (BlockContext bc, Expression e)
+               {
+                       if (bc.CurrentAnonymousMethod is AsyncInitializer) {
+                               bc.Report.Warning (4014, 1, e.Location,
+                                       "The statement is not awaited and execution of current method continues before the call is completed. Consider using `await' operator");
+                               return;
+                       }
+
+                       var inv = e as Invocation;
+                       if (inv != null && inv.MethodGroup != null && inv.MethodGroup.BestCandidate.IsAsync) {
+                               // The warning won't be reported for imported methods to maintain warning compatiblity with csc 
+                               bc.Report.Warning (4014, 1, e.Location,
+                                       "The statement is not awaited and execution of current method continues before the call is completed. Consider using `await' operator or calling `Wait' method");
+                               return;
+                       }
+               }
+
                /// <summary>
                ///   Requests the expression to be emitted in a `statement'
                ///   context.  This means that no new value is left on the
@@ -2942,6 +2950,30 @@ namespace Mono.CSharp {
                }
 
                public bool ResolveInstanceExpression (ResolveContext rc, Expression rhs)
+               {
+                       if (!ResolveInstanceExpressionCore (rc, rhs))
+                               return false;
+
+                       //
+                       // Check intermediate value modification which won't have any effect
+                       //
+                       if (rhs != null && InstanceExpression.Type.IsStruct &&
+                               (InstanceExpression is PropertyExpr || InstanceExpression is IndexerExpr || InstanceExpression is Invocation)) {
+
+                               if (rc.CurrentInitializerVariable != null) {
+                                       rc.Report.Error (1918, loc, "Members of value type `{0}' cannot be assigned using a property `{1}' object initializer",
+                                               InstanceExpression.Type.GetSignatureForError (), InstanceExpression.GetSignatureForError ());
+                               } else {
+                                       rc.Report.Error (1612, loc,
+                                               "Cannot modify a value type return value of `{0}'. Consider storing the value in a temporary variable",
+                                               InstanceExpression.GetSignatureForError ());
+                               }
+                       }
+
+                       return true;
+               }
+
+               bool ResolveInstanceExpressionCore (ResolveContext rc, Expression rhs)
                {
                        if (IsStatic) {
                                if (InstanceExpression != null) {
@@ -3005,7 +3037,7 @@ namespace Mono.CSharp {
 
                        var me = InstanceExpression as MemberExpr;
                        if (me != null) {
-                               me.ResolveInstanceExpression (rc, rhs);
+                               me.ResolveInstanceExpressionCore (rc, rhs);
 
                                // Using this check to detect probing instance expression resolve
                                if (!rc.OmitStructFlowAnalysis) {
@@ -4370,16 +4402,32 @@ namespace Mono.CSharp {
                                        // if the type matches
                                        //
                                        Expression e = fp.DefaultValue;
-                                       if (!(e is Constant) || e.Type.IsGenericOrParentIsGeneric || e.Type.IsGenericParameter) {
+                                       if (!(e is Constant) || e.Type != ptypes [i]) {
                                                //
                                                // LAMESPEC: No idea what the exact rules are for System.Reflection.Missing.Value instead of null
                                                //
-                                               if (e == EmptyExpression.MissingValue && ptypes[i].BuiltinType == BuiltinTypeSpec.Type.Object || ptypes[i].BuiltinType == BuiltinTypeSpec.Type.Dynamic) {
+                                               var ptype = ptypes [i];
+                                               if (e == EmptyExpression.MissingValue && ptype.BuiltinType == BuiltinTypeSpec.Type.Object || ptype.BuiltinType == BuiltinTypeSpec.Type.Dynamic) {
                                                        e = new MemberAccess (new MemberAccess (new MemberAccess (
                                                                new QualifiedAliasMember (QualifiedAliasMember.GlobalAlias, "System", loc), "Reflection", loc), "Missing", loc), "Value", loc);
+                                               } else if (e is Constant) {
+                                                       //
+                                                       // Handles int to int? conversions
+                                                       //
+                                                       e = Convert.ImplicitConversionStandard (ec, e, ptype, loc);
+                                                       
+                                                       //
+                                                       // When constant type paramter contains type argument
+                                                       //
+                                                       // Foo (T[] arg = null)
+                                                       //
+                                                       if (e == null) {
+                                                               e = new DefaultValueExpression (new TypeExpression (ptype, loc), loc);
+                                                       }
                                                } else {
-                                                       e = new DefaultValueExpression (new TypeExpression (ptypes [i], loc), loc);
+                                                       e = new DefaultValueExpression (new TypeExpression (ptype, loc), loc);
                                                }
+                                       
 
                                                e = e.Resolve (ec);
                                        }
@@ -6063,11 +6111,6 @@ namespace Mono.CSharp {
                                return null;
                        }
 
-                       // if the property/indexer returns a value type, and we try to set a field in it
-                       if (right_side == EmptyExpression.LValueMemberAccess || right_side == EmptyExpression.LValueMemberOutAccess) {
-                               Error_ValueAssignment (ec, right_side);
-                       }
-
                        if (eclass == ExprClass.Unresolved) {
                                var expr = OverloadResolve (ec, right_side);
                                if (expr == null)
index c448d2b0d3705b751fe019411be826e075d257a9..6810507d063fb0ca79c5124042fa3943cce1d767 100644 (file)
@@ -656,7 +656,11 @@ namespace Mono.CSharp
                        }
 
                        module.CreateContainer ();
-                       source_file.EnableUsingClausesRedefinition ();
+
+                       // Disable module and source file re-definition checks
+                       module.EnableRedefinition ();
+                       source_file.EnableRedefinition ();
+
                        module.Define ();
 
                        if (Report.Errors != 0){
index d401547c158335eda7125afdbaa8b213f087c581..9001763a2682f611440058e7d8cc7aae36f5a379 100644 (file)
@@ -1702,7 +1702,7 @@ namespace Mono.CSharp
                        
                        Constant c = expr as Constant;
                        if (c != null) {
-                               c = c.TryReduce (ec, type);
+                               c = c.Reduce (ec, type);
                                if (c != null)
                                        return c;
                        }
@@ -2661,7 +2661,7 @@ namespace Mono.CSharp
                                        return left;
                                
                                if (left.IsZeroInteger)
-                                       return left.TryReduce (ec, right.Type);
+                                       return left.Reduce (ec, right.Type);
                                
                                break;
                                
@@ -6157,7 +6157,7 @@ namespace Mono.CSharp
                                // We use this to store all the data values in the order in which we
                                // will need to store them in the byte blob later
                                //
-                               array_data = new List<Expression> ();
+                               array_data = new List<Expression> (probe.Count);
                                bounds = new Dictionary<int, int> ();
                        }
 
@@ -6463,12 +6463,12 @@ namespace Mono.CSharp
                                        }
                                        break;
                                case BuiltinTypeSpec.Type.Float:
-                                       element = BitConverter.GetBytes ((float) v);
+                                       var fval = SingleConverter.SingleToInt32Bits((float) v);
 
-                                       for (int j = 0; j < factor; ++j)
-                                               data[idx + j] = element[j];
-                                       if (!BitConverter.IsLittleEndian)
-                                               System.Array.Reverse (data, idx, 4);
+                                       data[idx] = (byte) (fval & 0xff);
+                                       data[idx + 1] = (byte) ((fval >> 8) & 0xff);
+                                       data[idx + 2] = (byte) ((fval >> 16) & 0xff);
+                                       data[idx + 3] = (byte) (fval >> 24);
                                        break;
                                case BuiltinTypeSpec.Type.Double:
                                        element = BitConverter.GetBytes ((double) v);
@@ -6795,38 +6795,7 @@ namespace Mono.CSharp
        //
        class ImplicitlyTypedArrayCreation : ArrayCreation
        {
-               sealed class InferenceContext : TypeInferenceContext
-               {
-                       class ExpressionBoundInfo : BoundInfo
-                       {
-                               readonly Expression expr;
-
-                               public ExpressionBoundInfo (Expression expr)
-                                       : base (expr.Type, BoundKind.Lower)
-                               {
-                                       this.expr = expr;
-                               }
-
-                               public override bool Equals (BoundInfo other)
-                               {
-                                       // We are using expression not type for conversion check
-                                       // no optimization based on types is possible
-                                       return false;
-                               }
-
-                               public override Expression GetTypeExpression ()
-                               {
-                                       return expr;
-                               }
-                       }
-
-                       public void AddExpression (Expression expr)
-                       {
-                               AddToBounds (new ExpressionBoundInfo (expr), 0);
-                       }
-               }
-
-               InferenceContext best_type_inference;
+               TypeInferenceContext best_type_inference;
 
                public ImplicitlyTypedArrayCreation (ComposedTypeSpecifier rank, ArrayInitializer initializers, Location loc)
                        : base (null, rank, initializers, loc)
@@ -6845,7 +6814,7 @@ namespace Mono.CSharp
 
                        dimensions = rank.Dimension;
 
-                       best_type_inference = new InferenceContext ();
+                       best_type_inference = new TypeInferenceContext ();
 
                        if (!ResolveInitializers (ec))
                                return null;
@@ -6890,7 +6859,7 @@ namespace Mono.CSharp
                {
                        element = element.Resolve (ec);
                        if (element != null)
-                               best_type_inference.AddExpression (element);
+                               best_type_inference.AddCommonTypeBound (element.Type);
 
                        return element;
                }
@@ -8540,11 +8509,6 @@ namespace Mono.CSharp
                        if (res == null)
                                return null;
 
-                       bool lvalue_instance = rhs != null && type.IsStruct && (Expr is Invocation || Expr is PropertyExpr);
-                       if (lvalue_instance) {
-                               Expr.Error_ValueAssignment (ec, EmptyExpression.LValueMemberAccess);
-                       }
-
                        return res.ResolveLValue (ec, rhs);
                }
                
index 3cded948b00bcd5af3f3a9f31dcc26973bc75da9..f6d6db60e93144dd0baecb234b9441d43e2a623b 100644 (file)
@@ -117,7 +117,7 @@ namespace Mono.CSharp
                // </summary>
                public readonly Location Location;
 
-               static int next_id = 0;
+               static int next_id;
                int id;
 
                // <summary>
@@ -163,7 +163,7 @@ namespace Mono.CSharp
                        MyBitVector locals;
                        bool is_unreachable;
 
-                       static int next_id = 0;
+                       static int next_id;
                        int id;
 
                        //
index 9f31ffc736b0662550915f846695cd04968fc587..57c7ac96cd7bcb0d5395af27125bb06e19ce729c 100644 (file)
@@ -499,7 +499,7 @@ namespace Mono.CSharp {
 
                        // Copy constraint from resolved part to partial container
                        spec.SpecialConstraint = tp.spec.SpecialConstraint;
-                       spec.InterfacesDefined = tp.spec.InterfacesDefined;
+                       spec.Interfaces = tp.spec.Interfaces;
                        spec.TypeArguments = tp.spec.TypeArguments;
                        spec.BaseType = tp.spec.BaseType;
                        
@@ -2706,7 +2706,7 @@ namespace Mono.CSharp {
                        Upper   = 2
                }
 
-               protected class BoundInfo : IEquatable<BoundInfo>
+               struct BoundInfo : IEquatable<BoundInfo>
                {
                        public readonly TypeSpec Type;
                        public readonly BoundKind Kind;
@@ -2722,14 +2722,14 @@ namespace Mono.CSharp {
                                return Type.GetHashCode ();
                        }
 
-                       public virtual Expression GetTypeExpression ()
+                       public Expression GetTypeExpression ()
                        {
                                return new TypeExpression (Type, Location.Null);
                        }
 
                        #region IEquatable<BoundInfo> Members
 
-                       public virtual bool Equals (BoundInfo other)
+                       public bool Equals (BoundInfo other)
                        {
                                return Type == other.Type && Kind == other.Kind;
                        }
@@ -2785,7 +2785,7 @@ namespace Mono.CSharp {
                        AddToBounds (new BoundInfo (type, BoundKind.Lower), 0);
                }
 
-               protected void AddToBounds (BoundInfo bound, int index)
+               void AddToBounds (BoundInfo bound, int index)
                {
                        //
                        // Some types cannot be used as type arguments
index 605db44fb538b6a0059daa28cd247c52fd177bfe..f8c7bb8bf55a31fd6c6e6c4db0547d67f7737824 100644 (file)
@@ -1974,6 +1974,10 @@ namespace Mono.CSharp
                                foreach (var member in all) {
                                        switch (member.MemberType) {
                                        case MemberTypes.Constructor:
+                                               if (declaringType.IsInterface)
+                                                       continue;
+
+                                               goto case MemberTypes.Method;
                                        case MemberTypes.Method:
                                                MethodBase mb = (MethodBase) member;
                                                var attrs = mb.Attributes;
@@ -2094,6 +2098,9 @@ namespace Mono.CSharp
                                                throw new NotImplementedException (member.ToString ());
                                        }
 
+                                       if (imported.IsStatic && declaringType.IsInterface)
+                                               continue;
+
                                        cache.AddMemberImported (imported);
                                }
                        }
index 5c99299ebe54c4c2372173d404bf446ce8627424..9f9d00e4a07703ceb4c5954332894c0ea035c8d0 100644 (file)
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
     <RootNamespace>Mono.CSharp</RootNamespace>\r
     <AssemblyName>mcs</AssemblyName>\r
-    <TargetFrameworkVersion>v4.0</TargetFrameworkVersion>\r
     <FileAlignment>512</FileAlignment>\r
     <PlatformTarget>x86</PlatformTarget>\r
   </PropertyGroup>\r
   <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
-    <DebugSymbols>true</DebugSymbols>\r
+    <DebugSymbols>True</DebugSymbols>\r
     <DebugType>full</DebugType>\r
-    <Optimize>false</Optimize>\r
-    <OutputPath>.\</OutputPath>\r
+    <Optimize>False</Optimize>\r
+    <OutputPath>.</OutputPath>\r
     <DefineConstants>TRACE;DEBUG;NET_4_0;STATIC;NO_SYMBOL_WRITER</DefineConstants>\r
     <ErrorReport>prompt</ErrorReport>\r
     <WarningLevel>4</WarningLevel>\r
   </PropertyGroup>\r
   <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
     <DebugType>pdbonly</DebugType>\r
-    <Optimize>true</Optimize>\r
+    <Optimize>True</Optimize>\r
     <DefineConstants>TRACE;NET_4_0;STATIC;NO_SYMBOL_WRITER</DefineConstants>\r
     <ErrorReport>prompt</ErrorReport>\r
     <ErrorReport>prompt</ErrorReport>\r
     <WarningLevel>4</WarningLevel>\r
-    <OutputPath>.\</OutputPath>\r
+    <OutputPath>.</OutputPath>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug - AST|AnyCPU'">\r
-    <DebugSymbols>true</DebugSymbols>\r
-    <OutputPath>.\</OutputPath>\r
+    <DebugSymbols>True</DebugSymbols>\r
+    <OutputPath>.</OutputPath>\r
     <DefineConstants>TRACE;DEBUG;NET_4_0;STATIC;NO_SYMBOL_WRITER;FULL_AST</DefineConstants>\r
     <DebugType>full</DebugType>\r
-    <PlatformTarget>x86</PlatformTarget>\r
     <CodeAnalysisLogFile>mcs.exe.CodeAnalysisLog.xml</CodeAnalysisLogFile>\r
     <CodeAnalysisUseTypeNameInSuppression>true</CodeAnalysisUseTypeNameInSuppression>\r
     <CodeAnalysisModuleSuppressionsFile>GlobalSuppressions.cs</CodeAnalysisModuleSuppressionsFile>\r
@@ -50,6 +48,8 @@
     <CodeAnalysisRuleDirectories>;C:\Program Files (x86)\Microsoft Visual Studio 10.0\Team Tools\Static Analysis Tools\FxCop\\Rules</CodeAnalysisRuleDirectories>\r
     <CodeAnalysisIgnoreBuiltInRules>false</CodeAnalysisIgnoreBuiltInRules>\r
     <CodeAnalysisFailOnMissingRules>false</CodeAnalysisFailOnMissingRules>\r
+    <WarningLevel>4</WarningLevel>\r
+    <Optimize>False</Optimize>\r
   </PropertyGroup>\r
   <ItemGroup>\r
     <Reference Include="System" />\r
   </ItemGroup>\r
   <ItemGroup Label="IKVM.Reflection">\r
     <Compile Include="..\class\IKVM.Reflection\*.cs">\r
-      <Visible>false</Visible>\r
+      <Visible>False</Visible>\r
     </Compile>\r
     <Compile Include="..\class\IKVM.Reflection\Emit\*.cs">\r
-      <Visible>false</Visible>\r
+      <Visible>False</Visible>\r
     </Compile>\r
     <Compile Include="..\class\IKVM.Reflection\Metadata\*.cs">\r
-      <Visible>false</Visible>\r
+      <Visible>False</Visible>\r
     </Compile>\r
     <Compile Include="..\class\IKVM.Reflection\Reader\*.cs">\r
-      <Visible>false</Visible>\r
+      <Visible>False</Visible>\r
     </Compile>\r
     <Compile Include="..\class\IKVM.Reflection\Writer\*.cs">\r
-      <Visible>false</Visible>\r
+      <Visible>False</Visible>\r
     </Compile>\r
     <Compile Include="..\class\IKVM.Reflection\Impl\ITypeOwner.cs">\r
-      <Visible>false</Visible>\r
+      <Visible>False</Visible>\r
     </Compile>\r
     <Compile Include="..\class\IKVM.Reflection\Impl\SymbolSupport.cs">\r
-      <Visible>false</Visible>\r
+      <Visible>False</Visible>\r
     </Compile>\r
   </ItemGroup>\r
   <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
index 8c96171696e8442fb5c800b8b729527b7edff5a2..8e3e8d1da7ca3e632c4dc9de0ee702af70f1585c 100644 (file)
@@ -243,6 +243,12 @@ namespace Mono.CSharp {
                        }
                }
 
+               public bool IsAsync {
+                       get {
+                               return (Modifiers & Modifiers.ASYNC) != 0;
+                       }
+               }
+
                public bool IsExtensionMethod {
                        get {
                                return IsStatic && parameters.HasExtensionMethodType;
@@ -846,16 +852,10 @@ namespace Mono.CSharp {
                }
 
                public static Method Create (TypeDefinition parent, FullNamedExpression returnType, Modifiers mod,
-                                  MemberName name, ParametersCompiled parameters, Attributes attrs, bool hasConstraints)
+                                  MemberName name, ParametersCompiled parameters, Attributes attrs)
                {
                        var m = new Method (parent, returnType, mod, name, parameters, attrs);
 
-                       if (hasConstraints && ((mod & Modifiers.OVERRIDE) != 0 || m.IsExplicitImpl)) {
-                               m.Report.Error (460, m.Location,
-                                       "`{0}': Cannot specify constraints for overrides and explicit interface implementation methods",
-                                       m.GetSignatureForError ());
-                       }
-
                        if ((mod & Modifiers.PARTIAL) != 0) {
                                const Modifiers invalid_partial_mod = Modifiers.AccessibilityMask | Modifiers.ABSTRACT | Modifiers.EXTERN |
                                        Modifiers.NEW | Modifiers.OVERRIDE | Modifiers.SEALED | Modifiers.VIRTUAL;
index bf36e8f20e4c2695ebadda8638619e587c28c511..6fabc733356421f5338d9856b1a9db4a167844ef 100644 (file)
@@ -412,6 +412,11 @@ namespace Mono.CSharp
                        return base.DefineContainer ();
                }
 
+               public void EnableRedefinition ()
+               {
+                       is_defined = false;
+               }
+
                public override void EmitContainer ()
                {
                        if (OptAttributes != null)
index 7908f218c7d963201d292e6f2749dbd949d445aa..e87d59521c4c6fa173baba0f8ad11d1c37f10da7 100644 (file)
@@ -1287,8 +1287,9 @@ namespace Mono.CSharp {
                        }
                }
 
-               public void EnableUsingClausesRedefinition ()
+               public void EnableRedefinition ()
                {
+                       is_defined = false;
                        namespace_using_table = null;
                }
 
index e6cdf85bd34ab17c64b4fa00ffc5c011b899948f..1742956bda77768ed2ec64df7130610f19398150 100644 (file)
@@ -49,13 +49,21 @@ namespace Mono.CSharp {
                        // in unreachable code, for instance.
                        //
 
-                       if (warn)
+                       bool unreachable = false;
+                       if (warn && !ec.UnreachableReported) {
+                               ec.UnreachableReported = true;
+                               unreachable = true;
                                ec.Report.Warning (162, 2, loc, "Unreachable code detected");
+                       }
 
                        ec.StartFlowBranching (FlowBranching.BranchingType.Block, loc);
                        bool ok = Resolve (ec);
                        ec.KillFlowBranching ();
 
+                       if (unreachable) {
+                               ec.UnreachableReported = false;
+                       }
+
                        return ok;
                }
                                
@@ -1225,7 +1233,7 @@ namespace Mono.CSharp {
                                res = c;
                        } else {
                                TypeSpec type = ec.Switch.SwitchType;
-                               res = c.TryReduce (ec, type);
+                               res = c.Reduce (ec, type);
                                if (res == null) {
                                        c.Error_ValueCannotBeConverted (ec, type, true);
                                        return false;
@@ -2073,9 +2081,7 @@ namespace Mono.CSharp {
 #endif
 
 //             int assignable_slots;
-               bool unreachable_shown;
-               bool unreachable;
-               
+
                public Block (Block parent, Location start, Location end)
                        : this (parent, 0, start, end)
                {
@@ -2247,6 +2253,8 @@ namespace Mono.CSharp {
 
                        Block prev_block = ec.CurrentBlock;
                        bool ok = true;
+                       bool unreachable = ec.IsUnreachable;
+                       bool prev_unreachable = unreachable;
 
                        ec.CurrentBlock = this;
                        ec.StartFlowBranching (this);
@@ -2279,14 +2287,10 @@ namespace Mono.CSharp {
                                        if (s is EmptyStatement)
                                                continue;
 
-                                       if (!unreachable_shown && !(s is LabeledStatement)) {
+                                       if (!ec.UnreachableReported && !(s is LabeledStatement)) {
                                                ec.Report.Warning (162, 2, s.loc, "Unreachable code detected");
-                                               unreachable_shown = true;
+                                               ec.UnreachableReported = true;
                                        }
-
-                                       Block c_block = s as Block;
-                                       if (c_block != null)
-                                               c_block.unreachable = c_block.unreachable_shown = true;
                                }
 
                                //
@@ -2310,8 +2314,15 @@ namespace Mono.CSharp {
                                        statements [ix] = new EmptyStatement (s.loc);
 
                                unreachable = ec.CurrentBranching.CurrentUsageVector.IsUnreachable;
-                               if (unreachable && s is LabeledStatement)
-                                       throw new InternalErrorException ("should not happen");
+                               if (unreachable) {
+                                       ec.IsUnreachable = true;
+                               } else if (ec.IsUnreachable)
+                                       ec.IsUnreachable = false;
+                       }
+
+                       if (unreachable != prev_unreachable) {
+                               ec.IsUnreachable = prev_unreachable;
+                               ec.UnreachableReported = false;
                        }
 
                        while (ec.CurrentBranching is FlowBranchingLabeled)
@@ -2335,17 +2346,21 @@ namespace Mono.CSharp {
 
                public override bool ResolveUnreachable (BlockContext ec, bool warn)
                {
-                       unreachable_shown = true;
-                       unreachable = true;
-
-                       if (warn)
+                       bool unreachable = false;
+                       if (warn && !ec.UnreachableReported) {
+                               ec.UnreachableReported = true;
+                               unreachable = true;
                                ec.Report.Warning (162, 2, loc, "Unreachable code detected");
+                       }
 
                        var fb = ec.StartFlowBranching (FlowBranching.BranchingType.Block, loc);
                        fb.CurrentUsageVector.IsUnreachable = true;
                        bool ok = Resolve (ec);
                        ec.KillFlowBranching ();
 
+                       if (unreachable)
+                               ec.UnreachableReported = false;
+
                        return ok;
                }
                
@@ -2534,10 +2549,17 @@ namespace Mono.CSharp {
                                // Only first storey in path will hold this reference. All children blocks will
                                // reference it indirectly using $ref field
                                //
-                               for (Block b = Original.Explicit.Parent; b != null; b = b.Parent) {
-                                       var s = b.Explicit.AnonymousMethodStorey;
-                                       if (s != null) {
-                                               storey.HoistedThis = s.HoistedThis;
+                               for (Block b = Original.Explicit; b != null; b = b.Parent) {
+                                       if (b.Parent != null) {
+                                               var s = b.Parent.Explicit.AnonymousMethodStorey;
+                                               if (s != null) {
+                                                       storey.HoistedThis = s.HoistedThis;
+                                                       break;
+                                               }
+                                       }
+
+                                       if (b.Explicit == b.Explicit.ParametersBlock && b.Explicit.ParametersBlock.StateMachine != null) {
+                                               storey.HoistedThis = b.Explicit.ParametersBlock.StateMachine.HoistedThis;
                                                break;
                                        }
                                }
diff --git a/mcs/tests/.gitattributes b/mcs/tests/.gitattributes
new file mode 100644 (file)
index 0000000..cb923b2
--- /dev/null
@@ -0,0 +1 @@
+test-853.cs           -text
\ No newline at end of file
index 184b5138ca0b8d9ef4c53795bfa33368ac5c8ac4..d2e115b05e798b30d6672bc871a691436d98efb1 100644 (file)
@@ -21,9 +21,11 @@ public class Test
                var a6 = new[] { new [] { 1, 2, 3 }, new [] { 4, 5, 6 } };
                
                const byte b = 100;
-               var a7 = new[] { b, 10, b, 999, b };
+               int[] a7 = new[] { b, 10, b, 999, b };
                
                var a8 = new[] { new Test (), 22,  new object(), string.Empty, null };
+
+               int[] a9 = new [] { 1, (byte) 1 };
                
                return 0;
        }
diff --git a/mcs/tests/gtest-iter-27.cs b/mcs/tests/gtest-iter-27.cs
new file mode 100644 (file)
index 0000000..202964d
--- /dev/null
@@ -0,0 +1,24 @@
+using System;
+using System.Collections.Generic;
+
+public class CompilerBug
+{
+       static void Main ()
+       {
+               foreach (string message in Foo ())
+                       Console.WriteLine (message);
+       }
+
+       static IEnumerable<string> Foo ()
+       {
+               Action fnAction;
+               {
+                       fnAction = () => { };
+               }
+               yield return "Executing action";
+               {
+                       fnAction ();
+               }
+               yield return "Action executed";
+       }
+}
diff --git a/mcs/tests/gtest-iter-28.cs b/mcs/tests/gtest-iter-28.cs
new file mode 100644 (file)
index 0000000..f58b2b1
--- /dev/null
@@ -0,0 +1,37 @@
+using System;
+using System.Collections.Generic;
+
+class A
+{
+       public IEnumerable<string> Test (B b)
+       {
+               string s = "s";
+
+               yield return "a";
+               {
+                       string stringValue = "two";
+
+                       Console.WriteLine (b.ToString ());
+                       {
+                               Action a = () => {
+                                       Console.WriteLine (s + c.GetType () + stringValue);
+                               };
+
+                               a ();
+                       }
+               }
+       }
+
+       C c = new C ();
+}
+
+class B
+{
+}
+
+class C
+{
+    public static void Main ()
+    {
+    }
+}
\ No newline at end of file
diff --git a/mcs/tests/gtest-optional-25.cs b/mcs/tests/gtest-optional-25.cs
new file mode 100644 (file)
index 0000000..4d67dc9
--- /dev/null
@@ -0,0 +1,19 @@
+using System;
+
+public class Usage
+{
+       public static void Main ()
+       {
+               var bug = new Bug ();
+               string[] tags = bug.MethodWithOptionalParameter<string> (0);
+       }
+}
+
+public class Bug
+{
+       public TValue[] MethodWithOptionalParameter<TValue> (int index, TValue[] defaultValue = null)
+       {
+               return null;
+       }
+}
+
diff --git a/mcs/tests/gtest-partial-03.cs b/mcs/tests/gtest-partial-03.cs
new file mode 100644 (file)
index 0000000..177fa48
--- /dev/null
@@ -0,0 +1,29 @@
+using System.Collections.Generic;
+
+class Variable
+{
+}
+
+internal partial class Test<T>
+{
+}
+
+internal partial class Test<T> where T : IList<Variable>
+{
+       public Test (T t)
+       {
+               var val = t.Count;
+       }
+}
+
+internal partial class Test<T>
+{
+}
+
+class CC
+{
+       public static void Main ()
+       {
+               new Test<List<Variable>> (new List<Variable> ());
+       }
+}
\ No newline at end of file
diff --git a/mcs/tests/support-xml-067.cs b/mcs/tests/support-xml-067.cs
new file mode 100644 (file)
index 0000000..2148fd1
--- /dev/null
@@ -0,0 +1,10 @@
+namespace Testing
+{
+       public partial class Test
+       {
+               /// test 3
+               public void OneMore ()
+               {
+               }
+       }
+}
\ No newline at end of file
diff --git a/mcs/tests/test-851-lib.il b/mcs/tests/test-851-lib.il
new file mode 100644 (file)
index 0000000..a3bbcb7
--- /dev/null
@@ -0,0 +1,32 @@
+.assembly extern mscorlib
+{
+}
+
+.assembly 'test-851-lib'
+{
+  .hash algorithm 0x00008004
+}
+
+.module 'test-851-lib.dll'
+
+.class interface public auto ansi abstract I
+{
+  .field  public static initonly  int32 'value'
+
+  .method public static specialname rtspecialname 
+           default void '.cctor' ()  cil managed 
+  {
+    ret
+  }
+
+  .method public static specialname 
+           default void '__<clinit>' ()  cil managed noinlining 
+  {
+    ret 
+  }
+
+  .class nested public auto ansi abstract sealed __Fields
+    extends [mscorlib]System.Object
+  {
+  }
+}
diff --git a/mcs/tests/test-851.cs b/mcs/tests/test-851.cs
new file mode 100644 (file)
index 0000000..45cd669
--- /dev/null
@@ -0,0 +1,10 @@
+// Compiler options: -r:test-851-lib.dll
+
+public class C : I
+{
+       public static void Main ()
+       {
+
+       }
+}
+
diff --git a/mcs/tests/test-852.cs b/mcs/tests/test-852.cs
new file mode 100644 (file)
index 0000000..3f50017
--- /dev/null
@@ -0,0 +1,11 @@
+// Compiler options: -warnaserror
+
+public class Test
+{
+#pragma warning disable 1634
+#pragma warning suppress 56500
+       public static void Main ()
+       {
+       }
+#pragma warning restore 1634
+}
\ No newline at end of file
diff --git a/mcs/tests/test-853.cs b/mcs/tests/test-853.cs
new file mode 100644 (file)
index 0000000..3be2570
--- /dev/null
@@ -0,0 +1,15 @@
+using System;\r
+\r
+class Program\r
+{\r
+       static int Main ()\r
+       {\r
+string s = @"a\r
+\r
+";\r
+               if (s.Length != 5)\r
+                       return 1;\r
+                       \r
+               return 0;\r
+       }\r
+}
\ No newline at end of file
diff --git a/mcs/tests/test-async-39.cs b/mcs/tests/test-async-39.cs
new file mode 100644 (file)
index 0000000..d02772f
--- /dev/null
@@ -0,0 +1,25 @@
+using System;
+using System.Threading.Tasks;
+
+public class CompilerBug
+{
+       static void Main ()
+       {
+               var res = Foo ().Result;
+               Console.WriteLine (res);
+               return;
+       }
+
+       static async Task<string> Foo ()
+       {
+               Action fnAction;
+               {
+                       fnAction = () => { };
+               }
+               await Task.Delay (10);
+               {
+                       fnAction ();
+               }
+               return "val";
+       }
+}
diff --git a/mcs/tests/test-xml-067-ref.xml b/mcs/tests/test-xml-067-ref.xml
new file mode 100644 (file)
index 0000000..c9c5cb1
--- /dev/null
@@ -0,0 +1,19 @@
+<?xml version="1.0"?>
+<doc>
+    <assembly>
+        <name>support-xml-067</name>
+    </assembly>
+    <members>
+        <member name="T:Testing.Test">
+            <summary>
+            description for class Test
+            </summary>
+        </member>
+        <member name="M:Testing.Test.#ctor">
+            test</member>
+        <member name="M:Testing.Test.Foo">
+            test 2</member>
+        <member name="M:Testing.Test.OneMore">
+            test 3</member>
+    </members>
+</doc>
diff --git a/mcs/tests/test-xml-067.cs b/mcs/tests/test-xml-067.cs
new file mode 100644 (file)
index 0000000..95b0a98
--- /dev/null
@@ -0,0 +1,31 @@
+// Compiler options: support-xml-067.cs -doc:xml-067.xml -warnaserror
+
+// Partial types can have documentation on one part only
+
+using System;
+
+namespace Testing
+{
+       /// <summary>
+       /// description for class Test
+       /// </summary>
+       public partial class Test
+       {
+               /// test
+               public Test ()
+               {
+               }
+       }
+
+       public partial class Test
+       {
+               /// test 2
+               public void Foo ()
+               {
+               }
+
+               static void Main ()
+               {
+               }
+       }
+}
index 3afbfd6288963a484d5685ee900d8f41c61d179d..40aad99e35b5e62200226407f8e40af0d28fbed0 100644 (file)
   <test name="gtest-implicitarray-01.cs">\r
     <type name="Test">\r
       <method name="Int32 Main()" attrs="145">\r
-        <size>313</size>\r
+        <size>329</size>\r
       </method>\r
       <method name="Void .ctor()" attrs="6278">\r
         <size>7</size>\r
       </method>\r
     </type>\r
   </test>\r
+  <test name="gtest-iter-27.cs">\r
+    <type name="CompilerBug">\r
+      <method name="Void Main()" attrs="145">\r
+        <size>61</size>\r
+      </method>\r
+      <method name="IEnumerable`1 Foo()" attrs="145">\r
+        <size>23</size>\r
+      </method>\r
+      <method name="Void .ctor()" attrs="6278">\r
+        <size>7</size>\r
+      </method>\r
+    </type>\r
+    <type name="CompilerBug+&lt;Foo&gt;c__Iterator0">\r
+      <method name="System.String System.Collections.Generic.IEnumerator&lt;string&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="IEnumerator`1 System.Collections.Generic.IEnumerable&lt;string&gt;.GetEnumerator()" attrs="481">\r
+        <size>26</size>\r
+      </method>\r
+      <method name="Boolean MoveNext()" attrs="486">\r
+        <size>161</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="Void &lt;&gt;m__0()" attrs="145">\r
+        <size>2</size>\r
+      </method>\r
+      <method name="Void .ctor()" attrs="6278">\r
+        <size>7</size>\r
+      </method>\r
+    </type>\r
+  </test>\r
+  <test name="gtest-iter-28.cs">\r
+    <type name="A">\r
+      <method name="IEnumerable`1 Test(B)" attrs="134">\r
+        <size>44</size>\r
+      </method>\r
+      <method name="Void .ctor()" attrs="6278">\r
+        <size>18</size>\r
+      </method>\r
+    </type>\r
+    <type name="B">\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>2</size>\r
+      </method>\r
+      <method name="Void .ctor()" attrs="6278">\r
+        <size>7</size>\r
+      </method>\r
+    </type>\r
+    <type name="A+&lt;Test&gt;c__Iterator0">\r
+      <method name="System.String System.Collections.Generic.IEnumerator&lt;string&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="IEnumerator`1 System.Collections.Generic.IEnumerable&lt;string&gt;.GetEnumerator()" attrs="481">\r
+        <size>52</size>\r
+      </method>\r
+      <method name="Boolean MoveNext()" attrs="486">\r
+        <size>178</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="Void .ctor()" attrs="6278">\r
+        <size>7</size>\r
+      </method>\r
+    </type>\r
+    <type name="A+&lt;Test&gt;c__Iterator0+&lt;Test&gt;c__AnonStorey1">\r
+      <method name="Void .ctor()" attrs="6278">\r
+        <size>7</size>\r
+      </method>\r
+    </type>\r
+    <type name="A+&lt;Test&gt;c__Iterator0+&lt;Test&gt;c__AnonStorey2">\r
+      <method name="Void &lt;&gt;m__0()" attrs="131">\r
+        <size>50</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>\r
     </type>\r
   </test>\r
+  <test name="gtest-optional-25.cs">\r
+    <type name="Usage">\r
+      <method name="Void Main()" attrs="150">\r
+        <size>17</size>\r
+      </method>\r
+      <method name="Void .ctor()" attrs="6278">\r
+        <size>7</size>\r
+      </method>\r
+    </type>\r
+    <type name="Bug">\r
+      <method name="TValue[] MethodWithOptionalParameter[TValue](Int32, TValue[])" attrs="134">\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="gtest-partial-01.cs">\r
     <type name="B`1[U]">\r
       <method name="Void .ctor()" attrs="6278">\r
       </method>\r
     </type>\r
   </test>\r
+  <test name="gtest-partial-03.cs">\r
+    <type name="Variable">\r
+      <method name="Void .ctor()" attrs="6278">\r
+        <size>7</size>\r
+      </method>\r
+    </type>\r
+    <type name="Test`1[T]">\r
+      <method name="Void .ctor(T)" attrs="6278">\r
+        <size>22</size>\r
+      </method>\r
+    </type>\r
+    <type name="CC">\r
+      <method name="Void Main()" attrs="150">\r
+        <size>13</size>\r
+      </method>\r
+      <method name="Void .ctor()" attrs="6278">\r
+        <size>7</size>\r
+      </method>\r
+    </type>\r
+  </test>\r
   <test name="gtest-var-04.cs">\r
     <type name="Test">\r
       <method name="Int32 Main()" attrs="145">\r
       </method>\r
     </type>\r
   </test>\r
+  <test name="test-851.cs">\r
+    <type name="C">\r
+      <method name="Void Main()" attrs="150">\r
+        <size>2</size>\r
+      </method>\r
+      <method name="Void .ctor()" attrs="6278">\r
+        <size>7</size>\r
+      </method>\r
+    </type>\r
+  </test>\r
+  <test name="test-852.cs">\r
+    <type name="Test">\r
+      <method name="Void Main()" attrs="150">\r
+        <size>2</size>\r
+      </method>\r
+      <method name="Void .ctor()" attrs="6278">\r
+        <size>7</size>\r
+      </method>\r
+    </type>\r
+  </test>\r
+  <test name="test-853.cs">\r
+    <type name="Program">\r
+      <method name="Int32 Main()" attrs="145">\r
+        <size>35</size>\r
+      </method>\r
+      <method name="Void .ctor()" attrs="6278">\r
+        <size>7</size>\r
+      </method>\r
+    </type>\r
+  </test>\r
   <test name="test-86.cs">\r
     <type name="T.T">\r
       <method name="Int32 method1(System.Type, Int32)" attrs="145">\r
       </method>\r
     </type>\r
   </test>\r
+  <test name="test-async-39.cs">\r
+    <type name="CompilerBug">\r
+      <method name="Void Main()" attrs="145">\r
+        <size>24</size>\r
+      </method>\r
+      <method name="System.Threading.Tasks.Task`1[System.String] Foo()" 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="CompilerBug+&lt;Foo&gt;c__async0">\r
+      <method name="Void MoveNext()" attrs="486">\r
+        <size>220</size>\r
+      </method>\r
+      <method name="Void SetStateMachine(IAsyncStateMachine)" attrs="486">\r
+        <size>13</size>\r
+      </method>\r
+      <method name="Void &lt;&gt;m__0()" attrs="145">\r
+        <size>2</size>\r
+      </method>\r
+    </type>\r
+  </test>\r
   <test name="test-cls-00.cs">\r
     <type name="CLSCLass_6">\r
       <method name="Void add_Disposed(Delegate)" attrs="2182">\r
index 396eed962bf26ececfd41edaedaa18e3ec821099..a930951268c6bac376249bb4986e525da9c8a1f1 100644 (file)
@@ -1947,7 +1947,7 @@ class MDocUpdater : MDocCommand
                                        (from i in values.Keys
                                         where (c & i) != 0
                                         select typename + "." + values [i])
-                                       .ToArray ());
+                                       .DefaultIfEmpty (v.ToString ()).ToArray ());
                }
                return "(" + GetDocTypeFullName (valueType) + ") " + v.ToString ();
        }
index a67b71d4d8f36ce1edce292d0d37ad431877c9c3..4529c8a399c14e044d29f0081876982979da26de 100644 (file)
@@ -270,24 +270,24 @@ add masterdoc support?
   </xs:element>
 
   <xs:simpleType name="relatedType">
-    <restriction base="string">
+    <xs:restriction base="xs:string">
       <!-- External code/application samples -->
-      <enumeration value="sample"/>
+      <xs:enumeration value="sample"/>
       <!-- e.g. ECMA, OPC, OData, ... specs -->
-      <enumeration value="specification"/>
+      <xs:enumeration value="specification"/>
       <!-- e.g. Apple/Android documentation -->
-      <enumeration value="externalDocumentation" />
+      <xs:enumeration value="externalDocumentation" />
       <!-- e.g. a more in-depth article at docs.xamarin.com -->
-      <enumeration value="article" />
+      <xs:enumeration value="article" />
          <!-- e.g. a small article describing succintly a feature -->
-         <enumeration value="recipe" />
-    </restriction>
+         <xs:enumeration value="recipe" />
+    </xs:restriction>
   </xs:simpleType>
 
   <xs:element name="related">
-    <xs:complexType>
+    <xs:complexType mixed="true">
       <xs:attribute name="type" type="relatedType" />
-      <xs:attribute name="href" type="anyURI" />
+      <xs:attribute name="href" type="xs:anyURI" />
     </xs:complexType>
   </xs:element>
 
@@ -635,6 +635,7 @@ add masterdoc support?
   <xs:element name="returns">
     <xs:complexType mixed="true">
       <xs:choice minOccurs="0" maxOccurs="unbounded">
+        <xs:element ref="c" />
         <xs:element ref="format" />
         <xs:element ref="geq" />
         <xs:element ref="leq" />
@@ -1110,7 +1111,7 @@ add masterdoc support?
         </xs:element>
         <xs:element name="members">
           <xs:complexType>
-            <xs:choice minOccurs="0" maxOccurs="unbounded">>
+            <xs:choice minOccurs="0" maxOccurs="unbounded">
               <xs:element name="member">
                 <xs:complexType>
                   <xs:choice minOccurs="0" maxOccurs="unbounded">
@@ -1127,7 +1128,7 @@ add masterdoc support?
                     <xs:element ref="typeparam" />
                     <xs:element ref="value" />
                   </xs:choice>
-                  <xs:attribute name="name" type="xs:type" />
+                  <xs:attribute name="name" type="xs:string" />
                 </xs:complexType>
               </xs:element>
             </xs:choice>
index c86083d6685f320f3e5aaf1d11cf56c5346963c3..7df387b021439e364954bcfd0453c73a7640b01c 100644 (file)
@@ -28,8 +28,6 @@
 // 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 NET_2_0
-
 using System;
 using System.Collections.Generic;
 using System.Linq;
@@ -1028,5 +1026,3 @@ namespace Mono.XBuild.CommandLine {
                }
        }
 }
-
-#endif
index fd16d14a145ef3903e2d41757730bce958e1de52..0605ae69d0fb42dd1c4615bbb12c35f8b11027a2 100644 (file)
                </Copy>
        </Target>
 
-<!--
-       Not needed at the moment
        <Target Name="_ComputeNonExistentFileProperty" Condition='false'>
                <CreateProperty Value="__NonExistentSubDir__\__NonExistentFile__">
                        <Output TaskParameter="Value" PropertyName="NonExistentFile"/>
                </CreateProperty>
        </Target>
--->
 
        <PropertyGroup>
                <BuildDependsOn>
index ba525cff8c6ca736b6b439469181f5e814ca2164..e306cd304d6d990baf1b4938a91c1d455f013e1e 100644 (file)
                </Copy>
        </Target>
 
-<!--
-       Not needed at the moment
        <Target Name="_ComputeNonExistentFileProperty" Condition='false'>
                <CreateProperty Value="__NonExistentSubDir__\__NonExistentFile__">
                        <Output TaskParameter="Value" PropertyName="NonExistentFile"/>
                </CreateProperty>
        </Target>
--->
 
        <PropertyGroup>
                <BuildDependsOn>
index 702470524ce9bb350d59dbbe4f0f5a25f6e2a200..21188743f65259cbd773b3ab37f2088f751bc00b 100644 (file)
                </Copy>
        </Target>
 
-<!--
-       Not needed at the moment
        <Target Name="_ComputeNonExistentFileProperty" Condition='false'>
                <CreateProperty Value="__NonExistentSubDir__\__NonExistentFile__">
                        <Output TaskParameter="Value" PropertyName="NonExistentFile"/>
                </CreateProperty>
        </Target>
--->
 
        <PropertyGroup>
                <BuildDependsOn>
index 8c3c9981cc17b2461748c3415481add9403d94e2..ba61a124929bcd7aa2a037ffc7ff73699e1c9373 100644 (file)
@@ -1,7 +1,7 @@
 test-local: copy-targets
 
 copy-targets:
-       for p in net_2_0 net_3_5 net_4_0; do \
+       for p in net_2_0 net_3_5 net_4_0 net_4_5; do \
                cp $(XBUILD_DIR)/xbuild/Microsoft.CSharp.targets $(topdir)/class/lib/$$p; \
                cp $(XBUILD_DIR)/xbuild/Microsoft.VisualBasic.targets $(topdir)/class/lib/$$p; \
                cp $(XBUILD_DIR)/xbuild/Microsoft.Silverlight*.targets $(topdir)/class/lib/$$p; \
@@ -9,11 +9,12 @@ copy-targets:
        cp $(XBUILD_DIR)/xbuild/2.0/Microsoft.Common.* $(topdir)/class/lib/net_2_0
        cp $(XBUILD_DIR)/xbuild/3.5/Microsoft.Common.* $(topdir)/class/lib/net_3_5
        cp $(XBUILD_DIR)/xbuild/4.0/Microsoft.Common.* $(topdir)/class/lib/net_4_0
+       cp $(XBUILD_DIR)/xbuild/4.5/Microsoft.Common.* $(topdir)/class/lib/net_4_5
 
 clean-local: clean-target-files
 
 clean-target-files:
-       for p in net_2_0 net_3_5 net_4_0; do \
+       for p in net_2_0 net_3_5 net_4_0 net_4_5; do \
                rm -f $(topdir)/class/lib/$$p/Microsoft.Common.targets; \
                rm -f $(topdir)/class/lib/$$p/Microsoft.CSharp.targets; \
                rm -f $(topdir)/class/lib/$$p/Microsoft.VisualBasic.targets; \
index 449f64f48f210c225d1dc91a2c945f445006d34e..7c9dfe8e92b6c8e9da848327310fb880b581b0d2 100644 (file)
@@ -894,6 +894,7 @@ Mono implementation of ASP.NET, Remoting and Web Services.
 %_prefix/lib/mono/4.5/System.Web.Abstractions.dll
 %_prefix/lib/mono/4.5/System.Web.ApplicationServices.dll
 %_prefix/lib/mono/4.5/System.Web.Http.dll
+%_prefix/lib/mono/4.5/System.Web.Http.SelfHost.dll
 %_prefix/lib/mono/4.5/System.Web.Routing.dll
 %_prefix/lib/mono/4.5/System.Web.Razor.dll
 %_prefix/lib/mono/4.5/System.Web.Services.dll
@@ -919,6 +920,7 @@ Mono implementation of ASP.NET, Remoting and Web Services.
 %_prefix/lib/mono/gac/System.Web.Abstractions
 %_prefix/lib/mono/gac/System.Web.ApplicationServices
 %_prefix/lib/mono/gac/System.Web.Http
+%_prefix/lib/mono/gac/System.Web.Http.SelfHost
 %_prefix/lib/mono/gac/System.Web.Routing
 %_prefix/lib/mono/gac/System.Web.Razor
 %_prefix/lib/mono/gac/System.Web.Services
index 09604162948bf881d6ab2fbcb6a6150bb98cf118..28a91475f51786df82ddc148ab3fda047aadea39 100644 (file)
@@ -1,6 +1,6 @@
 DIST_SUBDIRS = x86 ppc sparc arm s390 s390x alpha hppa amd64 ia64 mips
 
-INCLUDES = $(GLIB_CFLAGS) -I$(top_srcdir)
+AM_CPPFLAGS = $(GLIB_CFLAGS) -I$(top_srcdir)
 
 if INTERP_SUPPORTED
 SUBDIRS = $(arch_target)
index 8e0accf96653101e0d23b80b7d9d23f8cc275a82..86cbcb6bfe1e50798ba868ff9721ea10afc6fc69 100644 (file)
@@ -1,5 +1,5 @@
 
-INCLUDES = $(GLIB_CFLAGS) -I$(top_srcdir)
+AM_CPPFLAGS = $(GLIB_CFLAGS) -I$(top_srcdir)
 
 noinst_LTLIBRARIES = libmonoarch-alpha.la
 
index 54499b5caf2e31be56ecfc90c77a62196fd45ea1..3c728263190b068d699783b5071bbe75e27f2481 100644 (file)
@@ -1,5 +1,5 @@
 
-INCLUDES = $(GLIB_CFLAGS) -I$(top_srcdir)
+AM_CPPFLAGS = $(GLIB_CFLAGS) -I$(top_srcdir)
 
 noinst_LTLIBRARIES = libmonoarch-amd64.la
 
index 180be53d3d8b68e22306939537984d50c965cba7..86784c0f8794b0d2b42a96bfc0c7526820573a80 100644 (file)
@@ -1,5 +1,5 @@
 
-INCLUDES = $(GLIB_CFLAGS) -I$(top_srcdir)
+AM_CPPFLAGS = $(GLIB_CFLAGS) -I$(top_srcdir)
 
 noinst_LTLIBRARIES = libmonoarch-arm.la
 
index 8056f7bccc9de2c9b9b5c6610f691a742745e42e..d0fdb29b8e7795843e4ca584fdf10f01e1381e97 100644 (file)
@@ -160,6 +160,18 @@ enum {
 #define ARM_FSTD(p,freg,base,offset)   \
        ARM_FSTD_COND(p,freg,base,offset,ARMCOND_AL)
 
+#define ARM_FLDMD_COND(p,first_reg,nregs,base,cond)                                                    \
+       ARM_EMIT((p), ARM_DEF_VFP_LSF((cond),ARM_VFP_COPROC_DOUBLE,0,ARMOP_LDR,0,(base),(first_reg),((nregs) * 2) << 2))
+
+#define ARM_FLDMD(p,first_reg,nregs,base)              \
+       ARM_FLDMD_COND(p,first_reg,nregs,base,ARMCOND_AL)
+
+#define ARM_FSTMD_COND(p,first_reg,nregs,base,cond)                                                    \
+       ARM_EMIT((p), ARM_DEF_VFP_LSF((cond),ARM_VFP_COPROC_DOUBLE,0,ARMOP_STR,0,(base),(first_reg),((nregs) * 2) << 2))
+
+#define ARM_FSTMD(p,first_reg,nregs,base)              \
+       ARM_FSTMD_COND(p,first_reg,nregs,base,ARMCOND_AL)
+
 #include "arm_vfpmacros.h"
 
 /* coprocessor register transfer */
index 7e671cd4344b0419f9f8dfd3534187ba2da98041..1d608adaf1e32efc089a2535b0b401aa22e2c821 100644 (file)
@@ -1,5 +1,5 @@
 
-INCLUDES = $(GLIB_CFLAGS) -I$(top_srcdir)
+AM_CPPFLAGS = $(GLIB_CFLAGS) -I$(top_srcdir)
 
 noinst_LTLIBRARIES = libmonoarch-hppa.la
 
index c272d04bac328e7da766ad9adac684b5e2473532..1063365b99bdd075eddc46beb24e5aab6420190e 100644 (file)
@@ -1,5 +1,5 @@
 
-INCLUDES = $(GLIB_CFLAGS) -I$(top_srcdir)
+AM_CPPFLAGS = $(GLIB_CFLAGS) -I$(top_srcdir)
 
 noinst_LTLIBRARIES = libmonoarch-mips.la
 
index b013d210fa45a071992a446d24a7252b56d5b073..a4e2d5d2e7ca8d6e23bb7d7bb34a0a0d0f928d0e 100644 (file)
@@ -1,6 +1,6 @@
 if INTERP_SUPPORTED
 
-INCLUDES = $(GLIB_CFLAGS) -I$(top_srcdir)
+AM_CPPFLAGS = $(GLIB_CFLAGS) -I$(top_srcdir)
 
 noinst_LTLIBRARIES = libmonoarch-ppc.la
 
index 1c62a88c3bf6df4e27178ecad52299c6da5a1f11..d8ebb6f8df29fea1abd54b51a0e06279f29ddc3e 100644 (file)
@@ -1,5 +1,5 @@
 
-INCLUDES = $(GLIB_CFLAGS) -I$(top_srcdir)
+AM_CPPFLAGS = $(GLIB_CFLAGS) -I$(top_srcdir)
 
 noinst_LTLIBRARIES = libmonoarch-s390.la
 
index e7466d948c9f71e9525f34d900fc5c25a4c4611f..ce7f4709744c26896b0170ed19332fe1e3ad1ad7 100644 (file)
@@ -1,5 +1,5 @@
 
-INCLUDES = $(GLIB_CFLAGS) -I$(top_srcdir)
+AM_CPPFLAGS = $(GLIB_CFLAGS) -I$(top_srcdir)
 
 noinst_LTLIBRARIES = libmonoarch-s390x.la
 
index e0f7689ee31fd72d735b9b2cee20348c5ca520a9..a8889040a3c5f18e3dbbb8ea72b27dfed2d0728d 100644 (file)
@@ -1,5 +1,5 @@
 
-INCLUDES = $(GLIB_CFLAGS) -I$(top_srcdir)
+AM_CPPFLAGS = $(GLIB_CFLAGS) -I$(top_srcdir)
 
 noinst_LTLIBRARIES = libmonoarch-sparc.la
 
index ab4c142aa9fb9d046da1ac648458b34239fb6a28..977823705adf9bcf977f924524c39650bf94cf87 100644 (file)
@@ -1,6 +1,6 @@
 if INTERP_SUPPORTED
 
-INCLUDES = $(GLIB_CFLAGS) -I$(top_srcdir)
+AM_CPPFLAGS = $(GLIB_CFLAGS) -I$(top_srcdir)
 
 noinst_LTLIBRARIES = libmonoarch-x86.la
 
index 9c397f4e41bb1c6c689dc5efe2ee8404efc33aaa..477af4641a764914a1d86cef5c7ddbb54af2e174 100644 (file)
@@ -1,11 +1,22 @@
-INCLUDES = $(GLIB_CFLAGS) -I$(top_srcdir)
+AM_CPPFLAGS = $(GLIB_CFLAGS) -I$(top_srcdir)
 
 if HOST_WIN32
 export HOST_CC
 endif
 
 if JIT_SUPPORTED
+if !SHARED_MONO
+static_libs=   \
+       $(top_builddir)/mono/metadata/libmonoruntime-static.la  \
+       $(top_builddir)/mono/io-layer/libwapi.la        \
+       $(top_builddir)/mono/utils/libmonoutils.la \
+       $(GLIB_LIBS) $(LIBICONV) \
+       $(LIBGC_STATIC_LIBS)
+
+runtime_lib=../mini/$(LIBMONO_LA) $(static_libs)
+else
 runtime_lib=../mini/$(LIBMONO_LA)
+endif
 else
 runtime_lib=../interpreter/libmint.la
 endif
index 9ba0cbc2511b5d9dba156a23020ef7f477514841..4cea04452be5d3ff2c4dbe80ed96306b2705895d 100644 (file)
@@ -1,4 +1,4 @@
-INCLUDES =                             \
+AM_CPPFLAGS =                          \
        -I$(top_srcdir)                 \
        $(LIBGC_CPPFLAGS)               \
        $(GLIB_CFLAGS)
index 81b252a56819a14f8d4c19ffbdd4a652ec6df89f..29cec27d5f18f5fe6d74b5187cad09a7249809a0 100644 (file)
@@ -1,7 +1,7 @@
 
 noinst_LTLIBRARIES = libwapi.la
 
-INCLUDES = \
+AM_CPPFLAGS = \
        $(GLIB_CFLAGS)          \
        $(LIBGC_CPPFLAGS)       \
        -DMONO_BINDIR=\""$(bindir)"\"   \
index 8dcd7b0f6e043c3b1c80326921ed3c85ac505a53..3172115648ee4bb8861d0bc801064c322a96cfb1 100644 (file)
@@ -752,7 +752,7 @@ static inline gint32 InterlockedExchangeAdd(volatile gint32 *dest, gint32 add)
 
 static inline gint32 InterlockedCompareExchange(volatile gint32 *dest, gint32 exch, gint32 comp)
 {
-#if defined(__ARM_ARCH_6__) || defined(__ARM_ARCH_7A__) || defined(__ARM_ARCH_7__)
+#if defined(__ARM_ARCH_6__) || defined(__ARM_ARCH_7A__) || defined(__ARM_ARCH_7__) || defined(__ARM_ARCH_7S__)
        gint32 ret, tmp;
        __asm__ __volatile__ (  "1:\n"
                                "dmb\n"
@@ -792,7 +792,7 @@ static inline gint32 InterlockedCompareExchange(volatile gint32 *dest, gint32 ex
 
 static inline gpointer InterlockedCompareExchangePointer(volatile gpointer *dest, gpointer exch, gpointer comp)
 {
-#if defined(__ARM_ARCH_6__) || defined(__ARM_ARCH_7A__) || defined(__ARM_ARCH_7__)
+#if defined(__ARM_ARCH_6__) || defined(__ARM_ARCH_7A__) || defined(__ARM_ARCH_7__) || defined(__ARM_ARCH_7S__)
        gpointer ret, tmp;
        __asm__ __volatile__ (
                                "dmb\n"
@@ -833,7 +833,7 @@ static inline gpointer InterlockedCompareExchangePointer(volatile gpointer *dest
 
 static inline gint32 InterlockedIncrement(volatile gint32 *dest)
 {
-#if defined(__ARM_ARCH_6__) || defined(__ARM_ARCH_7A__) || defined(__ARM_ARCH_7__)
+#if defined(__ARM_ARCH_6__) || defined(__ARM_ARCH_7A__) || defined(__ARM_ARCH_7__) || defined(__ARM_ARCH_7S__)
        gint32 ret, flag;
        __asm__ __volatile__ (
                                "dmb\n"
@@ -869,7 +869,7 @@ static inline gint32 InterlockedIncrement(volatile gint32 *dest)
 
 static inline gint32 InterlockedDecrement(volatile gint32 *dest)
 {
-#if defined(__ARM_ARCH_6__) || defined(__ARM_ARCH_7A__) || defined(__ARM_ARCH_7__)
+#if defined(__ARM_ARCH_6__) || defined(__ARM_ARCH_7A__) || defined(__ARM_ARCH_7__) || defined(__ARM_ARCH_7S__)
        gint32 ret, flag;
        __asm__ __volatile__ (
                                "dmb\n"
@@ -905,7 +905,7 @@ static inline gint32 InterlockedDecrement(volatile gint32 *dest)
 
 static inline gint32 InterlockedExchange(volatile gint32 *dest, gint32 exch)
 {
-#if defined(__ARM_ARCH_6__) || defined(__ARM_ARCH_7A__) || defined(__ARM_ARCH_7__)
+#if defined(__ARM_ARCH_6__) || defined(__ARM_ARCH_7A__) || defined(__ARM_ARCH_7__) || defined(__ARM_ARCH_7S__)
        gint32 ret, flag;
        __asm__ __volatile__ (
                                  "dmb\n"
@@ -932,7 +932,7 @@ static inline gint32 InterlockedExchange(volatile gint32 *dest, gint32 exch)
 
 static inline gpointer InterlockedExchangePointer(volatile gpointer *dest, gpointer exch)
 {
-#if defined(__ARM_ARCH_6__) || defined(__ARM_ARCH_7A__) || defined(__ARM_ARCH_7__)
+#if defined(__ARM_ARCH_6__) || defined(__ARM_ARCH_7A__) || defined(__ARM_ARCH_7__) || defined(__ARM_ARCH_7S__)
        gpointer ret, flag;
        __asm__ __volatile__ (
                                  "dmb\n"
@@ -959,7 +959,7 @@ static inline gpointer InterlockedExchangePointer(volatile gpointer *dest, gpoin
 
 static inline gint32 InterlockedExchangeAdd(volatile gint32 *dest, gint32 add)
 {
-#if defined(__ARM_ARCH_6__) || defined(__ARM_ARCH_7A__) || defined(__ARM_ARCH_7__)
+#if defined(__ARM_ARCH_6__) || defined(__ARM_ARCH_7A__) || defined(__ARM_ARCH_7__) || defined(__ARM_ARCH_7S__)
        gint32 ret, tmp, flag;
        __asm__ __volatile__ (
                                "dmb\n"
index 14973f01f0a68c2ecde781d63d9c469a31fb7d40..54cb3a9c56156388d1c38adeebac70abb8360b88 100644 (file)
@@ -66,7 +66,7 @@ else
 noinst_LTLIBRARIES = $(boehm_libraries) $(sgen_libraries) $(moonlight_libraries)
 endif
 
-INCLUDES = -I$(top_srcdir) -I$(top_srcdir)/mono $(LIBGC_CPPFLAGS) $(GLIB_CFLAGS) -DMONO_BINDIR=\"$(bindir)/\" -DMONO_ASSEMBLIES=\"$(assembliesdir)\" -DMONO_CFG_DIR=\"$(confdir)\"
+AM_CPPFLAGS = -I$(top_srcdir) -I$(top_srcdir)/mono $(LIBGC_CPPFLAGS) $(GLIB_CFLAGS) -DMONO_BINDIR=\"$(bindir)/\" -DMONO_ASSEMBLIES=\"$(assembliesdir)\" -DMONO_CFG_DIR=\"$(confdir)\"
 
 #
 # Make sure any prefix changes are updated in the binaries too.
@@ -228,6 +228,7 @@ libmonoruntime_la_SOURCES = \
        sgen-scan-object.h      \
        sgen-nursery-allocator.c        \
        sgen-hash-table.c       \
+       sgen-hash-table.h       \
        sgen-descriptor.c               \
        sgen-descriptor.h               \
        sgen-alloc.c            \
index 81f64fb94bfd884b391b0288f0d40df3e0acfef3..2907af6d4924abfa77ff292be48f3fa5215d5d9f 100644 (file)
@@ -75,7 +75,7 @@
  * Changes which are already detected at runtime, like the addition
  * of icalls, do not require an increment.
  */
-#define MONO_CORLIB_VERSION 105
+#define MONO_CORLIB_VERSION 107
 
 typedef struct
 {
index 67561c6a0aeb331a4dd0fb085d5bc05514f495ca..0defba28ec3168a287b7855f6b2a85008d379cba 100644 (file)
@@ -206,16 +206,16 @@ mono_gc_base_init (void)
 void
 mono_gc_collect (int generation)
 {
-       MONO_PROBE_GC_BEGIN (generation);
+       MONO_GC_BEGIN (generation);
 
        mono_perfcounters->gc_induced++;
        GC_gcollect ();
        
-       MONO_PROBE_GC_END (generation);
+       MONO_GC_END (generation);
 #if defined(ENABLE_DTRACE) && defined(__sun__)
        /* This works around a dtrace -G problem on Solaris.
           Limit its actual use to when the probe is enabled. */
-       if (MONO_PROBE_GC_END_ENABLED ())
+       if (MONO_GC_END_ENABLED ())
                sleep(0);
 #endif
 }
@@ -412,7 +412,7 @@ on_gc_notification (GCEventType event)
        if (e == MONO_GC_EVENT_START) {
                if (mono_perfcounters)
                        mono_perfcounters->gc_collections0++;
-               mono_stats.major_gc_count ++;
+               gc_stats.major_gc_count ++;
                gc_start_time = mono_100ns_ticks ();
        } else if (e == MONO_GC_EVENT_END) {
                if (mono_perfcounters) {
@@ -423,7 +423,7 @@ on_gc_notification (GCEventType event)
                        mono_perfcounters->gc_reserved_bytes = heap_size;
                        mono_perfcounters->gc_gen0size = heap_size;
                }
-               mono_stats.major_gc_time_usecs += (mono_100ns_ticks () - gc_start_time) / 10;
+               gc_stats.major_gc_time_usecs += (mono_100ns_ticks () - gc_start_time) / 10;
                mono_trace_message (MONO_TRACE_GC, "gc took %d usecs", (mono_100ns_ticks () - gc_start_time) / 10);
        }
        mono_profiler_gc_event (e, 0);
index bc4469196a3fef66884bcf07940f342e80448662..f2dc35ea5de901d831ede5c8809f4774cbd6a083 100644 (file)
@@ -720,10 +720,6 @@ typedef struct {
        gulong generics_sharable_methods;
        gulong generics_unsharable_methods;
        gulong generics_shared_methods;
-       gulong minor_gc_count;
-       gulong major_gc_count;
-       gulong minor_gc_time_usecs;
-       gulong major_gc_time_usecs;
        gboolean enabled;
 } MonoStats;
 
index 0974ba2e8620bccbf6b7d073c2c29db3617a2ca5..2e1437efd453ea835c3f64fc656e444345882d73 100644 (file)
 #include <mono/metadata/threads-types.h>
 #include <mono/utils/gc_wrapper.h>
 
+typedef struct {
+       int minor_gc_count;
+       int major_gc_count;
+       long long minor_gc_time_usecs;
+       long long major_gc_time_usecs;
+} GCStats;
+
 #define mono_domain_finalizers_lock(domain) EnterCriticalSection (&(domain)->finalizable_objects_hash_lock);
 #define mono_domain_finalizers_unlock(domain) LeaveCriticalSection (&(domain)->finalizable_objects_hash_lock);
 
 /* Register a memory area as a conservatively scanned GC root */
-#define MONO_GC_REGISTER_ROOT(x) mono_gc_register_root ((char*)&(x), sizeof(x), NULL)
+#define MONO_GC_REGISTER_ROOT_PINNING(x) mono_gc_register_root ((char*)&(x), sizeof(x), NULL)
 
 #define MONO_GC_UNREGISTER_ROOT(x) mono_gc_deregister_root ((char*)&(x))
 
  * Register a memory location as a root pointing to memory allocated using
  * mono_gc_alloc_fixed (). This includes MonoGHashTable.
  */
-#ifdef HAVE_SGEN_GC
 /* The result of alloc_fixed () is not GC tracked memory */
-#define MONO_GC_REGISTER_ROOT_FIXED(x)
-#else
-#define MONO_GC_REGISTER_ROOT_FIXED(x) MONO_GC_REGISTER_ROOT ((x))
-#endif
+#define MONO_GC_REGISTER_ROOT_FIXED(x) do { \
+       if (!mono_gc_is_moving ())                              \
+               MONO_GC_REGISTER_ROOT_PINNING ((x)); \
+       } while (0)
 
 /*
  * Return a GC descriptor for an array containing N pointers to memory allocated
  * by mono_gc_alloc_fixed ().
  */
-#ifdef HAVE_SGEN_GC
-/* The result of alloc_fixed () is not GC tracked memory */
-#define MONO_GC_ROOT_DESCR_FOR_FIXED(n) mono_gc_make_root_descr_all_refs (0)
-#else
-/* The result of alloc_fixed () is GC tracked memory */
-#define MONO_GC_ROOT_DESCR_FOR_FIXED(n) NULL
-#endif
+/* For SGEN, the result of alloc_fixed () is not GC tracked memory */
+#define MONO_GC_ROOT_DESCR_FOR_FIXED(n) (mono_gc_is_moving () ? mono_gc_make_root_descr_all_refs (0) : NULL)
 
 /* Register a memory location holding a single object reference as a GC root */
 #define MONO_GC_REGISTER_ROOT_SINGLE(x) do { \
  * This is used for fields which point to objects which are kept alive by other references
  * when using Boehm.
  */
-#ifdef HAVE_SGEN_GC
 #define MONO_GC_REGISTER_ROOT_IF_MOVING(x) do { \
+       if (mono_gc_is_moving ()) \
                MONO_GC_REGISTER_ROOT_SINGLE(x);                \
 } while (0)
 
 #define MONO_GC_UNREGISTER_ROOT_IF_MOVING(x) do { \
-       MONO_GC_UNREGISTER_ROOT (x); \
+       if (mono_gc_is_moving ()) \
+               MONO_GC_UNREGISTER_ROOT (x);                    \
 } while (0)
-#else
-#define MONO_GC_REGISTER_ROOT_IF_MOVING(x)
-#define MONO_GC_UNREGISTER_ROOT_IF_MOVING(x)
-#endif
 
 /* useful until we keep track of gc-references in corlib etc. */
-#ifdef HAVE_SGEN_GC
-#define IS_GC_REFERENCE(t) FALSE
-#else
-#define IS_GC_REFERENCE(t) ((t)->type == MONO_TYPE_U && class->image == mono_defaults.corlib)
-#endif
+#define IS_GC_REFERENCE(t) (mono_gc_is_moving () ? FALSE : ((t)->type == MONO_TYPE_U && class->image == mono_defaults.corlib))
+
+extern GCStats gc_stats MONO_INTERNAL;
 
 void   mono_object_register_finalizer               (MonoObject  *obj) MONO_INTERNAL;
 void   ves_icall_System_GC_InternalCollect          (int          generation) MONO_INTERNAL;
@@ -267,7 +263,7 @@ typedef struct {
         * by attach_func. This might called with GC locks held and the word stopped,
         * so it shouldn't do any synchronization etc.
         */
-       void (*thread_suspend_func) (gpointer user_data, void *sigcontext);
+       void (*thread_suspend_func) (gpointer user_data, void *sigcontext, MonoContext *ctx);
        /* 
         * Function called to mark from thread stacks. user_data is the data returned 
         * by attach_func. This is called twice, with the word stopped:
index 5939138aeb292884a16d5b5e10f7b3af3ecd795f..f0b98183a5a2327d2a44f85b8057495ed7a0a867 100644 (file)
@@ -33,6 +33,7 @@
 #include <mono/metadata/console-io.h>
 #include <mono/utils/mono-semaphore.h>
 #include <mono/utils/mono-memory-model.h>
+#include <mono/utils/mono-counters.h>
 
 #ifndef HOST_WIN32
 #include <pthread.h>
@@ -76,6 +77,8 @@ static HANDLE pending_done_event;
 static HANDLE shutdown_event;
 #endif
 
+GCStats gc_stats;
+
 static void
 add_thread_to_finalize (MonoInternalThread *thread)
 {
@@ -1143,6 +1146,11 @@ mono_gc_init (void)
        MONO_GC_REGISTER_ROOT_FIXED (gc_handles [HANDLE_NORMAL].entries);
        MONO_GC_REGISTER_ROOT_FIXED (gc_handles [HANDLE_PINNED].entries);
 
+       mono_counters_register ("Minor GC collections", MONO_COUNTER_GC | MONO_COUNTER_INT, &gc_stats.minor_gc_count);
+       mono_counters_register ("Major GC collections", MONO_COUNTER_GC | MONO_COUNTER_INT, &gc_stats.major_gc_count);
+       mono_counters_register ("Minor GC time", MONO_COUNTER_GC | MONO_COUNTER_TIME_INTERVAL, &gc_stats.minor_gc_time_usecs);
+       mono_counters_register ("Major GC time", MONO_COUNTER_GC | MONO_COUNTER_TIME_INTERVAL, &gc_stats.major_gc_time_usecs);
+
        mono_gc_base_init ();
 
        if (mono_gc_is_disabled ()) {
@@ -1329,9 +1337,19 @@ mono_gc_parse_environment_string_extract_number (const char *str, glong *out)
                return FALSE;
 
        if (is_suffix) {
+               gulong unshifted;
+
+               if (val < 0)    /* negative numbers cannot be suffixed */
+                       return FALSE;
                if (*(endptr + 1)) /* Invalid string. */
                        return FALSE;
+
+               unshifted = (gulong)val;
                val <<= shift;
+               if (val < 0)    /* overflow */
+                       return FALSE;
+               if (((gulong)val >> shift) != unshifted) /* value too large */
+                       return FALSE;
        }
 
        *out = val;
index 48328cd8d65fa01c91eaa8ca382adcf16c1274e3..bd88fcc3c3e021cf1f0697ff49aaf0dd07706ca5 100644 (file)
@@ -447,7 +447,7 @@ parse_unmanaged_function_pointer_attr (MonoClass *klass, MonoMethodPInvoke *piin
                 * construct it.
                 */
                cinfo = mono_custom_attrs_from_class (klass);
-               if (cinfo) {
+               if (cinfo && !mono_runtime_get_no_exec ()) {
                        attr = (MonoReflectionUnmanagedFunctionPointerAttribute*)mono_custom_attrs_get_attr (cinfo, UnmanagedFunctionPointerAttribute);
                        if (attr) {
                                piinfo->piflags = (attr->call_conv << 8) | (attr->charset ? (attr->charset - 1) * 2 : 1) | attr->set_last_error;
@@ -6129,15 +6129,12 @@ emit_marshal_string (EmitMarshalContext *m, int argnum, MonoType *t,
 
                if (conv == -1) {
                        char *msg = g_strdup_printf ("string marshalling conversion %d not implemented", encoding);
-                       MonoException *exc = mono_get_exception_not_implemented (msg);
-                       g_warning ("%s", msg);
-                       g_free (msg);
-                       mono_raise_exception (exc);
-               }
-               else
+                       mono_mb_emit_exception_marshal_directive (mb, msg);
+               } else {
                        mono_mb_emit_icall (mb, conv_to_icall (conv));
 
-               mono_mb_emit_stloc (mb, conv_arg);
+                       mono_mb_emit_stloc (mb, conv_arg);
+               }
                break;
 
        case MARSHAL_ACTION_CONV_OUT:
@@ -6156,6 +6153,12 @@ emit_marshal_string (EmitMarshalContext *m, int argnum, MonoType *t,
                                g_assert (m);
                        }
 
+                       if (!t->byref) {
+                               char *msg = g_strdup_printf ("VBByRefStr marshalling requires a ref parameter.", encoding);
+                               mono_mb_emit_exception_marshal_directive (mb, msg);
+                               break;
+                       }
+
                        /* 
                         * Have to allocate a new string with the same length as the original, and
                         * copy the contents of the buffer pointed to by CONV_ARG into it.
@@ -6538,20 +6541,17 @@ emit_marshal_object (EmitMarshalContext *m, int argnum, MonoType *t,
                        if (t->byref && !t->attrs & PARAM_ATTRIBUTE_IN && t->attrs & PARAM_ATTRIBUTE_OUT)
                                break;
 
+                       if (conv == -1) {
+                               char *msg = g_strdup_printf ("stringbuilder marshalling conversion %d not implemented", encoding);
+                               mono_mb_emit_exception_marshal_directive (mb, msg);
+                               break;
+                       }
+
                        mono_mb_emit_ldarg (mb, argnum);
                        if (t->byref)
                                mono_mb_emit_byte (mb, CEE_LDIND_I);
 
-                       if (conv != -1)
-                               mono_mb_emit_icall (mb, conv_to_icall (conv));
-                       else {
-                               char *msg = g_strdup_printf ("stringbuilder marshalling conversion %d not implemented", encoding);
-                               MonoException *exc = mono_get_exception_not_implemented (msg);
-                               g_warning ("%s", msg);
-                               g_free (msg);
-                               mono_raise_exception (exc);
-                       }
-
+                       mono_mb_emit_icall (mb, conv_to_icall (conv));
                        mono_mb_emit_stloc (mb, conv_arg);
                } else if (klass->blittable) {
                        mono_mb_emit_byte (mb, CEE_LDNULL);
@@ -7150,6 +7150,12 @@ emit_marshal_array (EmitMarshalContext *m, int argnum, MonoType *t,
                        else
                                conv = -1;
 
+                       if (is_string && conv == -1) {
+                               char *msg = g_strdup_printf ("string/stringbuilder marshalling conversion %d not implemented", encoding);
+                               mono_mb_emit_exception_marshal_directive (mb, msg);
+                               break;
+                       }
+
                        src_var = mono_mb_add_local (mb, &mono_defaults.object_class->byval_arg);
                        mono_mb_emit_ldarg (mb, argnum);
                        if (t->byref)
@@ -7162,16 +7168,6 @@ emit_marshal_array (EmitMarshalContext *m, int argnum, MonoType *t,
                        mono_mb_emit_ldloc (mb, src_var);
                        label1 = mono_mb_emit_branch (mb, CEE_BRFALSE);
 
-                       if (is_string) {
-                               if (conv == -1) {
-                                       char *msg = g_strdup_printf ("string/stringbuilder marshalling conversion %d not implemented", encoding);
-                                       MonoException *exc = mono_get_exception_not_implemented (msg);
-                                       g_warning ("%s", msg);
-                                       g_free (msg);
-                                       mono_raise_exception (exc);
-                               }
-                       }
-
                        if (is_string)
                                esize = sizeof (gpointer);
                        else if (eklass == mono_defaults.char_class) /*can't call mono_marshal_type_size since it causes all sorts of asserts*/
@@ -8070,10 +8066,6 @@ emit_marshal (EmitMarshalContext *m, int argnum, MonoType *t,
        /* Ensure that we have marshalling info for this param */
        mono_marshal_load_type_info (mono_class_from_mono_type (t));
 
-#ifdef DISABLE_JIT
-       /* Not JIT support, no need to generate correct IL */
-       return conv_arg;
-#else
        if (spec && spec->native == MONO_NATIVE_CUSTOM)
                return emit_marshal_custom (m, argnum, t, spec, conv_arg, conv_arg_type, action);
 
@@ -8138,7 +8130,6 @@ emit_marshal (EmitMarshalContext *m, int argnum, MonoType *t,
                else
                        return emit_marshal_object (m, argnum, t, spec, conv_arg, conv_arg_type, action);
        }
-#endif
 
        return conv_arg;
 }
index 5eaed077e273b45e61763b37cd60993ab1df5332..e8a1688389926bd4e97da9673676f8c3621122c6 100644 (file)
@@ -4287,12 +4287,7 @@ mono_type_size (MonoType *t, int *align)
                return 4;
        case MONO_TYPE_I8:
        case MONO_TYPE_U8:
-#if defined(__APPLE__) && SIZEOF_VOID_P==4
-               /* xcode 4.3 llvm-gcc bug */
-               *align = 4;
-#else          
                *align = abi__alignof__(gint64);
-#endif
                return 8;               
        case MONO_TYPE_R8:
                *align = abi__alignof__(double);
index 3a455158cd5821fd152e917c532869885968c7ee..0d2f459899574081a143cba19145b7ad0ab3bb83 100644 (file)
@@ -376,8 +376,6 @@ struct _MonoInternalThread {
        volatile int lock_thread_id; /* to be used as the pre-shifted thread id in thin locks. Used for appdomain_ref push/pop */
        HANDLE      handle;
        MonoArray  *cached_culture_info;
-       gpointer    unused1;
-       MonoBoolean threadpool_thread;
        gunichar2  *name;
        guint32     name_len;
        guint32     state;
@@ -390,7 +388,10 @@ struct _MonoInternalThread {
        gpointer jit_data;
        void *thread_info; /*This is MonoThreadInfo*, but to simplify dependencies, let's make it a void* here. */
        MonoAppContext *current_appcontext;
-       int stack_size;
+       MonoException *pending_exception;
+       MonoThread *root_domain_thread;
+       MonoObject *_serialized_principal;
+       int _serialized_principal_version;
        gpointer appdomain_refs;
        /* This is modified using atomic ops, so keep it a gint32 */
        gint32 interruption_requested;
@@ -398,25 +399,30 @@ struct _MonoInternalThread {
        gpointer suspended_event;
        gpointer resume_event;
        CRITICAL_SECTION *synch_cs;
+       MonoBoolean threadpool_thread;
        MonoBoolean thread_dump_requested;
-       gpointer end_stack; /* This is only used when running in the debugger. */
        MonoBoolean thread_interrupt_requested;
+       gpointer end_stack; /* This is only used when running in the debugger. */
+       int stack_size;
        guint8  apartment_state;
        gint32 critical_region_level;
-       guint32 unused0;        
+       gint32 managed_id;
+       guint32 small_id;
        MonoThreadManageCallback manage_callback;
-       MonoException *pending_exception;
-       MonoThread *root_domain_thread;
        gpointer interrupt_on_stop;
        gsize    flags;
        gpointer android_tid;
        gpointer thread_pinning_ref;
-       gint32 managed_id;
        gint32 ignore_next_signal;
        /* 
         * These fields are used to avoid having to increment corlib versions
-        * when a new field is added to the unmanaged MonoThread structure.
+        * when a new field is added to this structure.
+        * Please synchronize any changes with InternalThread in Thread.cs, i.e. add the
+        * same field there.
         */
+       gpointer unused0;
+       gpointer unused1;
+       gpointer unused2;
 };
 
 struct _MonoThread {
index 04dc219207dc56c3201247d0b77b8e8853957f5c..dde02de811f53e32f37ab37112de72b33539641e 100644 (file)
@@ -1999,21 +1999,23 @@ mono_class_create_runtime_vtable (MonoDomain *domain, MonoClass *class, gboolean
                                gsize default_bitmap [4] = {0};
                                gsize *bitmap;
                                int max_set = 0;
+                               int numbits;
                                MonoClass *fclass;
                                if (mono_type_is_reference (field->type)) {
                                        default_bitmap [0] = 1;
-                                       max_set = 1;
+                                       numbits = 1;
                                        bitmap = default_bitmap;
                                } else if (mono_type_is_struct (field->type)) {
                                        fclass = mono_class_from_mono_type (field->type);
                                        bitmap = compute_class_bitmap (fclass, default_bitmap, sizeof (default_bitmap) * 8, 0, &max_set, FALSE);
+                                       numbits = max_set + 1;
                                } else {
                                        default_bitmap [0] = 0;
-                                       max_set = 0;
+                                       numbits = 0;
                                        bitmap = default_bitmap;
                                }
                                size = mono_type_size (field->type, &align);
-                               offset = mono_alloc_special_static_data (special_static, size, align, (uintptr_t*)bitmap, max_set);
+                               offset = mono_alloc_special_static_data (special_static, size, align, (uintptr_t*)bitmap, numbits);
                                if (!domain->special_static_fields)
                                        domain->special_static_fields = g_hash_table_new (NULL, NULL);
                                g_hash_table_insert (domain->special_static_fields, field, GUINT_TO_POINTER (offset));
@@ -4944,7 +4946,7 @@ mono_string_new_len (MonoDomain *domain, const char *text, guint length)
        guint16 *ut;
        glong items_written;
 
-       ut = g_utf8_to_utf16 (text, length, NULL, &items_written, &error);
+       ut = g_utf8_to_utf16_with_nuls (text, length, NULL, &items_written, &error);
 
        if (!error)
                o = mono_string_new_utf16 (domain, ut, items_written);
index 86095e5d0427fdb2da4b9b22d8f8835c86c747c6..ebd240d7a840b3a5e7a504a78bdd38eb7a998fb5 100644 (file)
@@ -117,6 +117,8 @@ alloc_degraded (MonoVTable *vtable, size_t size, gboolean for_mature)
        static int last_major_gc_warned = -1;
        static int num_degraded = 0;
 
+       void *p;
+
        if (!for_mature) {
                if (last_major_gc_warned < stat_major_gcs) {
                        ++num_degraded;
@@ -131,7 +133,16 @@ alloc_degraded (MonoVTable *vtable, size_t size, gboolean for_mature)
 
        sgen_ensure_free_space (size);
 
-       return major_collector.alloc_degraded (vtable, size);
+       p = major_collector.alloc_degraded (vtable, size);
+
+       if (for_mature) {
+               MONO_GC_MAJOR_OBJ_ALLOC_MATURE ((mword)p, size, vtable->klass->name_space, vtable->klass->name);
+       } else {
+               binary_protocol_alloc_degraded (p, vtable, size);
+               MONO_GC_MAJOR_OBJ_ALLOC_DEGRADED ((mword)p, size, vtable->klass->name_space, vtable->klass->name);
+       }
+
+       return p;
 }
 
 /*
@@ -209,6 +220,8 @@ mono_gc_alloc_obj_nolock (MonoVTable *vtable, size_t size)
 
                        DEBUG (6, fprintf (gc_debug_file, "Allocated object %p, vtable: %p (%s), size: %zd\n", p, vtable, vtable->klass->name, size));
                        binary_protocol_alloc (p , vtable, size);
+                       if (G_UNLIKELY (MONO_GC_NURSERY_OBJ_ALLOC_ENABLED ()))
+                               MONO_GC_NURSERY_OBJ_ALLOC ((mword)p, size, vtable->klass->name_space, vtable->klass->name);
                        g_assert (*p == NULL);
                        mono_atomic_store_seq (p, vtable);
 
@@ -239,11 +252,8 @@ mono_gc_alloc_obj_nolock (MonoVTable *vtable, size_t size)
                        /* when running in degraded mode, we continue allocing that way
                         * for a while, to decrease the number of useless nursery collections.
                         */
-                       if (degraded_mode && degraded_mode < DEFAULT_NURSERY_SIZE) {
-                               p = alloc_degraded (vtable, size, FALSE);
-                               binary_protocol_alloc_degraded (p, vtable, size);
-                               return p;
-                       }
+                       if (degraded_mode && degraded_mode < DEFAULT_NURSERY_SIZE)
+                               return alloc_degraded (vtable, size, FALSE);
 
                        available_in_tlab = TLAB_REAL_END - TLAB_NEXT;
                        if (size > tlab_size || available_in_tlab > SGEN_MAX_NURSERY_WASTE) {
@@ -252,13 +262,10 @@ mono_gc_alloc_obj_nolock (MonoVTable *vtable, size_t size)
                                        p = sgen_nursery_alloc (size);
                                        if (!p) {
                                                sgen_ensure_free_space (size);
-                                               if (degraded_mode) {
-                                                       p = alloc_degraded (vtable, size, FALSE);
-                                                       binary_protocol_alloc_degraded (p, vtable, size);
-                                                       return p;
-                                               } else {
+                                               if (degraded_mode)
+                                                       return alloc_degraded (vtable, size, FALSE);
+                                               else
                                                        p = sgen_nursery_alloc (size);
-                                               }
                                        }
                                } while (!p);
                                if (!p) {
@@ -279,13 +286,10 @@ mono_gc_alloc_obj_nolock (MonoVTable *vtable, size_t size)
                                        p = sgen_nursery_alloc_range (tlab_size, size, &alloc_size);
                                        if (!p) {
                                                sgen_ensure_free_space (tlab_size);
-                                               if (degraded_mode) {
-                                                       p = alloc_degraded (vtable, size, FALSE);
-                                                       binary_protocol_alloc_degraded (p, vtable, size);
-                                                       return p;
-                                               } else {
+                                               if (degraded_mode)
+                                                       return alloc_degraded (vtable, size, FALSE);
+                                               else
                                                        p = sgen_nursery_alloc_range (tlab_size, size, &alloc_size);
-                                               }               
                                        }
                                } while (!p);
                                        
@@ -323,6 +327,12 @@ mono_gc_alloc_obj_nolock (MonoVTable *vtable, size_t size)
        if (G_LIKELY (p)) {
                DEBUG (6, fprintf (gc_debug_file, "Allocated object %p, vtable: %p (%s), size: %zd\n", p, vtable, vtable->klass->name, size));
                binary_protocol_alloc (p, vtable, size);
+               if (G_UNLIKELY (MONO_GC_MAJOR_OBJ_ALLOC_LARGE_ENABLED ()|| MONO_GC_NURSERY_OBJ_ALLOC_ENABLED ())) {
+                       if (size > SGEN_MAX_SMALL_OBJ_SIZE)
+                               MONO_GC_MAJOR_OBJ_ALLOC_LARGE ((mword)p, size, vtable->klass->name_space, vtable->klass->name);
+                       else
+                               MONO_GC_NURSERY_OBJ_ALLOC ((mword)p, size, vtable->klass->name_space, vtable->klass->name);
+               }
                mono_atomic_store_seq (p, vtable);
        }
 
@@ -399,6 +409,8 @@ mono_gc_try_alloc_obj_nolock (MonoVTable *vtable, size_t size)
 
                        if (nursery_clear_policy == CLEAR_AT_TLAB_CREATION)
                                memset (new_next, 0, alloc_size);
+
+                       MONO_GC_NURSERY_TLAB_ALLOC ((mword)new_next, alloc_size);
                }
        }
 
@@ -407,6 +419,8 @@ mono_gc_try_alloc_obj_nolock (MonoVTable *vtable, size_t size)
 
        DEBUG (6, fprintf (gc_debug_file, "Allocated object %p, vtable: %p (%s), size: %zd\n", p, vtable, vtable->klass->name, size));
        binary_protocol_alloc (p, vtable, size);
+       if (G_UNLIKELY (MONO_GC_NURSERY_OBJ_ALLOC_ENABLED ()))
+               MONO_GC_NURSERY_OBJ_ALLOC ((mword)p, size, vtable->klass->name_space, vtable->klass->name);
        g_assert (*p == NULL); /* FIXME disable this in non debug builds */
 
        mono_atomic_store_seq (p, vtable);
@@ -560,6 +574,10 @@ mono_gc_alloc_pinned_obj (MonoVTable *vtable, size_t size)
        }
        if (G_LIKELY (p)) {
                DEBUG (6, fprintf (gc_debug_file, "Allocated pinned object %p, vtable: %p (%s), size: %zd\n", p, vtable, vtable->klass->name, size));
+               if (size > SGEN_MAX_SMALL_OBJ_SIZE)
+                       MONO_GC_MAJOR_OBJ_ALLOC_LARGE ((mword)p, size, vtable->klass->name_space, vtable->klass->name);
+               else
+                       MONO_GC_MAJOR_OBJ_ALLOC_PINNED ((mword)p, size, vtable->klass->name_space, vtable->klass->name);
                binary_protocol_alloc_pinned (p, vtable, size);
                mono_atomic_store_seq (p, vtable);
        }
@@ -1002,6 +1020,17 @@ sgen_is_managed_allocator (MonoMethod *method)
        return FALSE;
 }
 
+gboolean
+sgen_has_managed_allocator (void)
+{
+       int i;
+
+       for (i = 0; i < ATYPE_NUM; ++i)
+               if (alloc_method_cache [i])
+                       return TRUE;
+       return FALSE;
+}      
+
 #ifdef HEAVY_STATISTICS
 void
 sgen_alloc_init_heavy_stats (void)
index 91b00436de524519a972ccfc6b8899acfe6fda38..a4214a53f34ca8ad46e008aa70b774a5b280bd7d 100644 (file)
@@ -45,6 +45,7 @@
 
 #include "sgen-gc.h"
 #include "sgen-bridge.h"
+#include "sgen-hash-table.h"
 #include "utils/mono-logger-internal.h"
 #include "utils/mono-time.h"
 
@@ -107,7 +108,7 @@ dyn_array_ensure_capacity (DynArray *da, int capacity)
        while (capacity > da->capacity)
                da->capacity *= 2;
 
-       new_data = sgen_alloc_internal_dynamic (da->elem_size * da->capacity, INTERNAL_MEM_BRIDGE_DATA);
+       new_data = sgen_alloc_internal_dynamic (da->elem_size * da->capacity, INTERNAL_MEM_BRIDGE_DATA, TRUE);
        memcpy (new_data, da->data, da->elem_size * da->size);
        sgen_free_internal_dynamic (da->data, da->elem_size * old_capacity, INTERNAL_MEM_BRIDGE_DATA);
        da->data = new_data;
@@ -276,6 +277,20 @@ static MonoGCBridgeCallbacks bridge_callbacks;
 
 static int current_time;
 
+gboolean bridge_processing_in_progress = FALSE;
+
+void
+mono_gc_wait_for_bridge_processing (void)
+{
+       if (!bridge_processing_in_progress)
+               return;
+
+       mono_trace (G_LOG_LEVEL_INFO, MONO_TRACE_GC, "GC_BRIDGE waiting for bridge processing to finish");
+
+       sgen_gc_lock ();
+       sgen_gc_unlock ();
+}
+
 void
 mono_gc_register_bridge_callbacks (MonoGCBridgeCallbacks *callbacks)
 {
@@ -539,6 +554,13 @@ sgen_bridge_processing_stw_step (void)
        if (!registered_bridges.size)
                return;
 
+       /*
+        * bridge_processing_in_progress must be set with the world
+        * stopped.  If not there would be race conditions.
+        */
+       g_assert (!bridge_processing_in_progress);
+       bridge_processing_in_progress = TRUE;
+
        SGEN_TV_GETTIME (btv);
 
        /* first DFS pass */
@@ -554,8 +576,18 @@ sgen_bridge_processing_stw_step (void)
        step_2 = SGEN_TV_ELAPSED (btv, atv);
 }
 
+static mono_bool
+is_bridge_object_alive (MonoObject *obj, void *data)
+{
+       SgenHashTable *table = data;
+       unsigned char *value = sgen_hash_table_lookup (table, obj);
+       if (!value)
+               return TRUE;
+       return *value;
+}
+
 void
-sgen_bridge_processing_finish (void)
+sgen_bridge_processing_finish (int generation)
 {
        int i, j;
        int num_sccs, num_xrefs;
@@ -567,17 +599,20 @@ sgen_bridge_processing_finish (void)
        HashEntry **all_entries;
        MonoGCBridgeSCC **api_sccs;
        MonoGCBridgeXRef *api_xrefs;
+       SgenHashTable alive_hash = SGEN_HASH_TABLE_INIT (INTERNAL_MEM_BRIDGE_DATA, INTERNAL_MEM_BRIDGE_DATA, 1, mono_aligned_addr_hash, NULL);
        SGEN_TV_DECLARE (atv);
        SGEN_TV_DECLARE (btv);
 
        if (!registered_bridges.size)
                return;
 
+       g_assert (bridge_processing_in_progress);
+
        SGEN_TV_GETTIME (atv);
 
        /* alloc and fill array of all entries */
 
-       all_entries = sgen_alloc_internal_dynamic (sizeof (HashEntry*) * hash_table.num_entries, INTERNAL_MEM_BRIDGE_DATA);
+       all_entries = sgen_alloc_internal_dynamic (sizeof (HashEntry*) * hash_table.num_entries, INTERNAL_MEM_BRIDGE_DATA, TRUE);
 
        j = 0;
        SGEN_HASH_TABLE_FOREACH (&hash_table, obj, entry) {
@@ -638,7 +673,7 @@ sgen_bridge_processing_finish (void)
                max_sccs_links = MAX (max_sccs_links, scc->xrefs.size);
        }
 
-       api_sccs = sgen_alloc_internal_dynamic (sizeof (MonoGCBridgeSCC*) * num_sccs, INTERNAL_MEM_BRIDGE_DATA);
+       api_sccs = sgen_alloc_internal_dynamic (sizeof (MonoGCBridgeSCC*) * num_sccs, INTERNAL_MEM_BRIDGE_DATA, TRUE);
        num_xrefs = 0;
        j = 0;
        for (i = 0; i < sccs.size; ++i) {
@@ -646,7 +681,8 @@ sgen_bridge_processing_finish (void)
                if (!scc->num_bridge_entries)
                        continue;
 
-               api_sccs [j] = sgen_alloc_internal_dynamic (sizeof (MonoGCBridgeSCC) + sizeof (MonoObject*) * scc->num_bridge_entries, INTERNAL_MEM_BRIDGE_DATA);
+               api_sccs [j] = sgen_alloc_internal_dynamic (sizeof (MonoGCBridgeSCC) + sizeof (MonoObject*) * scc->num_bridge_entries, INTERNAL_MEM_BRIDGE_DATA, TRUE);
+               api_sccs [j]->is_alive = FALSE;
                api_sccs [j]->num_objs = scc->num_bridge_entries;
                scc->num_bridge_entries = 0;
                scc->api_index = j++;
@@ -661,7 +697,7 @@ sgen_bridge_processing_finish (void)
                }
        } SGEN_HASH_TABLE_FOREACH_END;
 
-       api_xrefs = sgen_alloc_internal_dynamic (sizeof (MonoGCBridgeXRef) * num_xrefs, INTERNAL_MEM_BRIDGE_DATA);
+       api_xrefs = sgen_alloc_internal_dynamic (sizeof (MonoGCBridgeXRef) * num_xrefs, INTERNAL_MEM_BRIDGE_DATA, TRUE);
        j = 0;
        for (i = 0; i < sccs.size; ++i) {
                int k;
@@ -714,17 +750,29 @@ sgen_bridge_processing_finish (void)
 
        bridge_callbacks.cross_references (num_sccs, api_sccs, num_xrefs, api_xrefs);
 
-/*Release for finalization those objects we no longer care. */
+       /* Release for finalization those objects we no longer care. */
        SGEN_TV_GETTIME (btv);
        step_7 = SGEN_TV_ELAPSED (atv, btv);
 
        for (i = 0; i < num_sccs; ++i) {
-               if (!api_sccs [i]->objs [0])
-                       continue;
-               for (j = 0; j < api_sccs [i]->num_objs; ++j)
-                       sgen_mark_bridge_object (api_sccs [i]->objs [j]);
+               unsigned char alive = api_sccs [i]->is_alive ? 1 : 0;
+               for (j = 0; j < api_sccs [i]->num_objs; ++j) {
+                       /* Build hash table for nulling weak links. */
+                       sgen_hash_table_replace (&alive_hash, api_sccs [i]->objs [j], &alive, NULL);
+
+                       /* Release for finalization those objects we no longer care. */
+                       if (!api_sccs [i]->is_alive)
+                               sgen_mark_bridge_object (api_sccs [i]->objs [j]);
+               }
        }
 
+       /* Null weak links to dead objects. */
+       sgen_null_links_with_predicate (GENERATION_NURSERY, is_bridge_object_alive, &alive_hash);
+       if (generation == GENERATION_OLD)
+               sgen_null_links_with_predicate (GENERATION_OLD, is_bridge_object_alive, &alive_hash);
+
+       sgen_hash_table_clean (&alive_hash);
+
        /* free callback data */
 
        for (i = 0; i < num_sccs; ++i) {
@@ -753,6 +801,8 @@ sgen_bridge_processing_finish (void)
                dsf1_passes, dsf2_passes);
 
        step_1 = 0; /* We must cleanup since this value is used as an accumulator. */
+
+       bridge_processing_in_progress = FALSE;
 }
 
 static const char *bridge_class;
index 3fff4b7af73dc5fe60a564cada2d5a7ad95e1b08..787418b7582de0f1c41031fb8a6fff37e6057365 100644 (file)
 MONO_BEGIN_DECLS
 
 enum {
-       SGEN_BRIDGE_VERSION = 2
+       SGEN_BRIDGE_VERSION = 3
 };
        
 typedef struct {
+       mono_bool is_alive;     /* to be set by the cross reference callback */
        int num_objs;
        MonoObject *objs [MONO_ZERO_LEN_ARRAY];
 } MonoGCBridgeSCC;
@@ -51,6 +52,8 @@ typedef struct {
 
 void mono_gc_register_bridge_callbacks (MonoGCBridgeCallbacks *callbacks);
 
+void mono_gc_wait_for_bridge_processing (void);
+
 MONO_END_DECLS
 
 #endif
index 971058f0cb267ce422fef37d468fdfcc8f5cacfb..4fad8b6678afb2e45404160fd6ecdcfc9b653e7d 100644 (file)
@@ -657,10 +657,10 @@ sgen_card_tables_collect_stats (gboolean begin)
 void
 sgen_card_table_init (SgenRemeberedSet *remset)
 {
-       sgen_cardtable = sgen_alloc_os_memory (CARD_COUNT_IN_BYTES, TRUE);
+       sgen_cardtable = sgen_alloc_os_memory (CARD_COUNT_IN_BYTES, SGEN_ALLOC_INTERNAL | SGEN_ALLOC_ACTIVATE, "card table");
 
 #ifdef SGEN_HAVE_OVERLAPPING_CARDS
-       sgen_shadow_cardtable = sgen_alloc_os_memory (CARD_COUNT_IN_BYTES, TRUE);
+       sgen_shadow_cardtable = sgen_alloc_os_memory (CARD_COUNT_IN_BYTES, SGEN_ALLOC_INTERNAL | SGEN_ALLOC_ACTIVATE, "shadow card table");
 #endif
 
 #ifdef HEAVY_STATISTICS
index 767be65fc539ac71218aa53fc724e203e3aa7505..c1404df194360413fae4fdea5a88c38c6ff19cdc 100644 (file)
@@ -44,7 +44,13 @@ par_copy_object_no_checks (char *destination, MonoVTable *vt, void *obj, mword o
        DEBUG (9, g_assert (vt->klass->inited));
        DEBUG (9, fprintf (gc_debug_file, " (to %p, %s size: %lu)\n", destination, ((MonoObject*)obj)->vtable->klass->name, (unsigned long)objsize));
        binary_protocol_copy (obj, destination, vt, objsize);
-       
+
+       if (G_UNLIKELY (MONO_GC_OBJ_MOVED_ENABLED ())) {
+               int dest_gen = sgen_ptr_in_nursery (destination) ? GENERATION_NURSERY : GENERATION_OLD;
+               int src_gen = sgen_ptr_in_nursery (obj) ? GENERATION_NURSERY : GENERATION_OLD;
+               MONO_GC_OBJ_MOVED ((mword)destination, (mword)obj, dest_gen, src_gen, objsize, vt->klass->name_space, vt->klass->name);
+       }
+
 #ifdef __GNUC__
        if (objsize <= sizeof (gpointer) * 8) {
                mword *dest = (mword*)destination;
index 9e193260d2284dc50aa63f7a8fe83e3ea8fb21eb..935bce408111e20983c6bc0c4ec33cf9d2ea4c75 100644 (file)
@@ -364,7 +364,7 @@ sgen_check_whole_heap (void)
 {
        /*setup valid_nursery_objects*/
        if (!valid_nursery_objects)
-               valid_nursery_objects = sgen_alloc_os_memory (DEFAULT_NURSERY_SIZE, TRUE);
+               valid_nursery_objects = sgen_alloc_os_memory (DEFAULT_NURSERY_SIZE, SGEN_ALLOC_INTERNAL | SGEN_ALLOC_ACTIVATE, "debugging data");
        valid_nursery_object_count = 0;
        sgen_scan_area_with_callback (nursery_section->data, nursery_section->end_data, setup_mono_sgen_scan_area_with_callback, NULL, FALSE);
 
index cdea45583f93ca8cc1c527a330457c897350cb26..7690eaba557e1300a59a837c498e2c74bdcea6a5 100644 (file)
@@ -474,6 +474,32 @@ null_links_for_domain (MonoDomain *domain, int generation)
        } SGEN_HASH_TABLE_FOREACH_END;
 }
 
+/* LOCKING: requires that the GC lock is held */
+void
+sgen_null_links_with_predicate (int generation, WeakLinkAlivePredicateFunc predicate, void *data)
+{
+       void **link;
+       gpointer dummy;
+       SgenHashTable *hash = get_dislink_hash_table (generation);
+       fprintf (stderr, "**** nulling links with predicate\n");
+       SGEN_HASH_TABLE_FOREACH (hash, link, dummy) {
+               char *object = DISLINK_OBJECT (link);
+               mono_bool is_alive = predicate ((MonoObject*)object, data);
+
+               if (is_alive)
+                       fprintf (stderr, "ALIVE %p %s\n", object, safe_name (object));
+               else
+                       fprintf (stderr, "DEAD %p %s\n", object, safe_name (object));
+
+               if (!is_alive) {
+                       *link = NULL;
+                       DEBUG (5, fprintf (gc_debug_file, "Dislink nullified by predicate at %p to GCed object %p\n", link, object));
+                       SGEN_HASH_TABLE_FOREACH_REMOVE (TRUE);
+                       continue;
+               }
+       } SGEN_HASH_TABLE_FOREACH_END;
+}
+
 static void
 remove_finalizers_for_domain (MonoDomain *domain, int generation)
 {
index e6a0bec947927159f12f0ddcb07e9750a6299b2a..3431875933b56b7d6cdfccc95ded9beb1c5262c4 100644 (file)
 #include "metadata/sgen-archdep.h"
 #include "metadata/sgen-bridge.h"
 #include "metadata/sgen-memory-governor.h"
+#include "metadata/sgen-hash-table.h"
 #include "metadata/mono-gc.h"
 #include "metadata/method-builder.h"
 #include "metadata/profiler-private.h"
 #include "utils/mono-proclib.h"
 #include "utils/mono-memory-model.h"
 #include "utils/mono-logger-internal.h"
+#include "utils/dtrace.h"
 
 #include <mono/utils/mono-logger-internal.h>
 #include <mono/utils/memcheck.h>
@@ -1244,6 +1246,11 @@ pin_objects_from_addresses (GCMemSection *section, void **start, void **end, voi
                                        if (addr >= search_start && (char*)addr < (char*)last_obj + last_obj_size) {
                                                DEBUG (4, fprintf (gc_debug_file, "Pinned object %p, vtable %p (%s), count %d\n", search_start, *(void**)search_start, safe_name (search_start), count));
                                                binary_protocol_pin (search_start, (gpointer)LOAD_VTABLE (search_start), safe_object_get_size (search_start));
+                                               if (G_UNLIKELY (MONO_GC_OBJ_PINNED_ENABLED ())) {
+                                                       int gen = sgen_ptr_in_nursery (search_start) ? GENERATION_NURSERY : GENERATION_OLD;
+                                                       MonoVTable *vt = (MonoVTable*)LOAD_VTABLE (search_start);
+                                                       MONO_GC_OBJ_PINNED ((mword)search_start, sgen_safe_object_get_size (search_start), vt->klass->name_space, vt->klass->name, gen);
+                                               }
                                                pin_object (search_start);
                                                GRAY_OBJECT_ENQUEUE (queue, search_start);
                                                if (G_UNLIKELY (do_pin_stats))
@@ -1309,6 +1316,11 @@ sgen_pin_object (void *object, GrayQueue *queue)
        }
        GRAY_OBJECT_ENQUEUE (queue, object);
        binary_protocol_pin (object, (gpointer)LOAD_VTABLE (object), safe_object_get_size (object));
+       if (G_UNLIKELY (MONO_GC_OBJ_PINNED_ENABLED ())) {
+               int gen = sgen_ptr_in_nursery (object) ? GENERATION_NURSERY : GENERATION_OLD;
+               MonoVTable *vt = (MonoVTable*)LOAD_VTABLE (object);
+               MONO_GC_OBJ_PINNED ((mword)object, sgen_safe_object_get_size (object), vt->klass->name_space, vt->klass->name, gen);
+       }
 }
 
 void
@@ -1637,7 +1649,7 @@ alloc_nursery (void)
        section->size = alloc_size;
        section->end_data = data + sgen_nursery_size;
        scan_starts = (alloc_size + SCAN_START_SIZE - 1) / SCAN_START_SIZE;
-       section->scan_starts = sgen_alloc_internal_dynamic (sizeof (char*) * scan_starts, INTERNAL_MEM_SCAN_STARTS);
+       section->scan_starts = sgen_alloc_internal_dynamic (sizeof (char*) * scan_starts, INTERNAL_MEM_SCAN_STARTS, TRUE);
        section->num_scan_start = scan_starts;
        section->block.role = MEMORY_ROLE_GEN0;
        section->block.next = NULL;
@@ -1812,9 +1824,9 @@ stw_bridge_process (void)
 }
 
 static void
-bridge_process (void)
+bridge_process (int generation)
 {
-       sgen_bridge_processing_finish ();
+       sgen_bridge_processing_finish (generation);
 }
 
 SgenObjectOperations *
@@ -2351,6 +2363,8 @@ collect_nursery (void)
        if (disable_minor_collections)
                return TRUE;
 
+       MONO_GC_BEGIN (GENERATION_NURSERY);
+
        verify_nursery ();
 
        mono_perfcounters->gc_collections0++;
@@ -2400,7 +2414,7 @@ collect_nursery (void)
        sgen_workers_init_distribute_gray_queue ();
 
        stat_minor_gcs++;
-       mono_stats.minor_gc_count ++;
+       gc_stats.minor_gc_count ++;
 
        if (remset.prepare_for_minor_collection)
                remset.prepare_for_minor_collection ();
@@ -2542,7 +2556,7 @@ collect_nursery (void)
        major_collector.finish_nursery_collection ();
 
        TV_GETTIME (all_btv);
-       mono_stats.minor_gc_time_usecs += TV_ELAPSED (all_atv, all_btv);
+       gc_stats.minor_gc_time_usecs += TV_ELAPSED (all_atv, all_btv);
 
        if (heap_dump_file)
                dump_heap ("minor", stat_minor_gcs - 1, NULL);
@@ -2571,6 +2585,8 @@ collect_nursery (void)
        current_collection_generation = -1;
        objects_pinned = 0;
 
+       MONO_GC_END (GENERATION_NURSERY);
+
        return needs_major;
 }
 
@@ -2592,6 +2608,8 @@ major_do_collection (const char *reason)
        ScanThreadDataJobData stdjd;
        ScanFinalizerEntriesJobData sfejd_fin_ready, sfejd_critical_fin;
 
+       MONO_GC_BEGIN (GENERATION_OLD);
+
        current_collection_generation = GENERATION_OLD;
        mono_perfcounters->gc_collections1++;
 
@@ -2614,7 +2632,7 @@ major_do_collection (const char *reason)
        degraded_mode = 0;
        DEBUG (1, fprintf (gc_debug_file, "Start major collection %d\n", stat_major_gcs));
        stat_major_gcs++;
-       mono_stats.major_gc_count ++;
+       gc_stats.major_gc_count ++;
 
        /* world must be stopped already */
        TV_GETTIME (all_atv);
@@ -2682,6 +2700,10 @@ major_do_collection (const char *reason)
                report.count = 0;
                if (sgen_find_optimized_pin_queue_area (bigobj->data, (char*)bigobj->data + bigobj->size, &dummy)) {
                        binary_protocol_pin (bigobj->data, (gpointer)LOAD_VTABLE (bigobj->data), safe_object_get_size (bigobj->data));
+                       if (G_UNLIKELY (MONO_GC_OBJ_PINNED_ENABLED ())) {
+                               MonoVTable *vt = (MonoVTable*)LOAD_VTABLE (bigobj->data);
+                               MONO_GC_OBJ_PINNED ((mword)bigobj->data, sgen_safe_object_get_size ((MonoObject*)bigobj->data), vt->klass->name_space, vt->klass->name, GENERATION_OLD);
+                       }
                        pin_object (bigobj->data);
                        /* FIXME: only enqueue if object has references */
                        GRAY_OBJECT_ENQUEUE (WORKERS_DISTRIBUTE_GRAY_QUEUE, bigobj->data);
@@ -2851,7 +2873,7 @@ major_do_collection (const char *reason)
        time_major_fragment_creation += TV_ELAPSED (btv, atv);
 
        TV_GETTIME (all_btv);
-       mono_stats.major_gc_time_usecs += TV_ELAPSED (all_atv, all_btv);
+       gc_stats.major_gc_time_usecs += TV_ELAPSED (all_atv, all_btv);
 
        if (heap_dump_file)
                dump_heap ("major", stat_major_gcs - 1, reason);
@@ -2878,6 +2900,8 @@ major_do_collection (const char *reason)
 
        //consistency_check ();
 
+       MONO_GC_END (GENERATION_OLD);
+
        return bytes_pinned_from_failed_allocation > 0;
 }
 
@@ -3419,12 +3443,14 @@ update_current_thread_stack (void *start)
 #ifdef USE_MONO_CTX
        MONO_CONTEXT_GET_CURRENT (cur_thread_ctx);
        info->monoctx = &cur_thread_ctx;
+       if (gc_callbacks.thread_suspend_func)
+               gc_callbacks.thread_suspend_func (info->runtime_data, NULL, info->monoctx);
 #else
        ARCH_STORE_REGS (reg_ptr);
        info->stopped_regs = reg_ptr;
-#endif
        if (gc_callbacks.thread_suspend_func)
-               gc_callbacks.thread_suspend_func (info->runtime_data, NULL);
+               gc_callbacks.thread_suspend_func (info->runtime_data, NULL, NULL);
+#endif
 }
 
 void
@@ -3598,7 +3624,7 @@ restart_world (int generation, GGTimingInfo *timing)
        DEBUG (2, fprintf (gc_debug_file, "restarted %d thread(s) (pause time: %d usec, max: %d)\n", count, (int)usec, (int)max_pause_usec));
        mono_profiler_gc_event (MONO_GC_EVENT_POST_START_WORLD, generation);
 
-       bridge_process ();
+       bridge_process (generation);
 
        TV_GETTIME (end_bridge);
        bridge_usec = TV_ELAPSED (end_sw, end_bridge);
@@ -3877,6 +3903,7 @@ sgen_thread_unregister (SgenThreadInfo *p)
                if (!sgen_park_current_thread_if_doing_handshake (p))
                        g_usleep (50);
        }
+       MONO_GC_LOCKED ();
 #endif
 
        binary_protocol_thread_unregister ((gpointer)mono_thread_info_get_tid (p));
@@ -4388,9 +4415,27 @@ mono_gc_weak_link_remove (void **link_addr)
 MonoObject*
 mono_gc_weak_link_get (void **link_addr)
 {
-       if (!*link_addr)
+       /*
+        * We must only load *link_addr once because it might change
+        * under our feet, and REVEAL_POINTER (NULL) results in an
+        * invalid reference.
+        */
+       void *ptr = *link_addr;
+       if (!ptr)
                return NULL;
-       return (MonoObject*) REVEAL_POINTER (*link_addr);
+
+       /*
+        * During the second bridge processing step the world is
+        * running again.  That step processes all weak links once
+        * more to null those that refer to dead objects.  Before that
+        * is completed, those links must not be followed, so we
+        * conservatively wait for bridge processing when any weak
+        * link is dereferenced.
+        */
+       if (G_UNLIKELY (bridge_processing_in_progress))
+               mono_gc_wait_for_bridge_processing ();
+
+       return (MonoObject*) REVEAL_POINTER (ptr);
 }
 
 gboolean
@@ -4599,6 +4644,9 @@ mono_gc_base_init (void)
                                                        fprintf (stderr, "The major collector does not support the cardtable write barrier.\n");
                                                exit (1);
                                        }
+                               } else {
+                                       fprintf (stderr, "wbarrier must either be `remset' or `cardtable'.");
+                                       exit (1);
                                }
                                continue;
                        }
@@ -4899,6 +4947,12 @@ mono_gc_is_critical_method (MonoMethod *method)
        return (method == write_barrier_method || sgen_is_managed_allocator (method));
 }
 
+static gboolean
+sgen_has_critical_method (void)
+{
+       return write_barrier_method || sgen_has_managed_allocator ();
+}
+
 static gboolean
 is_ip_in_managed_allocator (MonoDomain *domain, gpointer ip)
 {
@@ -4910,6 +4964,8 @@ is_ip_in_managed_allocator (MonoDomain *domain, gpointer ip)
 
        if (!ip || !domain)
                return FALSE;
+       if (!sgen_has_critical_method ())
+               return FALSE;
        ji = mono_jit_info_table_find (domain, ip);
        if (!ji)
                return FALSE;
index 06a8b633f9f402a337ebbeea5801bcb49db5d83f..0f0e73440cc0f296d027baa9d8e96075e5d2c9eb 100644 (file)
@@ -40,6 +40,7 @@ typedef struct _SgenThreadInfo SgenThreadInfo;
 #include <signal.h>
 #include <mono/utils/mono-compiler.h>
 #include <mono/utils/mono-threads.h>
+#include <mono/utils/dtrace.h>
 #include <mono/io-layer/mono-mutex.h>
 #include <mono/metadata/class-internals.h>
 #include <mono/metadata/object-internals.h>
@@ -202,9 +203,15 @@ typedef struct _SgenPinnedChunk SgenPinnedChunk;
 /* if changing LOCK_INIT to something that isn't idempotent, look at
    its use in mono_gc_base_init in sgen-gc.c */
 #define LOCK_INIT(name)        mono_mutex_init (&(name), NULL)
-#define LOCK_GC mono_mutex_lock (&gc_mutex)
+#define LOCK_GC do {                                           \
+               mono_mutex_lock (&gc_mutex);                    \
+               MONO_GC_LOCKED ();                              \
+       } while (0)
 #define TRYLOCK_GC (mono_mutex_trylock (&gc_mutex) == 0)
-#define UNLOCK_GC mono_mutex_unlock (&gc_mutex)
+#define UNLOCK_GC do {                                         \
+               mono_mutex_unlock (&gc_mutex);                  \
+               MONO_GC_UNLOCKED ();                            \
+       } while (0)
 #define LOCK_INTERRUPTION mono_mutex_lock (&interruption_mutex)
 #define UNLOCK_INTERRUPTION mono_mutex_unlock (&interruption_mutex)
 
@@ -249,6 +256,8 @@ extern int current_collection_generation;
 
 extern unsigned int sgen_global_stop_count;
 
+extern gboolean bridge_processing_in_progress;
+
 #define SGEN_ALLOC_ALIGN               8
 #define SGEN_ALLOC_ALIGN_BITS  3
 
@@ -393,7 +402,7 @@ void sgen_update_heap_boundaries (mword low, mword high) MONO_INTERNAL;
 void sgen_scan_area_with_callback (char *start, char *end, IterateObjectCallbackFunc callback, void *data, gboolean allow_flags) MONO_INTERNAL;
 void sgen_check_section_scan_starts (GCMemSection *section) MONO_INTERNAL;
 
-/* Keep in sync with sgen_dump_internal_mem_usage() in dump_heap()! */
+/* Keep in sync with description_for_type() in sgen-internal.c! */
 enum {
        INTERNAL_MEM_PIN_QUEUE,
        INTERNAL_MEM_FRAGMENT,
@@ -458,7 +467,7 @@ void sgen_register_fixed_internal_mem_type (int type, size_t size) MONO_INTERNAL
 void* sgen_alloc_internal (int type) MONO_INTERNAL;
 void sgen_free_internal (void *addr, int type) MONO_INTERNAL;
 
-void* sgen_alloc_internal_dynamic (size_t size, int type) MONO_INTERNAL;
+void* sgen_alloc_internal_dynamic (size_t size, int type, gboolean assert_on_failure) MONO_INTERNAL;
 void sgen_free_internal_dynamic (void *addr, size_t size, int type) MONO_INTERNAL;
 
 void* sgen_alloc_pinned (SgenPinnedAllocator *allocator, size_t size) MONO_INTERNAL;
@@ -771,7 +780,7 @@ gboolean sgen_object_is_live (void *obj) MONO_INTERNAL;
 gboolean sgen_need_bridge_processing (void) MONO_INTERNAL;
 void sgen_bridge_reset_data (void) MONO_INTERNAL;
 void sgen_bridge_processing_stw_step (void) MONO_INTERNAL;
-void sgen_bridge_processing_finish (void) MONO_INTERNAL;
+void sgen_bridge_processing_finish (int generation) MONO_INTERNAL;
 void sgen_register_test_bridge_callbacks (const char *bridge_class_name) MONO_INTERNAL;
 gboolean sgen_is_bridge_object (MonoObject *obj) MONO_INTERNAL;
 gboolean sgen_is_bridge_class (MonoClass *class) MONO_INTERNAL;
@@ -781,6 +790,9 @@ void sgen_bridge_register_finalized_object (MonoObject *object) MONO_INTERNAL;
 void sgen_scan_togglerefs (CopyOrMarkObjectFunc copy_func, char *start, char *end, SgenGrayQueue *queue) MONO_INTERNAL;
 void sgen_process_togglerefs (void) MONO_INTERNAL;
 
+typedef mono_bool (*WeakLinkAlivePredicateFunc) (MonoObject*, void*);
+
+void sgen_null_links_with_predicate (int generation, WeakLinkAlivePredicateFunc predicate, void *data) MONO_INTERNAL;
 
 gboolean sgen_gc_is_object_ready_for_finalization (void *object) MONO_INTERNAL;
 void sgen_gc_lock (void) MONO_INTERNAL;
@@ -850,67 +862,6 @@ void sgen_nursery_alloc_prepare_for_major (void) MONO_INTERNAL;
 char* sgen_alloc_for_promotion (char *obj, size_t objsize, gboolean has_references) MONO_INTERNAL;
 char* sgen_par_alloc_for_promotion (char *obj, size_t objsize, gboolean has_references) MONO_INTERNAL;
 
-/* hash tables */
-
-typedef struct _SgenHashTableEntry SgenHashTableEntry;
-struct _SgenHashTableEntry {
-       SgenHashTableEntry *next;
-       gpointer key;
-       char data [MONO_ZERO_LEN_ARRAY]; /* data is pointer-aligned */
-};
-
-typedef struct {
-       int table_mem_type;
-       int entry_mem_type;
-       size_t data_size;
-       GHashFunc hash_func;
-       GEqualFunc equal_func;
-       SgenHashTableEntry **table;
-       guint size;
-       guint num_entries;
-} SgenHashTable;
-
-#define SGEN_HASH_TABLE_INIT(table_type,entry_type,data_size,hash_func,equal_func)     { (table_type), (entry_type), (data_size), (hash_func), (equal_func), NULL, 0, 0 }
-#define SGEN_HASH_TABLE_ENTRY_SIZE(data_size)                  ((data_size) + sizeof (SgenHashTableEntry*) + sizeof (gpointer))
-
-gpointer sgen_hash_table_lookup (SgenHashTable *table, gpointer key) MONO_INTERNAL;
-gboolean sgen_hash_table_replace (SgenHashTable *table, gpointer key, gpointer new_value, gpointer old_value) MONO_INTERNAL;
-gboolean sgen_hash_table_set_value (SgenHashTable *table, gpointer key, gpointer new_value, gpointer old_value) MONO_INTERNAL;
-gboolean sgen_hash_table_set_key (SgenHashTable *hash_table, gpointer old_key, gpointer new_key) MONO_INTERNAL;
-gboolean sgen_hash_table_remove (SgenHashTable *table, gpointer key, gpointer data_return) MONO_INTERNAL;
-
-void sgen_hash_table_clean (SgenHashTable *table) MONO_INTERNAL;
-
-#define sgen_hash_table_num_entries(h) ((h)->num_entries)
-
-#define SGEN_HASH_TABLE_FOREACH(h,k,v) do {                            \
-               SgenHashTable *__hash_table = (h);                      \
-               SgenHashTableEntry **__table = __hash_table->table;     \
-               guint __i;                                              \
-               for (__i = 0; __i < (h)->size; ++__i) {                 \
-                       SgenHashTableEntry **__iter, **__next;                  \
-                       for (__iter = &__table [__i]; *__iter; __iter = __next) {       \
-                               SgenHashTableEntry *__entry = *__iter;  \
-                               __next = &__entry->next;        \
-                               (k) = __entry->key;                     \
-                               (v) = (gpointer)__entry->data;
-
-/* The loop must be continue'd after using this! */
-#define SGEN_HASH_TABLE_FOREACH_REMOVE(free)   do {                    \
-               *__iter = *__next;      \
-               __next = __iter;        \
-               --__hash_table->num_entries;                            \
-               if ((free))                                             \
-                       sgen_free_internal (__entry, __hash_table->entry_mem_type); \
-       } while (0)
-
-#define SGEN_HASH_TABLE_FOREACH_SET_KEY(k)     ((__entry)->key = (k))
-
-#define SGEN_HASH_TABLE_FOREACH_END                                    \
-                       }                                               \
-               }                                                       \
-       } while (0)
-
 /* TLS Data */
 
 extern MonoNativeTlsKey thread_info_key;
@@ -1022,6 +973,7 @@ typedef enum {
 void sgen_init_tlab_info (SgenThreadInfo* info);
 void sgen_clear_tlabs (void);
 gboolean sgen_is_managed_allocator (MonoMethod *method);
+gboolean sgen_has_managed_allocator (void);
 
 /* Debug support */
 
index af829a2f262c491c9ca239fe527ddeee657484aa..7e2a8e49de30b0b95d8718acfe519e3cf3396ec2 100644 (file)
@@ -26,6 +26,7 @@
 #ifdef HAVE_SGEN_GC
 
 #include <mono/metadata/sgen-gc.h>
+#include <mono/metadata/sgen-hash-table.h>
 
 static void
 rehash (SgenHashTable *hash_table)
@@ -44,7 +45,7 @@ rehash (SgenHashTable *hash_table)
                new_size = g_spaced_primes_closest (hash_table->num_entries);
        }
 
-       new_hash = sgen_alloc_internal_dynamic (new_size * sizeof (SgenHashTableEntry*), hash_table->table_mem_type);
+       new_hash = sgen_alloc_internal_dynamic (new_size * sizeof (SgenHashTableEntry*), hash_table->table_mem_type, TRUE);
        for (i = 0; i < old_hash_size; ++i) {
                for (entry = old_hash [i]; entry; entry = next) {
                        hash = hash_table->hash_func (entry->key) % new_size;
diff --git a/mono/metadata/sgen-hash-table.h b/mono/metadata/sgen-hash-table.h
new file mode 100644 (file)
index 0000000..4faa3a6
--- /dev/null
@@ -0,0 +1,73 @@
+#ifndef __MONO_SGENHASHTABLE_H__
+#define __MONO_SGENHASHTABLE_H__
+
+#include "config.h"
+
+#ifdef HAVE_SGEN_GC
+
+#include <glib.h>
+
+/* hash tables */
+
+typedef struct _SgenHashTableEntry SgenHashTableEntry;
+struct _SgenHashTableEntry {
+       SgenHashTableEntry *next;
+       gpointer key;
+       char data [MONO_ZERO_LEN_ARRAY]; /* data is pointer-aligned */
+};
+
+typedef struct {
+       int table_mem_type;
+       int entry_mem_type;
+       size_t data_size;
+       GHashFunc hash_func;
+       GEqualFunc equal_func;
+       SgenHashTableEntry **table;
+       guint size;
+       guint num_entries;
+} SgenHashTable;
+
+#define SGEN_HASH_TABLE_INIT(table_type,entry_type,data_size,hash_func,equal_func)     { (table_type), (entry_type), (data_size), (hash_func), (equal_func), NULL, 0, 0 }
+#define SGEN_HASH_TABLE_ENTRY_SIZE(data_size)                  ((data_size) + sizeof (SgenHashTableEntry*) + sizeof (gpointer))
+
+gpointer sgen_hash_table_lookup (SgenHashTable *table, gpointer key) MONO_INTERNAL;
+gboolean sgen_hash_table_replace (SgenHashTable *table, gpointer key, gpointer new_value, gpointer old_value) MONO_INTERNAL;
+gboolean sgen_hash_table_set_value (SgenHashTable *table, gpointer key, gpointer new_value, gpointer old_value) MONO_INTERNAL;
+gboolean sgen_hash_table_set_key (SgenHashTable *hash_table, gpointer old_key, gpointer new_key) MONO_INTERNAL;
+gboolean sgen_hash_table_remove (SgenHashTable *table, gpointer key, gpointer data_return) MONO_INTERNAL;
+
+void sgen_hash_table_clean (SgenHashTable *table) MONO_INTERNAL;
+
+#define sgen_hash_table_num_entries(h) ((h)->num_entries)
+
+#define SGEN_HASH_TABLE_FOREACH(h,k,v) do {                            \
+               SgenHashTable *__hash_table = (h);                      \
+               SgenHashTableEntry **__table = __hash_table->table;     \
+               guint __i;                                              \
+               for (__i = 0; __i < (h)->size; ++__i) {                 \
+                       SgenHashTableEntry **__iter, **__next;                  \
+                       for (__iter = &__table [__i]; *__iter; __iter = __next) {       \
+                               SgenHashTableEntry *__entry = *__iter;  \
+                               __next = &__entry->next;        \
+                               (k) = __entry->key;                     \
+                               (v) = (gpointer)__entry->data;
+
+/* The loop must be continue'd after using this! */
+#define SGEN_HASH_TABLE_FOREACH_REMOVE(free)   do {                    \
+               *__iter = *__next;      \
+               __next = __iter;        \
+               --__hash_table->num_entries;                            \
+               if ((free))                                             \
+                       sgen_free_internal (__entry, __hash_table->entry_mem_type); \
+       } while (0)
+
+#define SGEN_HASH_TABLE_FOREACH_SET_KEY(k)     ((__entry)->key = (k))
+
+#define SGEN_HASH_TABLE_FOREACH_END                                    \
+                       }                                               \
+               }                                                       \
+       } while (0)
+
+#endif
+
+#endif
index eba4405c50068a5f3fb6044a15168ad386efb88c..ddefdaae7623f1f596b339c475659ae703b61913 100644 (file)
@@ -81,18 +81,57 @@ sgen_register_fixed_internal_mem_type (int type, size_t size)
                g_assert (fixed_type_allocator_indexes [type] == slot);
 }
 
+static const char*
+description_for_type (int type)
+{
+       switch (type) {
+       case INTERNAL_MEM_PIN_QUEUE: return "pin-queue";
+       case INTERNAL_MEM_FRAGMENT: return "fragment";
+       case INTERNAL_MEM_SECTION: return "section";
+       case INTERNAL_MEM_SCAN_STARTS: return "scan-starts";
+       case INTERNAL_MEM_FIN_TABLE: return "fin-table";
+       case INTERNAL_MEM_FINALIZE_ENTRY: return "finalize-entry";
+       case INTERNAL_MEM_FINALIZE_READY_ENTRY: return "finalize-ready-entry";
+       case INTERNAL_MEM_DISLINK_TABLE: return "dislink-table";
+       case INTERNAL_MEM_DISLINK: return "dislink";
+       case INTERNAL_MEM_ROOTS_TABLE: return "roots-table";
+       case INTERNAL_MEM_ROOT_RECORD: return "root-record";
+       case INTERNAL_MEM_STATISTICS: return "statistics";
+       case INTERNAL_MEM_STAT_PINNED_CLASS: return "pinned-class";
+       case INTERNAL_MEM_STAT_REMSET_CLASS: return "remset-class";
+       case INTERNAL_MEM_REMSET: return "remset";
+       case INTERNAL_MEM_GRAY_QUEUE: return "gray-queue";
+       case INTERNAL_MEM_STORE_REMSET: return "store-remset";
+       case INTERNAL_MEM_MS_TABLES: return "marksweep-tables";
+       case INTERNAL_MEM_MS_BLOCK_INFO: return "marksweep-block-info";
+       case INTERNAL_MEM_EPHEMERON_LINK: return "ephemeron-link";
+       case INTERNAL_MEM_WORKER_DATA: return "worker-data";
+       case INTERNAL_MEM_BRIDGE_DATA: return "bridge-data";
+       case INTERNAL_MEM_JOB_QUEUE_ENTRY: return "job-queue-entry";
+       case INTERNAL_MEM_TOGGLEREF_DATA: return "toggleref-data";
+       default:
+               g_assert_not_reached ();
+       }
+}
+
 void*
-sgen_alloc_internal_dynamic (size_t size, int type)
+sgen_alloc_internal_dynamic (size_t size, int type, gboolean assert_on_failure)
 {
        int index;
        void *p;
 
-       if (size > allocator_sizes [NUM_ALLOCATORS - 1])
-               return sgen_alloc_os_memory (size, TRUE);
+       if (size > allocator_sizes [NUM_ALLOCATORS - 1]) {
+               p = sgen_alloc_os_memory (size, SGEN_ALLOC_INTERNAL | SGEN_ALLOC_ACTIVATE, NULL);
+               if (!p)
+                       sgen_assert_memory_alloc (NULL, description_for_type (type));
+               return p;
+       }
 
        index = index_for_size (size);
 
        p = mono_lock_free_alloc (&allocators [index]);
+       if (!p)
+               sgen_assert_memory_alloc (NULL, description_for_type (type));
        memset (p, 0, size);
        return p;
 }
@@ -100,15 +139,13 @@ sgen_alloc_internal_dynamic (size_t size, int type)
 void
 sgen_free_internal_dynamic (void *addr, size_t size, int type)
 {
-       int index;
-
        if (!addr)
                return;
 
-       if (size > allocator_sizes [NUM_ALLOCATORS - 1])
-               return sgen_free_os_memory (addr, size);
-
-       index = index_for_size (size);
+       if (size > allocator_sizes [NUM_ALLOCATORS - 1]) {
+               sgen_free_os_memory (addr, size, SGEN_ALLOC_INTERNAL);
+               return;
+       }
 
        mono_lock_free_free (addr);
 }
@@ -142,20 +179,13 @@ void
 sgen_dump_internal_mem_usage (FILE *heap_dump_file)
 {
        /*
-       static char const *internal_mem_names [] = { "pin-queue", "fragment", "section", "scan-starts",
-                                                    "fin-table", "finalize-entry", "finalize-ready-entry", "dislink-table",
-                                                    "dislink", "roots-table", "root-record", "statistics",
-                                                    "remset", "gray-queue", "store-remset", "marksweep-tables",
-                                                    "marksweep-block-info", "ephemeron-link", "worker-data",
-                                                    "bridge-data", "job-queue-entry", "toggleref-data" };
-
        int i;
 
        fprintf (heap_dump_file, "<other-mem-usage type=\"large-internal\" size=\"%lld\"/>\n", large_internal_bytes_alloced);
        fprintf (heap_dump_file, "<other-mem-usage type=\"pinned-chunks\" size=\"%lld\"/>\n", pinned_chunk_bytes_alloced);
        for (i = 0; i < INTERNAL_MEM_MAX; ++i) {
                fprintf (heap_dump_file, "<other-mem-usage type=\"%s\" size=\"%ld\"/>\n",
-                               internal_mem_names [i], unmanaged_allocator.small_internal_mem_bytes [i]);
+                               description_for_type (i), unmanaged_allocator.small_internal_mem_bytes [i]);
        }
        */
 }
index 84b504b7970a5fd0b4d21ea62ab6affdd45ad44b..f794d0b2912dc9b91d9551d19513d0cb97209ad5 100644 (file)
@@ -244,7 +244,7 @@ get_los_section_memory (size_t size)
        if (!sgen_memgov_try_alloc_space (LOS_SECTION_SIZE, SPACE_LOS))
                return NULL;
 
-       section = sgen_alloc_os_memory_aligned (LOS_SECTION_SIZE, LOS_SECTION_SIZE, TRUE);
+       section = sgen_alloc_os_memory_aligned (LOS_SECTION_SIZE, LOS_SECTION_SIZE, SGEN_ALLOC_HEAP | SGEN_ALLOC_ACTIVATE, NULL);
 
        if (!section)
                return NULL;
@@ -323,7 +323,7 @@ sgen_los_free_object (LOSObject *obj)
                size += sizeof (LOSObject);
                size += pagesize - 1;
                size &= ~(pagesize - 1);
-               sgen_free_os_memory (obj, size);
+               sgen_free_os_memory (obj, size, SGEN_ALLOC_HEAP);
                sgen_memgov_release_space (size, SPACE_LOS);
        } else {
                free_los_section_memory (obj, size + sizeof (LOSObject));
@@ -351,7 +351,7 @@ sgen_los_alloc_large_inner (MonoVTable *vtable, size_t size)
 
 #ifdef LOS_DUMMY
        if (!los_segment)
-               los_segment = sgen_alloc_os_memory (LOS_SEGMENT_SIZE, TRUE);
+               los_segment = sgen_alloc_os_memory (LOS_SEGMENT_SIZE, SGEN_ALLOC_HEAP | SGEN_ALLOC_ACTIVATE, NULL);
        los_segment_index = ALIGN_UP (los_segment_index);
 
        obj = (LOSObject*)(los_segment + los_segment_index);
@@ -372,7 +372,7 @@ sgen_los_alloc_large_inner (MonoVTable *vtable, size_t size)
                alloc_size += pagesize - 1;
                alloc_size &= ~(pagesize - 1);
                if (sgen_memgov_try_alloc_space (alloc_size, SPACE_LOS)) {
-                       obj = sgen_alloc_os_memory (alloc_size, TRUE);
+                       obj = sgen_alloc_os_memory (alloc_size, SGEN_ALLOC_HEAP | SGEN_ALLOC_ACTIVATE, NULL);
                        if (obj)
                                obj->huge_object = TRUE;
                }
@@ -423,7 +423,7 @@ sgen_los_sweep (void)
                                prev->next = next;
                        else
                                los_sections = next;
-                       sgen_free_os_memory (section, LOS_SECTION_SIZE);
+                       sgen_free_os_memory (section, LOS_SECTION_SIZE, SGEN_ALLOC_HEAP);
                        sgen_memgov_release_space (LOS_SECTION_SIZE, SPACE_LOS);
                        section = next;
                        --los_num_sections;
index f97ae5fa9ca720d2700ed1f8b023a28a462a4b67..e52c26903c37a6fe422c6a98cc44ab38ef7ffbd5 100644 (file)
@@ -98,9 +98,9 @@ static void*
 major_alloc_heap (mword nursery_size, mword nursery_align, int the_nursery_bits)
 {
        if (nursery_align)
-               nursery_start = sgen_alloc_os_memory_aligned (nursery_size, nursery_align, TRUE);
+               nursery_start = sgen_alloc_os_memory_aligned (nursery_size, nursery_align, SGEN_ALLOC_HEAP | SGEN_ALLOC_ACTIVATE, "nursery");
        else
-               nursery_start = sgen_alloc_os_memory (nursery_size, TRUE);
+               nursery_start = sgen_alloc_os_memory (nursery_size, SGEN_ALLOC_HEAP | SGEN_ALLOC_ACTIVATE, "nursery");
 
        nursery_end = nursery_start + nursery_size;
        nursery_bits = the_nursery_bits;
@@ -129,7 +129,7 @@ alloc_major_section (void)
        GCMemSection *section;
        int scan_starts;
 
-       section = sgen_alloc_os_memory_aligned (MAJOR_SECTION_SIZE, MAJOR_SECTION_SIZE, TRUE);
+       section = sgen_alloc_os_memory_aligned (MAJOR_SECTION_SIZE, MAJOR_SECTION_SIZE, SGEN_ALLOC_HEAP | SGEN_ALLOC_ACTIVATE, "major heap section");
        section->next_data = section->data = (char*)section + SGEN_SIZEOF_GC_MEM_SECTION;
        g_assert (!((mword)section->data & 7));
        section->size = MAJOR_SECTION_SIZE - SGEN_SIZEOF_GC_MEM_SECTION;
@@ -137,7 +137,7 @@ alloc_major_section (void)
        sgen_update_heap_boundaries ((mword)section->data, (mword)section->end_data);
        DEBUG (3, fprintf (gc_debug_file, "New major heap section: (%p-%p), total: %lld\n", section->data, section->end_data, (long long int)mono_gc_get_heap_size ()));
        scan_starts = (section->size + SGEN_SCAN_START_SIZE - 1) / SGEN_SCAN_START_SIZE;
-       section->scan_starts = sgen_alloc_internal_dynamic (sizeof (char*) * scan_starts, INTERNAL_MEM_SCAN_STARTS);
+       section->scan_starts = sgen_alloc_internal_dynamic (sizeof (char*) * scan_starts, INTERNAL_MEM_SCAN_STARTS, TRUE);
        section->num_scan_start = scan_starts;
        section->block.role = MEMORY_ROLE_GEN1;
        section->is_to_space = TRUE;
@@ -157,7 +157,7 @@ free_major_section (GCMemSection *section)
        DEBUG (3, fprintf (gc_debug_file, "Freed major section %p (%p-%p)\n", section, section->data, section->end_data));
        sgen_free_internal_dynamic (section->scan_starts,
                        (section->size + SGEN_SCAN_START_SIZE - 1) / SGEN_SCAN_START_SIZE * sizeof (char*), INTERNAL_MEM_SCAN_STARTS);
-       sgen_free_os_memory (section, MAJOR_SECTION_SIZE);
+       sgen_free_os_memory (section, MAJOR_SECTION_SIZE, SGEN_ALLOC_HEAP);
 
        --num_major_sections;
 }
index bc0c19bf2a751dafa88b345afc744d0b01500726..d861f22f2528d2856afed04dbf608787f66d5059 100644 (file)
@@ -101,7 +101,7 @@ struct _MSBlockInfo {
 };
 
 #ifdef FIXED_HEAP
-static int ms_heap_num_blocks = MS_DEFAULT_HEAP_NUM_BLOCKS;
+static mword ms_heap_num_blocks = MS_DEFAULT_HEAP_NUM_BLOCKS;
 
 static char *ms_heap_start;
 static char *ms_heap_end;
@@ -304,18 +304,18 @@ major_alloc_heap (mword nursery_size, mword nursery_align, int the_nursery_bits)
        char *nursery_start;
        mword major_heap_size = ms_heap_num_blocks * MS_BLOCK_SIZE;
        mword alloc_size = nursery_size + major_heap_size;
-       int i;
+       mword i;
 
        g_assert (ms_heap_num_blocks > 0);
        g_assert (nursery_size % MS_BLOCK_SIZE == 0);
        if (nursery_align)
                g_assert (nursery_align % MS_BLOCK_SIZE == 0);
 
-       nursery_start = sgen_alloc_os_memory_aligned (alloc_size, nursery_align ? nursery_align : MS_BLOCK_SIZE, TRUE);
+       nursery_start = sgen_alloc_os_memory_aligned (alloc_size, nursery_align ? nursery_align : MS_BLOCK_SIZE, SGEN_ALLOC_HEAP | SGEN_ALLOC_ACTIVATE, "heap");
        ms_heap_start = nursery_start + nursery_size;
        ms_heap_end = ms_heap_start + major_heap_size;
 
-       block_infos = sgen_alloc_internal_dynamic (sizeof (MSBlockInfo) * ms_heap_num_blocks, INTERNAL_MEM_MS_BLOCK_INFO);
+       block_infos = sgen_alloc_internal_dynamic (sizeof (MSBlockInfo) * ms_heap_num_blocks, INTERNAL_MEM_MS_BLOCK_INFO, TRUE);
 
        for (i = 0; i < ms_heap_num_blocks; ++i) {
                block_infos [i].block = ms_heap_start + i * MS_BLOCK_SIZE;
@@ -336,9 +336,9 @@ major_alloc_heap (mword nursery_size, mword nursery_align, int the_nursery_bits)
 {
        char *start;
        if (nursery_align)
-               start = sgen_alloc_os_memory_aligned (nursery_size, nursery_align, TRUE);
+               start = sgen_alloc_os_memory_aligned (nursery_size, nursery_align, SGEN_ALLOC_HEAP | SGEN_ALLOC_ACTIVATE, "nursery");
        else
-               start = sgen_alloc_os_memory (nursery_size, TRUE);
+               start = sgen_alloc_os_memory (nursery_size, SGEN_ALLOC_HEAP | SGEN_ALLOC_ACTIVATE, "nursery");
 
        return start;
 }
@@ -389,7 +389,7 @@ ms_get_empty_block (void)
 
  retry:
        if (!empty_blocks) {
-               p = sgen_alloc_os_memory_aligned (MS_BLOCK_SIZE * MS_BLOCK_ALLOC_NUM, MS_BLOCK_SIZE, TRUE);
+               p = sgen_alloc_os_memory_aligned (MS_BLOCK_SIZE * MS_BLOCK_ALLOC_NUM, MS_BLOCK_SIZE, SGEN_ALLOC_HEAP | SGEN_ALLOC_ACTIVATE, "major heap section");
 
                for (i = 0; i < MS_BLOCK_ALLOC_NUM; ++i) {
                        block = p;
@@ -1370,6 +1370,10 @@ major_copy_or_mark_object (void **ptr, SgenGrayQueue *queue)
                        if (SGEN_OBJECT_IS_PINNED (obj))
                                return;
                        binary_protocol_pin (obj, (gpointer)SGEN_LOAD_VTABLE (obj), sgen_safe_object_get_size ((MonoObject*)obj));
+                       if (G_UNLIKELY (MONO_GC_OBJ_PINNED_ENABLED ())) {
+                               MonoVTable *vt = (MonoVTable*)SGEN_LOAD_VTABLE (obj);
+                               MONO_GC_OBJ_PINNED ((mword)obj, sgen_safe_object_get_size (obj), vt->klass->name_space, vt->klass->name, GENERATION_OLD);
+                       }
                        SGEN_PIN_OBJECT (obj);
                        /* FIXME: only enqueue if object has references */
                        GRAY_OBJECT_ENQUEUE (queue, obj);
@@ -1456,7 +1460,14 @@ ms_sweep (void)
                        } else {
                                /* an unmarked object */
                                if (MS_OBJ_ALLOCED (obj, block)) {
+                                       /*
+                                        * FIXME: Merge consecutive
+                                        * slots for lower reporting
+                                        * overhead.  Maybe memset
+                                        * will also benefit?
+                                        */
                                        binary_protocol_empty (obj, block->obj_size);
+                                       MONO_GC_MAJOR_SWEPT ((mword)obj, block->obj_size);
                                        memset (obj, 0, block->obj_size);
                                }
                                *(void**)obj = block->free_list;
@@ -1697,7 +1708,7 @@ major_have_computer_minor_collection_allowance (void)
 
        while (num_empty_blocks > section_reserve) {
                void *next = *(void**)empty_blocks;
-               sgen_free_os_memory (empty_blocks, MS_BLOCK_SIZE);
+               sgen_free_os_memory (empty_blocks, MS_BLOCK_SIZE, SGEN_ALLOC_HEAP);
                empty_blocks = next;
                /*
                 * Needs not be atomic because this is running
@@ -1987,7 +1998,7 @@ alloc_free_block_lists (MSBlockInfo ***lists)
 {
        int i;
        for (i = 0; i < MS_BLOCK_TYPE_MAX; ++i)
-               lists [i] = sgen_alloc_internal_dynamic (sizeof (MSBlockInfo*) * num_block_obj_sizes, INTERNAL_MEM_MS_TABLES);
+               lists [i] = sgen_alloc_internal_dynamic (sizeof (MSBlockInfo*) * num_block_obj_sizes, INTERNAL_MEM_MS_TABLES, TRUE);
 }
 
 #ifdef SGEN_PARALLEL_MARK
@@ -2069,10 +2080,10 @@ sgen_marksweep_init
 #endif
 
        num_block_obj_sizes = ms_calculate_block_obj_sizes (MS_BLOCK_OBJ_SIZE_FACTOR, NULL);
-       block_obj_sizes = sgen_alloc_internal_dynamic (sizeof (int) * num_block_obj_sizes, INTERNAL_MEM_MS_TABLES);
+       block_obj_sizes = sgen_alloc_internal_dynamic (sizeof (int) * num_block_obj_sizes, INTERNAL_MEM_MS_TABLES, TRUE);
        ms_calculate_block_obj_sizes (MS_BLOCK_OBJ_SIZE_FACTOR, block_obj_sizes);
 
-       evacuate_block_obj_sizes = sgen_alloc_internal_dynamic (sizeof (gboolean) * num_block_obj_sizes, INTERNAL_MEM_MS_TABLES);
+       evacuate_block_obj_sizes = sgen_alloc_internal_dynamic (sizeof (gboolean) * num_block_obj_sizes, INTERNAL_MEM_MS_TABLES, TRUE);
        for (i = 0; i < num_block_obj_sizes; ++i)
                evacuate_block_obj_sizes [i] = FALSE;
 
index e2e6c36a8c709ad5b8ead268b0634d3c449b4be0..7fff99a6b73f7dc99de52097b950286a01760857 100644 (file)
@@ -40,6 +40,7 @@
 #include "utils/mono-counters.h"
 #include "utils/mono-mmap.h"
 #include "utils/mono-logger-internal.h"
+#include "utils/dtrace.h"
 
 #define MIN_MINOR_COLLECTION_ALLOWANCE ((mword)(DEFAULT_NURSERY_SIZE * default_allowance_nursery_size_ratio))
 
@@ -287,26 +288,51 @@ prot_flags_for_activate (int activate)
        return prot_flags | MONO_MMAP_PRIVATE | MONO_MMAP_ANON;
 }
 
+void
+sgen_assert_memory_alloc (void *ptr, const char *assert_description)
+{
+       if (ptr || !assert_description)
+               return;
+       fprintf (stderr, "Error: Garbage collector could not allocate memory for %s.\n", assert_description);
+       exit (1);
+}
+
 /*
  * Allocate a big chunk of memory from the OS (usually 64KB to several megabytes).
  * This must not require any lock.
  */
 void*
-sgen_alloc_os_memory (size_t size, int activate)
+sgen_alloc_os_memory (size_t size, SgenAllocFlags flags, const char *assert_description)
 {
-       void *ptr = mono_valloc (0, size, prot_flags_for_activate (activate));
-       if (ptr)
+       void *ptr;
+
+       g_assert (!(flags & ~(SGEN_ALLOC_HEAP | SGEN_ALLOC_ACTIVATE)));
+
+       ptr = mono_valloc (0, size, prot_flags_for_activate (flags & SGEN_ALLOC_ACTIVATE));
+       sgen_assert_memory_alloc (ptr, assert_description);
+       if (ptr) {
                SGEN_ATOMIC_ADD_P (total_alloc, size);
+               if (flags & SGEN_ALLOC_HEAP)
+                       MONO_GC_HEAP_ALLOC ((mword)ptr, size);
+       }
        return ptr;
 }
 
 /* size must be a power of 2 */
 void*
-sgen_alloc_os_memory_aligned (size_t size, mword alignment, gboolean activate)
+sgen_alloc_os_memory_aligned (size_t size, mword alignment, SgenAllocFlags flags, const char *assert_description)
 {
-       void *ptr = mono_valloc_aligned (size, alignment, prot_flags_for_activate (activate));
-       if (ptr)
+       void *ptr;
+
+       g_assert (!(flags & ~(SGEN_ALLOC_HEAP | SGEN_ALLOC_ACTIVATE)));
+
+       ptr = mono_valloc_aligned (size, alignment, prot_flags_for_activate (flags & SGEN_ALLOC_ACTIVATE));
+       sgen_assert_memory_alloc (ptr, assert_description);
+       if (ptr) {
                SGEN_ATOMIC_ADD_P (total_alloc, size);
+               if (flags & SGEN_ALLOC_HEAP)
+                       MONO_GC_HEAP_ALLOC ((mword)ptr, size);
+       }
        return ptr;
 }
 
@@ -314,10 +340,14 @@ sgen_alloc_os_memory_aligned (size_t size, mword alignment, gboolean activate)
  * Free the memory returned by sgen_alloc_os_memory (), returning it to the OS.
  */
 void
-sgen_free_os_memory (void *addr, size_t size)
+sgen_free_os_memory (void *addr, size_t size, SgenAllocFlags flags)
 {
+       g_assert (!(flags & ~SGEN_ALLOC_HEAP));
+
        mono_vfree (addr, size);
        SGEN_ATOMIC_ADD_P (total_alloc, -size);
+       if (flags & SGEN_ALLOC_HEAP)
+               MONO_GC_HEAP_FREE ((mword)addr, size);
 }
 
 int64_t
index c321f54d22161505ba6b4fddf2cf0e415b25d247..98f5a03eee20698a6f6b6ef17b67421c07ba1b03 100644 (file)
@@ -44,10 +44,19 @@ mword sgen_get_minor_collection_allowance (void) MONO_INTERNAL;
 gboolean sgen_need_major_collection (mword space_needed) MONO_INTERNAL;
 
 
+typedef enum {
+       SGEN_ALLOC_INTERNAL = 0,
+       SGEN_ALLOC_HEAP = 1,
+       SGEN_ALLOC_ACTIVATE = 2
+} SgenAllocFlags;
+
 /* OS memory allocation */
-void* sgen_alloc_os_memory (size_t size, int activate) MONO_INTERNAL;
-void* sgen_alloc_os_memory_aligned (size_t size, mword alignment, gboolean activate) MONO_INTERNAL;
-void sgen_free_os_memory (void *addr, size_t size) MONO_INTERNAL;
+void* sgen_alloc_os_memory (size_t size, SgenAllocFlags flags, const char *assert_description) MONO_INTERNAL;
+void* sgen_alloc_os_memory_aligned (size_t size, mword alignment, SgenAllocFlags flags, const char *assert_description) MONO_INTERNAL;
+void sgen_free_os_memory (void *addr, size_t size, SgenAllocFlags flags) MONO_INTERNAL;
+
+/* Error handling */
+void sgen_assert_memory_alloc (void *ptr, const char *assert_description) MONO_INTERNAL;
 
 #endif
 
index c8a612240b7871663bd19292a6b0652bfa9b7402..73901bcbd9ebd234ce183a22cce089ba1fb35d38 100644 (file)
@@ -712,6 +712,7 @@ add_nursery_frag (SgenFragmentAllocator *allocator, size_t frag_size, char* frag
 {
        DEBUG (4, fprintf (gc_debug_file, "Found empty fragment: %p-%p, size: %zd\n", frag_start, frag_end, frag_size));
        binary_protocol_empty (frag_start, frag_size);
+       MONO_GC_NURSERY_SWEPT ((mword)frag_start, frag_end - frag_start);
        /* Not worth dealing with smaller fragments: need to tune */
        if (frag_size >= SGEN_MAX_NURSERY_WASTE) {
                /* memsetting just the first chunk start is bound to provide better cache locality */
@@ -910,7 +911,7 @@ sgen_init_nursery_allocator (void)
 {
        sgen_register_fixed_internal_mem_type (INTERNAL_MEM_FRAGMENT, sizeof (SgenFragment));
 #ifdef NALLOC_DEBUG
-       alloc_records = sgen_alloc_os_memory (sizeof (AllocRecord) * ALLOC_RECORD_COUNT, TRUE);
+       alloc_records = sgen_alloc_os_memory (sizeof (AllocRecord) * ALLOC_RECORD_COUNT, SGEN_ALLOC_INTERNAL | SGEN_ALLOC_ACTIVATE, "debugging memory");
 #endif
 }
 
index 622d1001e9c083afb485a4faf5dbe7dd66726224..c99debf9943963949dc2487155a95d352db3fc32 100644 (file)
@@ -95,7 +95,7 @@ sgen_suspend_thread (SgenThreadInfo *info)
 
        /* Notify the JIT */
        if (mono_gc_get_gc_callbacks ()->thread_suspend_func)
-               mono_gc_get_gc_callbacks ()->thread_suspend_func (info->runtime_data, &ctx);
+               mono_gc_get_gc_callbacks ()->thread_suspend_func (info->runtime_data, &ctx, NULL);
 
        return TRUE;
 }
index 438a4caa3be107ce01a1ffb5860e6780ffd0cf13..265f50ff680d013040d8bc84e53728a75d6da133 100644 (file)
@@ -102,7 +102,7 @@ suspend_thread (SgenThreadInfo *info, void *context)
 
        /* Notify the JIT */
        if (mono_gc_get_gc_callbacks ()->thread_suspend_func)
-               mono_gc_get_gc_callbacks ()->thread_suspend_func (info->runtime_data, context);
+               mono_gc_get_gc_callbacks ()->thread_suspend_func (info->runtime_data, context, NULL);
 
        DEBUG (4, fprintf (gc_debug_file, "Posting suspend_ack_semaphore for suspend from %p %p\n", info, (gpointer)mono_native_thread_id_get ()));
 
index f2d7803f04c174c253f4365e8b9cd63388735dc4..7a8b8b63887222e907fcb81349187ec9bdf671b1 100644 (file)
@@ -72,7 +72,7 @@ sgen_suspend_thread (SgenThreadInfo *info)
 
        /* Notify the JIT */
        if (mono_gc_get_gc_callbacks ()->thread_suspend_func)
-               mono_gc_get_gc_callbacks ()->thread_suspend_func (info->runtime_data, NULL);
+               mono_gc_get_gc_callbacks ()->thread_suspend_func (info->runtime_data, NULL, NULL);
 
        return TRUE;
 }
index d35ec594ec456e932ad11e756ae99424149bfb32..31d3cd678df4a224e78b79c3a03f4d60523888f1 100644 (file)
@@ -111,6 +111,8 @@ static const int freelist_sizes [] = {
 
 #define LARGE_PINNED_MEM_HEADER_MAGIC  0x7d289f3a
 
+/* FIXME: Do we even need these anymore?  Large objects are always
+   allocated in the LOS. */
 typedef struct _LargePinnedMemHeader LargePinnedMemHeader;
 struct _LargePinnedMemHeader {
        guint32 magic;
@@ -217,7 +219,7 @@ alloc_pinned_chunk (SgenPinnedAllocator *alc)
        int offset;
        int size = SGEN_PINNED_CHUNK_SIZE;
 
-       chunk = sgen_alloc_os_memory_aligned (size, size, TRUE);
+       chunk = sgen_alloc_os_memory_aligned (size, size, SGEN_ALLOC_HEAP | SGEN_ALLOC_ACTIVATE, "pinned chunk");
        chunk->block.role = MEMORY_ROLE_PINNED;
 
        sgen_update_heap_boundaries ((mword)chunk, ((mword)chunk + size));
@@ -329,7 +331,7 @@ sgen_alloc_pinned (SgenPinnedAllocator *alc, size_t size)
                LargePinnedMemHeader *mh;
 
                size += sizeof (LargePinnedMemHeader);
-               mh = sgen_alloc_os_memory (size, TRUE);
+               mh = sgen_alloc_os_memory (size, SGEN_ALLOC_HEAP | SGEN_ALLOC_ACTIVATE, "large pinned object");
                mh->magic = LARGE_PINNED_MEM_HEADER_MAGIC;
                mh->size = size;
                /* FIXME: do a CAS here */
@@ -383,7 +385,7 @@ sgen_free_pinned (SgenPinnedAllocator *alc, void *addr, size_t size)
        g_assert (mh->size == size + sizeof (LargePinnedMemHeader));
        /* FIXME: do a CAS */
        large_pinned_bytes_alloced -= mh->size;
-       sgen_free_os_memory (mh, mh->size);
+       sgen_free_os_memory (mh, mh->size, SGEN_ALLOC_HEAP);
 }
 
 void
index 6b798f2ce6b2658f88ff382b8694af335f146eff..ae9249b718e48afe86eae3206f1fe7deb10c550c 100644 (file)
@@ -28,6 +28,7 @@
 
 #include "metadata/sgen-gc.h"
 #include "metadata/sgen-pinning.h"
+#include "metadata/sgen-hash-table.h"
 
 
 typedef struct _PinStatAddress PinStatAddress;
@@ -98,7 +99,7 @@ sgen_pin_stats_register_address (char *addr, int pin_type)
                        node_ptr = &node->right;
        }
 
-       node = sgen_alloc_internal_dynamic (sizeof (PinStatAddress), INTERNAL_MEM_STATISTICS);
+       node = sgen_alloc_internal_dynamic (sizeof (PinStatAddress), INTERNAL_MEM_STATISTICS, TRUE);
        node->addr = addr;
        node->pin_types = pin_type_bit;
        node->left = node->right = NULL;
@@ -165,7 +166,7 @@ sgen_pin_stats_register_object (char *obj, size_t size)
        int pin_types = 0;
        ObjectList *list;
 
-       list = sgen_alloc_internal_dynamic (sizeof (ObjectList), INTERNAL_MEM_STATISTICS);
+       list = sgen_alloc_internal_dynamic (sizeof (ObjectList), INTERNAL_MEM_STATISTICS, TRUE);
        pin_stats_count_object_from_tree (obj, size, pin_stat_addresses, &pin_types);
        list->obj = (MonoObject*)obj;
        list->next = pinned_objects;
index 68e8cf46e8745edbfe1dbd738d325f46d79f1039..0484500798a5ed5602b1fb7c10ea4bfd2ace4572 100644 (file)
@@ -53,7 +53,7 @@ static void
 realloc_pin_queue (void)
 {
        int new_size = pin_queue_size? pin_queue_size + pin_queue_size/2: 1024;
-       void **new_pin = sgen_alloc_internal_dynamic (sizeof (void*) * new_size, INTERNAL_MEM_PIN_QUEUE);
+       void **new_pin = sgen_alloc_internal_dynamic (sizeof (void*) * new_size, INTERNAL_MEM_PIN_QUEUE, TRUE);
        memcpy (new_pin, pin_queue, sizeof (void*) * next_pin_slot);
        sgen_free_internal_dynamic (pin_queue, sizeof (void*) * pin_queue_size, INTERNAL_MEM_PIN_QUEUE);
        pin_queue = new_pin;
index 0cd38e07f50cc36e48777e430eb0b92e4f6749b7..7eb62e974345d2a894d5b5bdd92179a0167c724d 100644 (file)
@@ -66,7 +66,7 @@ binary_protocol_flush_buffers_rec (BinaryProtocolBuffer *buffer)
        g_assert (buffer->index > 0);
        fwrite (buffer->buffer, 1, buffer->index, binary_protocol_file);
 
-       sgen_free_os_memory (buffer, sizeof (BinaryProtocolBuffer));
+       sgen_free_os_memory (buffer, sizeof (BinaryProtocolBuffer), SGEN_ALLOC_INTERNAL);
 }
 
 void
@@ -94,12 +94,12 @@ binary_protocol_get_buffer (int length)
        if (buffer && buffer->index + length <= BINARY_PROTOCOL_BUFFER_SIZE)
                return buffer;
 
-       new_buffer = sgen_alloc_os_memory (sizeof (BinaryProtocolBuffer), TRUE);
+       new_buffer = sgen_alloc_os_memory (sizeof (BinaryProtocolBuffer), SGEN_ALLOC_INTERNAL | SGEN_ALLOC_ACTIVATE, "debugging memory");
        new_buffer->next = buffer;
        new_buffer->index = 0;
 
        if (InterlockedCompareExchangePointer ((void**)&binary_protocol_buffers, new_buffer, buffer) != buffer) {
-               sgen_free_os_memory (new_buffer, sizeof (BinaryProtocolBuffer));
+               sgen_free_os_memory (new_buffer, sizeof (BinaryProtocolBuffer), SGEN_ALLOC_INTERNAL);
                goto retry;
        }
 
index 0b7519a27289df19bec4e1ab614852b02a4a5d17..e7c172d648813c4c5dd9f47bc5f6a3c54cbbed8e 100644 (file)
@@ -116,7 +116,7 @@ evacuate_remset_buffer (void)
 static RememberedSet*
 sgen_alloc_remset (int size, gpointer id, gboolean global)
 {
-       RememberedSet* res = sgen_alloc_internal_dynamic (sizeof (RememberedSet) + (size * sizeof (gpointer)), INTERNAL_MEM_REMSET);
+       RememberedSet* res = sgen_alloc_internal_dynamic (sizeof (RememberedSet) + (size * sizeof (gpointer)), INTERNAL_MEM_REMSET, TRUE);
        res->store_next = res->data;
        res->end_set = res->data + size;
        res->next = NULL;
@@ -365,7 +365,7 @@ remset_stats (void)
        for (remset = global_remset; remset; remset = remset->next)
                size += remset->store_next - remset->data;
 
-       bumper = addresses = sgen_alloc_internal_dynamic (sizeof (mword) * size, INTERNAL_MEM_STATISTICS);
+       bumper = addresses = sgen_alloc_internal_dynamic (sizeof (mword) * size, INTERNAL_MEM_STATISTICS, TRUE);
 
        FOREACH_THREAD (info) {
                for (remset = info->remset; remset; remset = remset->next)
index cd53191df22e3b6d2309209f87e5c3ec0ac2d875..ec1cb8be3e6df9a842738745b03a7be4b95d79cb 100644 (file)
@@ -134,7 +134,8 @@ ensure_toggleref_capacity (int capacity)
                toggleref_array_capacity = 32;
                toggleref_array = sgen_alloc_internal_dynamic (
                        toggleref_array_capacity * sizeof (MonoGCToggleRef),
-                       INTERNAL_MEM_TOGGLEREF_DATA);   
+                       INTERNAL_MEM_TOGGLEREF_DATA,
+                       TRUE);
        }
        if (toggleref_array_size + capacity >= toggleref_array_capacity) {
                MonoGCToggleRef *tmp;
@@ -144,7 +145,8 @@ ensure_toggleref_capacity (int capacity)
 
                tmp = sgen_alloc_internal_dynamic (
                        toggleref_array_capacity * sizeof (MonoGCToggleRef),
-                       INTERNAL_MEM_TOGGLEREF_DATA);
+                       INTERNAL_MEM_TOGGLEREF_DATA,
+                       TRUE);
 
                memcpy (tmp, toggleref_array, toggleref_array_size * sizeof (MonoGCToggleRef));
 
index 819133545e05c07fd5a810e869daed83e5f36b35..dcb08f45f7e303dfa4e1f1a2cc2b18e71a0f3b0f 100644 (file)
@@ -344,7 +344,7 @@ sgen_workers_init (int num_workers)
 
        workers_num = num_workers;
 
-       workers_data = sgen_alloc_internal_dynamic (sizeof (WorkerData) * num_workers, INTERNAL_MEM_WORKER_DATA);
+       workers_data = sgen_alloc_internal_dynamic (sizeof (WorkerData) * num_workers, INTERNAL_MEM_WORKER_DATA, TRUE);
        memset (workers_data, 0, sizeof (WorkerData) * num_workers);
 
        MONO_SEM_INIT (&workers_waiting_sem, 0);
index ad2b3de06a0e155fe9558b6f2cd67bcba1f5f273..1eb527e00fc72013b136c9e4660051d0580fb778 100644 (file)
@@ -574,8 +574,8 @@ socket_io_add (MonoAsyncResult *ares, MonoSocketAsyncResult *state)
 
        mono_g_hash_table_replace (data->sock_to_state, state->handle, list);
        ievt = get_events_from_list (list);
-       LeaveCriticalSection (&data->io_lock);
        data->modify (data->event_data, fd, state->operation, ievt, is_new);
+        LeaveCriticalSection (&data->io_lock);
 }
 
 #ifndef DISABLE_SOCKETS
index 26ab1f4df16c9f5594ec25cb71b7b2947425d8e4..9027c119591e43487b0417ac3362ae43c81df0b5 100644 (file)
@@ -217,7 +217,7 @@ void mono_thread_interruption_checkpoint (void) MONO_INTERNAL;
 void mono_thread_force_interruption_checkpoint (void) MONO_INTERNAL;
 gint32* mono_thread_interruption_request_flag (void) MONO_INTERNAL;
 
-uint32_t mono_alloc_special_static_data (uint32_t static_type, uint32_t size, uint32_t align, uintptr_t *bitmap, int max_set) MONO_INTERNAL;
+uint32_t mono_alloc_special_static_data (uint32_t static_type, uint32_t size, uint32_t align, uintptr_t *bitmap, int numbits) MONO_INTERNAL;
 void*    mono_get_special_static_data   (uint32_t offset) MONO_INTERNAL;
 gpointer mono_get_special_static_data_for_thread (MonoInternalThread *thread, guint32 offset) MONO_INTERNAL;
 
index e3b9e1a569dd3eccfe36042ab9c0aea4d3de9da0..0b1d72f05b78f371d264a78632054bb0363c6d64 100644 (file)
@@ -751,7 +751,7 @@ MonoInternalThread* mono_thread_create_internal (MonoDomain *domain, gpointer fu
        internal->apartment_state=ThreadApartmentState_Unknown;
        internal->thread_pinning_ref = internal;
        internal->managed_id = get_next_managed_thread_id ();
-       MONO_GC_REGISTER_ROOT (internal->thread_pinning_ref);
+       MONO_GC_REGISTER_ROOT_PINNING (internal->thread_pinning_ref);
 
        internal->synch_cs = g_new0 (CRITICAL_SECTION, 1);
        InitializeCriticalSection (internal->synch_cs);
@@ -763,6 +763,9 @@ MonoInternalThread* mono_thread_create_internal (MonoDomain *domain, gpointer fu
        if (handle_store (thread))
                ResumeThread (thread_handle);
 
+       /* Check that the managed and unmanaged layout of MonoInternalThread matches */
+       g_assert (((char*)&internal->unused2 - (char*)internal) == mono_defaults.internal_thread_class->fields [mono_defaults.internal_thread_class->field.count - 1].offset);
+
        return internal;
 }
 
@@ -878,7 +881,7 @@ mono_thread_attach (MonoDomain *domain)
        thread->apartment_state=ThreadApartmentState_Unknown;
        thread->thread_pinning_ref = thread;
        thread->managed_id = get_next_managed_thread_id ();
-       MONO_GC_REGISTER_ROOT (thread->thread_pinning_ref);
+       MONO_GC_REGISTER_ROOT_PINNING (thread->thread_pinning_ref);
 
        thread->stack_ptr = &tid;
 
@@ -1046,7 +1049,7 @@ HANDLE ves_icall_System_Threading_Thread_Thread_internal(MonoThread *this,
                internal->handle=thread;
                internal->tid=tid;
                internal->thread_pinning_ref = internal;
-               MONO_GC_REGISTER_ROOT (internal->thread_pinning_ref);
+               MONO_GC_REGISTER_ROOT_PINNING (internal->thread_pinning_ref);
                
 
                /* Don't call handle_store() here, delay it to Start.
@@ -3688,7 +3691,7 @@ search_tls_slot_in_freelist (StaticDataInfo *static_data, guint32 size, guint32
 }
 
 static void
-update_tls_reference_bitmap (guint32 offset, uintptr_t *bitmap, int max_set)
+update_tls_reference_bitmap (guint32 offset, uintptr_t *bitmap, int numbits)
 {
        int i;
        int idx = (offset >> 24) - 1;
@@ -3699,7 +3702,7 @@ update_tls_reference_bitmap (guint32 offset, uintptr_t *bitmap, int max_set)
        offset &= 0xffffff;
        offset /= sizeof (gpointer);
        /* offset is now the bitmap offset */
-       for (i = 0; i < max_set; ++i) {
+       for (i = 0; i < numbits; ++i) {
                if (bitmap [i / sizeof (uintptr_t)] & (1L << (i & (sizeof (uintptr_t) * 8 -1))))
                        rb [(offset + i) / (sizeof (uintptr_t) * 8)] |= (1L << ((offset + i) & (sizeof (uintptr_t) * 8 -1)));
        }
@@ -3729,7 +3732,7 @@ clear_reference_bitmap (guint32 offset, guint32 size)
  */
 
 guint32
-mono_alloc_special_static_data (guint32 static_type, guint32 size, guint32 align, uintptr_t *bitmap, int max_set)
+mono_alloc_special_static_data (guint32 static_type, guint32 size, guint32 align, uintptr_t *bitmap, int numbits)
 {
        guint32 offset;
        if (static_type == SPECIAL_STATIC_THREAD) {
@@ -3743,7 +3746,7 @@ mono_alloc_special_static_data (guint32 static_type, guint32 size, guint32 align
                } else {
                        offset = mono_alloc_static_data_slot (&thread_static_info, size, align);
                }
-               update_tls_reference_bitmap (offset, bitmap, max_set);
+               update_tls_reference_bitmap (offset, bitmap, numbits);
                /* This can be called during startup */
                if (threads != NULL)
                        mono_g_hash_table_foreach (threads, alloc_thread_static_data_helper, GUINT_TO_POINTER (offset));
@@ -3886,7 +3889,7 @@ mono_thread_alloc_tls (MonoReflectionType *type)
        /* TlsDatum is a struct, so we subtract the object header size offset */
        bitmap = mono_class_compute_bitmap (klass, default_bitmap, sizeof (default_bitmap) * 8, - (int)(sizeof (MonoObject) / sizeof (gpointer)), &max_set, FALSE);
        size = mono_type_size (type->type, &align);
-       tls_offset = mono_alloc_special_static_data (SPECIAL_STATIC_THREAD, size, align, (uintptr_t*)bitmap, max_set);
+       tls_offset = mono_alloc_special_static_data (SPECIAL_STATIC_THREAD, size, align, (uintptr_t*)bitmap, max_set + 1);
        if (bitmap != default_bitmap)
                g_free (bitmap);
        tlsrec = g_new0 (MonoTlsDataRecord, 1);
index a88f66b949930ba4ffe663692c85dcbe72704862..12bf0067c8e4f6b25947e0e78bbbe13845490c97 100644 (file)
@@ -3165,14 +3165,14 @@ do_invoke_method (VerifyContext *ctx, int method_token, gboolean virtual)
                ILStackDesc copy;
 
                if (mono_method_is_constructor (method) && !method->klass->valuetype) {
-                       if (!mono_method_is_constructor (ctx->method))
+                       if (IS_STRICT_MODE (ctx) && !mono_method_is_constructor (ctx->method))
                                CODE_NOT_VERIFIABLE (ctx, g_strdup_printf ("Cannot call a constructor outside one at 0x%04x", ctx->ip_offset));
-                       if (method->klass != ctx->method->klass->parent && method->klass != ctx->method->klass)
+                       if (IS_STRICT_MODE (ctx) && method->klass != ctx->method->klass->parent && method->klass != ctx->method->klass)
                                CODE_NOT_VERIFIABLE (ctx, g_strdup_printf ("Cannot call a constructor of a type different from this or super at 0x%04x", ctx->ip_offset));
 
                        ctx->super_ctor_called = TRUE;
                        value = stack_pop_safe (ctx);
-                       if ((value->stype & THIS_POINTER_MASK) != THIS_POINTER_MASK)
+                       if (IS_STRICT_MODE (ctx) && (value->stype & THIS_POINTER_MASK) != THIS_POINTER_MASK)
                                CODE_NOT_VERIFIABLE (ctx, g_strdup_printf ("Invalid 'this ptr' argument for constructor at 0x%04x", ctx->ip_offset));
                } else {
                        value = stack_pop (ctx);
index eee3604facaca452b4855348613a1d4dff035221..068907b2cc64e73e474a637d8b139d8c01103892 100644 (file)
@@ -92,12 +92,12 @@ if JIT_SUPPORTED
 if SUPPORT_SGEN
 sgen_binaries = mono-sgen
 sgen_libraries = libmonosgen-2.0.la
-sgen_static_libraries = libmonosgen-static.la
+sgen_static_libraries = libmini-static.la $(sgenstatic_libs)
 endif
 
 if SUPPORT_BOEHM
 boehm_libraries = libmono-2.0.la
-boehm_static_libraries = libmono-static.la
+boehm_static_libraries = libmini-static.la $(static_libs)
 boehm_binaries  = mono
 endif
 
@@ -119,9 +119,9 @@ endif
 lib_LTLIBRARIES = $(shared_libraries)
 
 if DISABLE_EXECUTABLES
-noinst_LTLIBRARIES =
+noinst_LTLIBRARIES = libmini.la
 else
-noinst_LTLIBRARIES = $(boehm_static_libraries) $(sgen_static_libraries)
+noinst_LTLIBRARIES = libmini.la libmini-static.la
 endif
 
 if MOONLIGHT
@@ -148,22 +148,22 @@ endif
 mono_SOURCES = \
        main.c
 
-mono_CFLAGS = $(AM_CFLAGS) $(BOEHM_DEFINES)
+mono_CFLAGS = $(AM_CFLAGS)
 
-INCLUDES = $(LIBGC_CPPFLAGS)
+AM_CPPFLAGS = $(LIBGC_CPPFLAGS)
 
 mono_sgen_SOURCES = $(mono_SOURCES)
-mono_sgen_CFLAGS = $(SGEN_DEFINES) $(AM_CFLAGS)
+mono_sgen_CFLAGS = $(AM_CFLAGS)
 
 # We build this after libmono was built so it contains the date when the final
 # link was done
 if SUPPORT_BOEHM
-buildver.h: libmono-static.la
+buildver.h: libmini-static.la
        @echo "const char *build_date = \"`date`\";" > buildver.h
 mono-main.$(OBJEXT): buildver.h
 endif
 
-buildver-sgen.h: libmonosgen-static.la
+buildver-sgen.h: libmini-static.la
        @echo "const char *build_date = \"`date`\";" > buildver-sgen.h
 mono_sgen-main.$(OBJEXT): buildver-sgen.h
 
@@ -182,8 +182,8 @@ endif
 if STATIC_MONO
 # Link libmono into mono statically
 # This leads to higher performance, especially with TLS
-MONO_LIB=libmono-static.la
-MONO_SGEN_LIB=libmonosgen-static.la
+MONO_LIB=$(boehm_static_libraries)
+MONO_SGEN_LIB=$(sgen_static_libraries)
 else 
 MONO_LIB=libmono-2.0.la
 MONO_SGEN_LIB=libmonosgen-2.0.la
@@ -411,7 +411,8 @@ test_sources =                      \
        generics.cs             \
        generics-variant-types.il\
        basic-simd.cs \
-       aot-tests.cs
+       aot-tests.cs \
+       gc-test.cs
 
 regtests=basic.exe basic-float.exe basic-long.exe basic-calls.exe objects.exe arrays.exe basic-math.exe exceptions.exe iltests.exe devirtualization.exe generics.exe basic-simd.exe
 
@@ -525,16 +526,19 @@ os_sources = $(darwin_sources) $(posix_sources)
 monobin_platform_ldflags=-framework CoreFoundation
 endif
 
-libmono_2_0_la_SOURCES = $(common_sources) $(llvm_sources) $(arch_sources) $(os_sources)
+libmini_la_SOURCES = $(common_sources) $(llvm_sources) $(arch_sources) $(os_sources)
+libmini_la_CFLAGS = $(mono_CFLAGS)
+
+libmono_2_0_la_SOURCES =
 libmono_2_0_la_CFLAGS = $(mono_CFLAGS)
-libmono_2_0_la_LIBADD = $(libs) $(LIBMONO_DTRACE_OBJECT)
+libmono_2_0_la_LIBADD = libmini.la $(libs) $(LIBMONO_DTRACE_OBJECT)
 
-libmonosgen_2_0_la_SOURCES = $(libmono_2_0_la_SOURCES)
+libmonosgen_2_0_la_SOURCES =
 libmonosgen_2_0_la_CFLAGS = $(mono_sgen_CFLAGS)
-libmonosgen_2_0_la_LIBADD = $(sgen_libs) $(LIBMONO_DTRACE_OBJECT)
+libmonosgen_2_0_la_LIBADD = libmini.la $(sgen_libs) $(LIBMONO_DTRACE_OBJECT)
 
 if MOONLIGHT
-libmono_moon_la_SOURCES = $(libmono_2_0_la_SOURCES)
+libmono_moon_la_SOURCES = $(libmini_la_SOURCES)
 if MOONLIGHT_BOEHM
 libmono_moon_la_CFLAGS = $(mono_CFLAGS) $(MOONLIGHT_DEFINES)
 libmono_moon_la_LIBADD = $(moon_libs) $(libgc_libs) $(LIBMONO_DTRACE_OBJECT)
@@ -544,18 +548,14 @@ libmono_moon_la_LIBADD = $(moon_libs) $(LIBMONO_DTRACE_OBJECT)
 endif
 endif
 
-libmono_static_la_SOURCES = $(libmono_2_0_la_SOURCES)
-libmono_static_la_CFLAGS = $(mono_CFLAGS)
-libmono_static_la_LDFLAGS = -static
-libmono_static_la_LIBADD = $(static_libs) $(MONO_DTRACE_OBJECT)
-
-libmonosgen_static_la_SOURCES = $(libmono_2_0_la_SOURCES)
-libmonosgen_static_la_CFLAGS = $(mono_sgen_CFLAGS)
-libmonosgen_static_la_LDFLAGS = -static
-libmonosgen_static_la_LIBADD = $(sgenstatic_libs) $(MONO_DTRACE_OBJECT)
-
-nodist_libmono_static_la_SOURCES = $(nodist_libmono_la_SOURCES)
-nodist_libmono_static_la_CFLAGS = $(mono_CFLAGS)
+#
+# This library is shared between mono and mono-sgen, since the code in mini/ doesn't contain
+# compile time dependencies on boehm/sgen.
+#
+libmini_static_la_SOURCES = $(libmini_la_SOURCES)
+libmini_static_la_CFLAGS = $(AM_CFLAGS)
+libmini_static_la_LDFLAGS = -static
+libmini_static_la_LIBADD = $(MONO_DTRACE_OBJECT)
 
 libmonoincludedir = $(includedir)/mono-$(API_VER)/mono/jit
 
@@ -650,13 +650,16 @@ checktests: $(regtests)
 rcheck: mono $(regtests)
        $(RUNTIME) --regression $(regtests)
 
+gctest: mono gc-test.exe
+       MONO_DEBUG_OPTIONS=clear-nursery-at-gc $(RUNTIME) --regression gc-test.exe
+
 LLVM_AOT_RUNTIME_OPTS=$(if $(LLVM),--llvm,)
 
 aotcheck: mono $(regtests)
-       rm -f *.exe.so
+       rm -f *.exe.so *.exe.dylib *.exe.dylib.dSYM
        $(RUNTIME) $(LLVM_AOT_RUNTIME_OPTS) --aot $(regtests) || exit 1
        for i in $(regtests); do $(RUNTIME_AOTCHECK) --regression $$i || exit 1; done
-       rm -f *.exe.so
+       rm -f *.exe.so *.exe.dylib *.exe.dylib.dSYM
 
 llvmaotcheck:
        $(MAKE) aotcheck LLVM=1
index 0972981aae0ef7cd0153ed3a1e11652e975a1721..9502e543c77e61f9e22497bc883a6b1bb815ffe6 100644 (file)
@@ -80,9 +80,9 @@
 
 #ifdef TARGET_WIN32
 #define SHARED_EXT ".dll"
-#elif defined(__ppc__) && defined(__APPLE__)
+#elif defined(__ppc__) && defined(TARGET_MACH)
 #define SHARED_EXT ".dylib"
-#elif defined(__APPLE__) && defined(TARGET_X86) && !defined(__native_client_codegen__)
+#elif defined(TARGET_MACH) && defined(TARGET_X86) && !defined(__native_client_codegen__)
 #define SHARED_EXT ".dylib"
 #else
 #define SHARED_EXT ".so"
@@ -407,7 +407,7 @@ static void
 emit_string_symbol (MonoAotCompile *acfg, const char *name, const char *value)
 {
        img_writer_emit_section_change (acfg->w, RODATA_SECT, 1);
-#ifdef __APPLE__
+#ifdef TARGET_MACH
        /* On apple, all symbols need to be aligned to avoid warnings from ld */
        emit_alignment (acfg, 4);
 #endif
@@ -531,7 +531,7 @@ encode_sleb128 (gint32 value, guint8 *buf, guint8 **endbuf)
 #endif
 
 #ifdef TARGET_ARM
-#ifdef __MACH__
+#ifdef TARGET_MACH
 #define AOT_TARGET_STR "ARM (MACH)"
 #else
 #define AOT_TARGET_STR "ARM (!MACH)"
@@ -587,7 +587,7 @@ arch_init (MonoAotCompile *acfg)
                g_string_append (acfg->llc_args, "-mattr=+v6");
        } else {
 #ifdef ARM_FPU_VFP
-               g_string_append (acfg->llc_args, " -mattr=+vfp2,+d16");
+               g_string_append (acfg->llc_args, " -mattr=+vfp2,-neon,+d16");
                g_string_append (acfg->as_args, " -mfpu=vfp3");
 #else
                g_string_append (acfg->llc_args, " -soft-float");
@@ -600,7 +600,7 @@ arch_init (MonoAotCompile *acfg)
                mono_arch_set_target (acfg->aot_opts.mtriple);
 #endif
 
-#ifdef __APPLE__
+#ifdef TARGET_MACH
        acfg->llvm_label_prefix = "_";
        acfg->need_no_dead_strip = TRUE;
 #endif
@@ -2513,7 +2513,7 @@ is_plt_patch (MonoJumpInfo *patch_info)
 static char*
 get_plt_symbol (MonoAotCompile *acfg, int plt_offset, MonoJumpInfo *patch_info)
 {
-#ifdef __APPLE__
+#ifdef TARGET_MACH
        /* 
         * The Apple linker reorganizes object files, so it doesn't like branches to local
         * labels, since those have no relocations.
@@ -2749,7 +2749,7 @@ can_marshal_struct (MonoClass *klass)
 
        /* Special cases */
        /* Its hard to compute whenever these can be marshalled or not */
-       if (!strcmp (klass->name_space, "System.Net.NetworkInformation.MacOsStructs"))
+       if (!strcmp (klass->name_space, "System.Net.NetworkInformation.MacOsStructs") && strcmp (klass->name, "sockaddr_dl"))
                return TRUE;
 
        return can_marshal;
@@ -3024,7 +3024,7 @@ add_wrappers (MonoAotCompile *acfg)
                                int j;
 
                                for (j = 0; j < cattr->num_attrs; ++j)
-                                       if (cattr->attrs [j].ctor && !strcmp (cattr->attrs [j].ctor->klass->name, "MonoNativeFunctionWrapperAttribute"))
+                                       if (cattr->attrs [j].ctor && (!strcmp (cattr->attrs [j].ctor->klass->name, "MonoNativeFunctionWrapperAttribute") || !strcmp (cattr->attrs [j].ctor->klass->name, "UnmanagedFunctionPointerAttribute")))
                                                break;
                                if (j < cattr->num_attrs)
                                        add_method (acfg, mono_marshal_get_native_func_wrapper_aot (klass));
@@ -3838,7 +3838,7 @@ emit_and_reloc_code (MonoAotCompile *acfg, MonoMethod *method, guint8 *code, gui
                                                        direct_pinvoke = get_pinvoke_import (acfg, patch_info->data.method);
                                                if (direct_pinvoke) {
                                                        const char*prefix;
-#if defined(__APPLE__)
+#if defined(TARGET_MACH)
                                                        prefix = "_";
 #else
                                                        prefix = "";
@@ -4804,7 +4804,7 @@ emit_plt (MonoAotCompile *acfg)
                        }
 
                        if (debug_sym) {
-#if defined(__APPLE__)
+#if defined(TARGET_MACH)
                                fprintf (acfg->fp, "    .thumb_func %s\n", debug_sym);
                                fprintf (acfg->fp, "    .no_dead_strip %s\n", debug_sym);
 #endif
@@ -5838,7 +5838,7 @@ mono_aot_get_plt_symbol (MonoJumpInfoType type, gconstpointer data)
        plt_entry = get_plt_entry (llvm_acfg, ji);
        plt_entry->llvm_used = TRUE;
 
-#if defined(__APPLE__)
+#if defined(TARGET_MACH)
        return g_strdup_printf (plt_entry->llvm_symbol + strlen (llvm_acfg->llvm_label_prefix));
 #else
        return g_strdup_printf (plt_entry->llvm_symbol);
@@ -6867,7 +6867,7 @@ emit_globals (MonoAotCompile *acfg)
 
                sprintf (symbol, "name_%d", i);
                emit_section_change (acfg, RODATA_SECT, 1);
-#ifdef __APPLE__
+#ifdef TARGET_MACH
                emit_alignment (acfg, 4);
 #endif
                emit_label (acfg, symbol);
@@ -7043,7 +7043,7 @@ emit_file_info (MonoAotCompile *acfg)
        for (i = 0; i < MONO_AOT_TRAMP_NUM; ++i)
                emit_int32 (acfg, acfg->trampoline_size [i]);
 
-#if defined (TARGET_ARM) && defined (__APPLE__)
+#if defined (TARGET_ARM) && defined (TARGET_MACH)
        {
                MonoType t;
                int align = 0;
@@ -7071,7 +7071,7 @@ emit_file_info (MonoAotCompile *acfg)
                 * mono_aot_register_module (). The symbol points to a pointer to the the file info
                 * structure.
                 */
-#if defined(__APPLE__) && !defined(__native_client_codegen__)
+#if defined(TARGET_MACH) && !defined(__native_client_codegen__)
                sprintf (symbol, "_mono_aot_module_%s_info", acfg->image->assembly->aname.name);
 #else
                sprintf (symbol, "mono_aot_module_%s_info", acfg->image->assembly->aname.name);
@@ -7258,7 +7258,7 @@ compile_asm (MonoAotCompile *acfg)
 #define LD_OPTIONS "-m elf64ppc"
 #elif defined(sparc) && SIZEOF_VOID_P == 8
 #define AS_OPTIONS "-xarch=v9"
-#elif defined(TARGET_X86) && defined(__APPLE__) && !defined(__native_client_codegen__)
+#elif defined(TARGET_X86) && defined(TARGET_MACH) && !defined(__native_client_codegen__)
 #define AS_OPTIONS "-arch i386 -W"
 #else
 #define AS_OPTIONS ""
@@ -7321,11 +7321,11 @@ compile_asm (MonoAotCompile *acfg)
 
 #if defined(sparc)
        command = g_strdup_printf ("ld -shared -G -o %s %s.o", tmp_outfile_name, acfg->tmpfname);
-#elif defined(__ppc__) && defined(__APPLE__)
+#elif defined(__ppc__) && defined(TARGET_MACH)
        command = g_strdup_printf ("gcc -dynamiclib -o %s %s.o", tmp_outfile_name, acfg->tmpfname);
 #elif defined(HOST_WIN32)
        command = g_strdup_printf ("gcc -shared --dll -mno-cygwin -o %s %s.o", tmp_outfile_name, acfg->tmpfname);
-#elif defined(TARGET_X86) && defined(__APPLE__) && !defined(__native_client_codegen__)
+#elif defined(TARGET_X86) && defined(TARGET_MACH) && !defined(__native_client_codegen__)
        command = g_strdup_printf ("gcc -m32 -dynamiclib -o %s %s.o", tmp_outfile_name, acfg->tmpfname);
 #else
        command = g_strdup_printf ("%sld %s %s -shared -o %s %s.o", tool_prefix, EH_LD_OPTIONS, LD_OPTIONS, tmp_outfile_name, acfg->tmpfname);
@@ -7346,7 +7346,7 @@ compile_asm (MonoAotCompile *acfg)
        system (com);
        g_free (com);*/
 
-#if defined(TARGET_ARM) && !defined(__APPLE__)
+#if defined(TARGET_ARM) && !defined(TARGET_MACH)
        /* 
         * gas generates 'mapping symbols' each time code and data is mixed, which 
         * happens a lot in emit_and_reloc_code (), so we need to get rid of them.
@@ -7364,7 +7364,7 @@ compile_asm (MonoAotCompile *acfg)
 
        rename (tmp_outfile_name, outfile_name);
 
-#if defined(__APPLE__)
+#if defined(TARGET_MACH)
        command = g_strdup_printf ("dsymutil %s", outfile_name);
        printf ("Generating debug symbols: %s\n", command);
        if (system (command) != 0) {
@@ -7711,6 +7711,7 @@ mono_compile_assembly (MonoAssembly *ass, guint32 opts, const char *aot_options)
                 */
                sprintf (symbol, "thumb_end");
                emit_section_change (acfg, ".text", 0);
+               emit_alignment (acfg, 8);
                emit_label (acfg, symbol);
                emit_zero_bytes (acfg, 16);
 
index b1f91172321f48a6eeb57e8ab740d764048f4b5a..67a35426e290547fa612bd3164cf56abda8dce7b 100644 (file)
@@ -727,7 +727,7 @@ class Tests {
                return 0;
        }
 
-       public static int long_indices () {
+       public static int test_0_long_indices () {
                int[] arr = new int [10];
                int[,] arr2 = new int [10, 10];
                long index = 1;
@@ -739,6 +739,16 @@ class Tests {
                        return 2;
                return 0;
        }
+
+       // #7438
+       public static int test_0_ldelema_2_64bit () {
+        bool[,] test = new bool[201,201];
+        int x,y;
+        for(x=-100;x<100;x++) for(y=-100;y<100;y++){
+            test[x+100,y+100] = true;
+        }
+               return 0;
+       }               
 }
 
 
index 4b961766993e47c9e8406406a521ce0d78f9eb70..1909ba6e3ee68128fca8e7bbe24aad9d27f3f3b8 100644 (file)
@@ -55,7 +55,9 @@ break: len:4
 jmp: len:92
 br: len:4
 switch: src1:i len:8
-seq_point: len:38
+# See the comment in resume_from_signal_handler, we can't copy the fp regs from sigctx to MonoContext on linux,
+# since the corresponding sigctx structures are not well defined.
+seq_point: len:38 clob:c
 
 throw: src1:i len:24
 rethrow: src1:i len:20
index b9d5cd4491365a1ae2aa69eaccc58f9840ecae4c..b5d3484cdeafcb1244cd7ff9ecc2662c7380efe1 100644 (file)
@@ -76,6 +76,7 @@ int WSAAPI getnameinfo(const struct sockaddr*,socklen_t,char*,DWORD,
 #include <mono/utils/mono-error-internals.h>
 #include <mono/utils/mono-stack-unwinding.h>
 #include <mono/utils/mono-time.h>
+#include <mono/utils/mono-threads.h>
 #include "debugger-agent.h"
 #include "mini.h"
 
@@ -87,10 +88,6 @@ int WSAAPI getnameinfo(const struct sockaddr*,socklen_t,char*,DWORD,
 #define DISABLE_DEBUGGER_AGENT 1
 #endif
 
-#if defined(__MACH__)
-#include <mono/utils/mono-threads.h>
-#endif
-
 #ifndef DISABLE_DEBUGGER_AGENT
 
 #include <mono/io-layer/mono-mutex.h>
@@ -975,11 +972,6 @@ mono_debugger_agent_init (void)
 
        if (!agent_config.onuncaught && !agent_config.onthrow)
                finish_agent_init (TRUE);
-
-       /* FIXME: Is this still needed ? */
-#if defined(__MACH__)
-       mono_thread_info_disable_new_interrupt (TRUE);
-#endif
 }
 
 /*
@@ -2460,8 +2452,10 @@ mono_debugger_agent_thread_interrupt (void *sigctx, MonoJitInfo *ji)
                return FALSE;
 
        tls = mono_native_tls_get_value (debugger_tls_id);
-       if (!tls)
-               return FALSE;
+       if (!tls) {
+               DEBUG (1, fprintf (log_file, "[%p] Received interrupt with no TLS, continuing.\n", (gpointer)GetCurrentThreadId ()));
+               return FALSE;
+       }
 
        return thread_interrupt (tls, NULL, sigctx, ji);
 }
@@ -2550,11 +2544,13 @@ notify_thread (gpointer key, gpointer value, gpointer user_data)
                mono_thread_info_resume (mono_thread_info_get_tid (info));
        } else {
                res = mono_thread_kill (thread, mono_thread_get_abort_signal ());
-               if (res)
+               if (res) {
+                       DEBUG(1, fprintf (log_file, "[%p] mono_thread_kill () failed for %p: %d...\n", (gpointer)GetCurrentThreadId (), (gpointer)tid, res));
                        /* 
                         * Attached thread which died without detaching.
                         */
                        tls->terminated = TRUE;
+               }
        }
 #endif
 }
index d9b05a469dee89a08df41fe48c4fc52f8413c4a8..7a4c4de4f62182987f8b7014fd246dff189ab226 100644 (file)
@@ -1171,9 +1171,11 @@ mini_trace_usage (void)
                 "    none                 No assemblies\n"
                 "    program              Entry point assembly\n"
                 "    assembly             Specifies an assembly\n"
+                "    wrapper              All wrappers bridging native and managed code\n"
                 "    M:Type:Method        Specifies a method\n"
                 "    N:Namespace          Specifies a namespace\n"
                 "    T:Type               Specifies a type\n"
+                "    E:Type               Specifies stack traces for an exception type\n"
                 "    EXPR                 Includes expression\n"
                 "    -EXPR                Excludes expression\n"
                 "    EXPR,EXPR            Multiple expressions\n"
index 23b422919a9b92bf6706161e3f880ec782dd3c70..f0cfe10d08856ff8b55aee7beb6b88b020354a9b 100644 (file)
@@ -762,7 +762,7 @@ emit_all_line_number_info (MonoDwarfWriter *w)
 
        g_assert (w->collect_line_info);
 
-       add_line_number_file_name (w, "xdb.il", 0, 0);
+       add_line_number_file_name (w, "<unknown>", 0, 0);
 
        /* Collect files */
        // FIXME: Revert list
index 95a83109f1343ccd0ffff915e428b969c69c794f..20d7ad41e4d3e9c54c46f27dbe92059fe0bcb51c 100644 (file)
@@ -24,6 +24,7 @@
 #endif  /* def HAVE_UCONTEXT_H */
 
 #include <mono/arch/arm/arm-codegen.h>
+#include <mono/arch/arm/arm-vfp-codegen.h>
 #include <mono/metadata/appdomain.h>
 #include <mono/metadata/tabledefs.h>
 #include <mono/metadata/threads.h>
@@ -59,6 +60,11 @@ mono_arch_get_restore_context (MonoTrampInfo **info, gboolean aot)
 
        ctx_reg = ARMREG_R0;
 
+#if defined(ARM_FPU_VFP)
+       ARM_ADD_REG_IMM8 (code, ARMREG_IP, ctx_reg, G_STRUCT_OFFSET (MonoContext, fregs));
+       ARM_FLDMD (code, ARM_VFP_D0, 16, ARMREG_IP);
+#endif
+
        /* move pc to PC */
        ARM_LDR_IMM (code, ARMREG_IP, ctx_reg, G_STRUCT_OFFSET (MonoContext, pc));
        ARM_STR_IMM (code, ARMREG_IP, ctx_reg, G_STRUCT_OFFSET (MonoContext, regs) + (ARMREG_PC * sizeof (mgreg_t)));
@@ -145,7 +151,7 @@ mono_arm_throw_exception (MonoObject *exc, mgreg_t pc, mgreg_t sp, mgreg_t *int_
        MONO_CONTEXT_SET_SP (&ctx, sp);
        MONO_CONTEXT_SET_IP (&ctx, pc);
        memcpy (((guint8*)&ctx.regs) + (ARMREG_R4 * sizeof (mgreg_t)), int_regs, 8 * sizeof (mgreg_t));
-       /* memcpy (&ctx.fregs, fp_regs, sizeof (double) * MONO_SAVED_FREGS); */
+       memcpy (&ctx.fregs, fp_regs, sizeof (double) * 16);
 
        if (mono_object_isinst (exc, mono_defaults.exception_class)) {
                MonoException *mono_ex = (MonoException*)exc;
@@ -199,6 +205,7 @@ get_throw_trampoline (int size, gboolean corlib, gboolean rethrow, gboolean llvm
        guint8 *code;
        MonoJumpInfo *ji = NULL;
        GSList *unwind_ops = NULL;
+       int cfa_offset;
 
        code = start = mono_global_codeman_reserve (size);
 
@@ -208,12 +215,26 @@ get_throw_trampoline (int size, gboolean corlib, gboolean rethrow, gboolean llvm
        ARM_MOV_REG_REG (code, ARMREG_IP, ARMREG_SP);
        ARM_PUSH (code, MONO_ARM_REGSAVE_MASK);
 
-       mono_add_unwind_op_def_cfa (unwind_ops, code, start, ARMREG_SP, MONO_ARM_NUM_SAVED_REGS * sizeof (mgreg_t));
+       cfa_offset = MONO_ARM_NUM_SAVED_REGS * sizeof (mgreg_t);
+       mono_add_unwind_op_def_cfa (unwind_ops, code, start, ARMREG_SP, cfa_offset);
        mono_add_unwind_op_offset (unwind_ops, code, start, ARMREG_LR, - sizeof (mgreg_t));
 
+       /* Save fp regs */
+       ARM_SUB_REG_IMM8 (code, ARMREG_SP, ARMREG_SP, sizeof (double) * 16);
+       cfa_offset += sizeof (double) * 16;
+       mono_add_unwind_op_def_cfa_offset (unwind_ops, code, start, cfa_offset);
+#if defined(ARM_FPU_VFP)
+       ARM_FSTMD (code, ARM_VFP_D0, 16, ARMREG_SP);
+#endif
+
+       /* Param area */
+       ARM_SUB_REG_IMM8 (code, ARMREG_SP, ARMREG_SP, 8);
+       cfa_offset += 8;
+       mono_add_unwind_op_def_cfa_offset (unwind_ops, code, start, cfa_offset);
+
        /* call throw_exception (exc, ip, sp, int_regs, fp_regs) */
        /* caller sp */
-       ARM_ADD_REG_IMM8 (code, ARMREG_R2, ARMREG_SP, MONO_ARM_NUM_SAVED_REGS * sizeof (mgreg_t));
+       ARM_ADD_REG_IMM8 (code, ARMREG_R2, ARMREG_SP, cfa_offset);
        /* exc is already in place in r0 */
        if (corlib) {
                /* The caller ip is already in R1 */
@@ -223,13 +244,13 @@ get_throw_trampoline (int size, gboolean corlib, gboolean rethrow, gboolean llvm
        } else {
                ARM_MOV_REG_REG (code, ARMREG_R1, ARMREG_LR); /* caller ip */
        }
-       /* FIXME: pointer to the saved fp regs */
-       /*pos = alloc_size - sizeof (double) * MONO_SAVED_FREGS;
-       ppc_addi (code, ppc_r7, ppc_sp, pos);*/
-       /* pointer to the saved int regs */
-       ARM_MOV_REG_REG (code, ARMREG_R3, ARMREG_SP); /* the pushed regs */
-       /* we encode rethrow in the ip, so we avoid args on the stack */
+       /* int regs */
+       ARM_ADD_REG_IMM8 (code, ARMREG_R3, ARMREG_SP, (cfa_offset - (MONO_ARM_NUM_SAVED_REGS * sizeof (mgreg_t))));
+       /* we encode rethrow in the ip */
        ARM_ORR_REG_IMM8 (code, ARMREG_R1, ARMREG_R1, rethrow);
+       /* fp regs */
+       ARM_ADD_REG_IMM8 (code, ARMREG_LR, ARMREG_SP, 8);
+       ARM_STR_IMM (code, ARMREG_LR, ARMREG_SP, 0);
 
        if (aot) {
                const char *icall_name;
index 69db085370eda4ab9fa5a8e8b2d048c2caf1b753..dc2cbb3f4452f1af4522cfb5a4ba71e56cd38b05 100644 (file)
@@ -809,7 +809,7 @@ mono_arch_find_jit_info (MonoDomain *domain, MonoJitTlsData *jit_tls,
                /* Pop arguments off the stack */
                /* 
                 * FIXME: LLVM doesn't push these, we can't use ji->from_llvm as it describes
-                * the caller.
+                * the callee.
                 */
 #ifndef ENABLE_LLVM
                if (ji->has_arch_eh_info)
index b71b0185d9b1f68ecf5011c953c5aa25f432c158..2ec1c0ab3ff0f314df1f949757c04c5032bfde37 100644 (file)
@@ -2,6 +2,7 @@ using System;
 using System.Reflection;
 using System.Runtime.CompilerServices;
 using System.Collections;
+using System.Threading;
 
 /*
  * Regression tests for the GC support in the JIT
@@ -564,4 +565,22 @@ class Tests {
                liveness_13_inner (ref arr);
                return 0;
        }
+
+       static ThreadLocal<object> tls;
+
+       [MethodImplAttribute (MethodImplOptions.NoInlining)]
+       static void alloc_tls_obj () {
+               tls = new ThreadLocal<object> ();
+               tls.Value = new object ();
+       }
+
+       public static int test_0_thread_local () {
+               alloc_tls_obj ();
+               GC.Collect ();
+               Type t = tls.Value.GetType ();
+               if (t == typeof (object))
+                       return 0;
+               else
+                       return 1;
+       }
 }
\ No newline at end of file
index 4c23b39a7c7b2d1d6838e2a88be918d366d464fd..b04319a467b527729e8d20726e5f6963a1ee9666 100644 (file)
@@ -941,4 +941,27 @@ class Tests {
 
                return 0;
        }
+
+       struct Record : Foo2<Record>.IRecord {
+               int counter;
+               int Foo2<Record>.IRecord.DoSomething () {
+                       return counter++;
+               }
+       }
+
+       class Foo2<T> where T : Foo2<T>.IRecord {
+               public interface IRecord {
+                       int DoSomething ();
+               }
+
+               public static int Extract (T[] t) {
+                       return t[0].DoSomething ();
+               }
+       }
+
+       public static int test_1_regress_constrained_iface_call_7571 () {
+        var r = new Record [10];
+        Foo2<Record>.Extract (r);
+               return Foo2<Record>.Extract (r);
+       }
 }
index 8b94da82d0344fd9f8fc97942c6c818d3094970d..c847d2d609ca6da004286685f27117a03741b278 100644 (file)
@@ -967,27 +967,6 @@ COND:   ldloc.0
                ret
        }
 
-#if !defined(__ppc__) && !defined(__powerpc__) && !defined(__arm__) && !defined(__sparc__) && !defined(__mips__)
-       // PPC handles overflow by clipping, but this test assumes
-       // no overflow handling.  According to ECMA the result of
-       // float->int conversion is undefined if overflow occurs, so
-       // both behaviours are valid.
-       .method public static int32 test_0_fconv_to_i () cil managed {
-               .maxstack 16
-
-               ldc.r8 2147483648.0
-               conv.i
-               ldc.i8 2147483648
-               conv.i
-               beq L1
-               ldc.i4.1
-               ret
-       L1:
-               ldc.i4.0
-               ret
-       }
-#endif
-
        .method public static int32 test_0_get_type_from_handle_on_bblock_boundary () cil managed 
        {
                .maxstack 16
index 1506972c78aeab7dab20127b7ac8b2f69839b026..de9413a871dcde746f3965788e0afb8f1598f300 100644 (file)
@@ -53,7 +53,7 @@
  * TARGET_ASM_GAS == GNU assembler
  */
 #if !defined(TARGET_ASM_APPLE) && !defined(TARGET_ASM_GAS)
-#if defined(__MACH__) && !defined(__native_client_codegen__)
+#if defined(TARGET_MACH) && !defined(__native_client_codegen__)
 #define TARGET_ASM_APPLE
 #else
 #define TARGET_ASM_GAS
@@ -63,7 +63,7 @@
 /*
  * Defines for the directives used by different assemblers
  */
-#if defined(TARGET_POWERPC) || defined(__MACH__)
+#if defined(TARGET_POWERPC) || defined(TARGET_MACH)
 #define AS_STRING_DIRECTIVE ".asciz"
 #else
 #define AS_STRING_DIRECTIVE ".string"
 #define USE_ELF_WRITER 1
 #endif
 
-#if defined(TARGET_ARM) && !defined(__MACH__)
+#if defined(TARGET_ARM) && !defined(TARGET_MACH)
 #define USE_ELF_WRITER 1
 #endif
 
index 2f75e4301b5e28c9a6077afa56d9ee461dc135e3..7f485f74f2a9da6ae01c23046bbcfc4000cd6860 100644 (file)
@@ -234,51 +234,48 @@ mono_llmult_ovf (gint64 a, gint64 b)
        return 0;
 }
 
-#if defined(MONO_ARCH_EMULATE_MUL_DIV) || defined(MONO_ARCH_EMULATE_DIV)
-
-gint32
-mono_idiv (gint32 a, gint32 b)
+gint64 
+mono_lldiv (gint64 a, gint64 b)
 {
        MONO_ARCH_SAVE_REGS;
 
 #ifdef MONO_ARCH_NEED_DIV_CHECK
        if (!b)
                mono_raise_exception (mono_get_exception_divide_by_zero ());
-       else if (b == -1 && a == (0x80000000))
-               mono_raise_exception (mono_get_exception_overflow ());
+       else if (b == -1 && a == (-9223372036854775807LL - 1LL))
+               mono_raise_exception (mono_get_exception_arithmetic ());
 #endif
        return a / b;
 }
 
-guint32
-mono_idiv_un (guint32 a, guint32 b)
+gint64 
+mono_llrem (gint64 a, gint64 b)
 {
        MONO_ARCH_SAVE_REGS;
 
 #ifdef MONO_ARCH_NEED_DIV_CHECK
        if (!b)
                mono_raise_exception (mono_get_exception_divide_by_zero ());
+       else if (b == -1 && a == (-9223372036854775807LL - 1LL))
+               mono_raise_exception (mono_get_exception_arithmetic ());
 #endif
-       return a / b;
+       return a % b;
 }
 
-gint32
-mono_irem (gint32 a, gint32 b)
+guint64 
+mono_lldiv_un (guint64 a, guint64 b)
 {
        MONO_ARCH_SAVE_REGS;
 
 #ifdef MONO_ARCH_NEED_DIV_CHECK
        if (!b)
                mono_raise_exception (mono_get_exception_divide_by_zero ());
-       else if (b == -1 && a == (0x80000000))
-               mono_raise_exception (mono_get_exception_overflow ());
 #endif
-
-       return a % b;
+       return a / b;
 }
 
-guint32
-mono_irem_un (guint32 a, guint32 b)
+guint64 
+mono_llrem_un (guint64 a, guint64 b)
 {
        MONO_ARCH_SAVE_REGS;
 
@@ -291,99 +288,94 @@ mono_irem_un (guint32 a, guint32 b)
 
 #endif
 
-#if defined(MONO_ARCH_EMULATE_MUL_DIV) || defined(MONO_ARCH_EMULATE_MUL_OVF)
-
-gint32
-mono_imul (gint32 a, gint32 b)
-{
-       MONO_ARCH_SAVE_REGS;
-
-       return a * b;
-}
+#ifndef MONO_ARCH_NO_EMULATE_LONG_SHIFT_OPS
 
-gint32
-mono_imul_ovf (gint32 a, gint32 b)
+guint64 
+mono_lshl (guint64 a, gint32 shamt)
 {
-       gint64 res;
-
-       MONO_ARCH_SAVE_REGS;
+       guint64 res;
 
-       res = (gint64)a * (gint64)b;
+       /* no need, no exceptions: MONO_ARCH_SAVE_REGS;*/
+       res = a << shamt;
 
-       if ((res > 0x7fffffffL) || (res < -2147483648LL))
-               mono_raise_exception (mono_get_exception_overflow ());
+       /*printf ("TESTL %lld << %d = %lld\n", a, shamt, res);*/
 
        return res;
 }
 
-gint32
-mono_imul_ovf_un (guint32 a, guint32 b)
+guint64 
+mono_lshr_un (guint64 a, gint32 shamt)
 {
        guint64 res;
 
-       MONO_ARCH_SAVE_REGS;
-
-       res = (guint64)a * (guint64)b;
+       /* no need, no exceptions: MONO_ARCH_SAVE_REGS;*/
+       res = a >> shamt;
 
-       if ((res >> 32))
-               mono_raise_exception (mono_get_exception_overflow ());
+       /*printf ("TESTR %lld >> %d = %lld\n", a, shamt, res);*/
 
        return res;
 }
-#endif
 
-#if defined(MONO_ARCH_EMULATE_MUL_DIV) || defined(MONO_ARCH_SOFT_FLOAT)
-double
-mono_fdiv (double a, double b)
+gint64 
+mono_lshr (gint64 a, gint32 shamt)
 {
-       MONO_ARCH_SAVE_REGS;
+       gint64 res;
 
-       return a / b;
+       /* no need, no exceptions: MONO_ARCH_SAVE_REGS;*/
+       res = a >> shamt;
+
+       /*printf ("TESTR %lld >> %d = %lld\n", a, shamt, res);*/
+
+       return res;
 }
+
 #endif
 
-gint64 
-mono_lldiv (gint64 a, gint64 b)
+#if defined(MONO_ARCH_EMULATE_MUL_DIV) || defined(MONO_ARCH_EMULATE_DIV)
+
+gint32
+mono_idiv (gint32 a, gint32 b)
 {
        MONO_ARCH_SAVE_REGS;
 
 #ifdef MONO_ARCH_NEED_DIV_CHECK
        if (!b)
                mono_raise_exception (mono_get_exception_divide_by_zero ());
-       else if (b == -1 && a == (-9223372036854775807LL - 1LL))
-               mono_raise_exception (mono_get_exception_arithmetic ());
+       else if (b == -1 && a == (0x80000000))
+               mono_raise_exception (mono_get_exception_overflow ());
 #endif
        return a / b;
 }
 
-gint64 
-mono_llrem (gint64 a, gint64 b)
+guint32
+mono_idiv_un (guint32 a, guint32 b)
 {
        MONO_ARCH_SAVE_REGS;
 
 #ifdef MONO_ARCH_NEED_DIV_CHECK
        if (!b)
                mono_raise_exception (mono_get_exception_divide_by_zero ());
-       else if (b == -1 && a == (-9223372036854775807LL - 1LL))
-               mono_raise_exception (mono_get_exception_arithmetic ());
 #endif
-       return a % b;
+       return a / b;
 }
 
-guint64 
-mono_lldiv_un (guint64 a, guint64 b)
+gint32
+mono_irem (gint32 a, gint32 b)
 {
        MONO_ARCH_SAVE_REGS;
 
 #ifdef MONO_ARCH_NEED_DIV_CHECK
        if (!b)
                mono_raise_exception (mono_get_exception_divide_by_zero ());
+       else if (b == -1 && a == (0x80000000))
+               mono_raise_exception (mono_get_exception_overflow ());
 #endif
-       return a / b;
+
+       return a % b;
 }
 
-guint64 
-mono_llrem_un (guint64 a, guint64 b)
+guint32
+mono_irem_un (guint32 a, guint32 b)
 {
        MONO_ARCH_SAVE_REGS;
 
@@ -396,47 +388,55 @@ mono_llrem_un (guint64 a, guint64 b)
 
 #endif
 
-#ifndef MONO_ARCH_NO_EMULATE_LONG_SHIFT_OPS
+#if defined(MONO_ARCH_EMULATE_MUL_DIV) || defined(MONO_ARCH_EMULATE_MUL_OVF)
 
-guint64 
-mono_lshl (guint64 a, gint32 shamt)
+gint32
+mono_imul (gint32 a, gint32 b)
 {
-       guint64 res;
-
-       /* no need, no exceptions: MONO_ARCH_SAVE_REGS;*/
-       res = a << shamt;
-
-       /*printf ("TESTL %lld << %d = %lld\n", a, shamt, res);*/
+       MONO_ARCH_SAVE_REGS;
 
-       return res;
+       return a * b;
 }
 
-guint64 
-mono_lshr_un (guint64 a, gint32 shamt)
+gint32
+mono_imul_ovf (gint32 a, gint32 b)
 {
-       guint64 res;
+       gint64 res;
 
-       /* no need, no exceptions: MONO_ARCH_SAVE_REGS;*/
-       res = a >> shamt;
+       MONO_ARCH_SAVE_REGS;
 
-       /*printf ("TESTR %lld >> %d = %lld\n", a, shamt, res);*/
+       res = (gint64)a * (gint64)b;
+
+       if ((res > 0x7fffffffL) || (res < -2147483648LL))
+               mono_raise_exception (mono_get_exception_overflow ());
 
        return res;
 }
 
-gint64 
-mono_lshr (gint64 a, gint32 shamt)
+gint32
+mono_imul_ovf_un (guint32 a, guint32 b)
 {
-       gint64 res;
+       guint64 res;
 
-       /* no need, no exceptions: MONO_ARCH_SAVE_REGS;*/
-       res = a >> shamt;
+       MONO_ARCH_SAVE_REGS;
 
-       /*printf ("TESTR %lld >> %d = %lld\n", a, shamt, res);*/
+       res = (guint64)a * (guint64)b;
+
+       if ((res >> 32))
+               mono_raise_exception (mono_get_exception_overflow ());
 
        return res;
 }
+#endif
+
+#if defined(MONO_ARCH_EMULATE_MUL_DIV) || defined(MONO_ARCH_SOFT_FLOAT)
+double
+mono_fdiv (double a, double b)
+{
+       MONO_ARCH_SAVE_REGS;
 
+       return a / b;
+}
 #endif
 
 #ifdef MONO_ARCH_SOFT_FLOAT
index c4d731d20969ffa66a82f67d41a4075a393caa80..62b2c1a89ebc4d4825fa3c6c14c440315a0c0140 100644 (file)
 
 #define BRANCH_COST 10
 #define INLINE_LENGTH_LIMIT 20
-#define INLINE_FAILURE do {\
-               if ((cfg->method != method) && (method->wrapper_type == MONO_WRAPPER_NONE))\
-                       goto inline_failure;\
+#define INLINE_FAILURE(msg) do {                                                                       \
+       if ((cfg->method != method) && (method->wrapper_type == MONO_WRAPPER_NONE)) { \
+               if (cfg->verbose_level >= 2)                                                                    \
+                       printf ("inline failed: %s\n", msg);                                            \
+               goto inline_failure;                                                                                    \
+       } \
        } while (0)
 #define CHECK_CFG_EXCEPTION do {\
                if (cfg->exception_type != MONO_EXCEPTION_NONE)\
@@ -4141,7 +4144,7 @@ mini_emit_ldelema_2_ins (MonoCompile *cfg, MonoClass *klass, MonoInst *arr, Mono
        int realidx1_reg = alloc_preg (cfg);
        int realidx2_reg = alloc_preg (cfg);
        int sum_reg = alloc_preg (cfg);
-       int index1, index2;
+       int index1, index2, tmpreg;
        MonoInst *ins;
        guint32 size;
 
@@ -4151,6 +4154,23 @@ mini_emit_ldelema_2_ins (MonoCompile *cfg, MonoClass *klass, MonoInst *arr, Mono
        index1 = index_ins1->dreg;
        index2 = index_ins2->dreg;
 
+#if SIZEOF_REGISTER == 8
+       /* The array reg is 64 bits but the index reg is only 32 */
+       if (COMPILE_LLVM (cfg)) {
+               /* Not needed */
+       } else {
+               tmpreg = alloc_preg (cfg);
+               MONO_EMIT_NEW_UNALU (cfg, OP_SEXT_I4, tmpreg, index1);
+               index1 = tmpreg;
+               tmpreg = alloc_preg (cfg);
+               MONO_EMIT_NEW_UNALU (cfg, OP_SEXT_I4, tmpreg, index2);
+               index2 = tmpreg;
+       }
+#else
+       // FIXME: Do we need to do something here for i8 indexes, like in ldelema_1_ins ?
+       tmpreg = -1;
+#endif
+
        /* range checking */
        MONO_EMIT_NEW_LOAD_MEMBASE (cfg, bounds_reg, 
                                       arr->dreg, G_STRUCT_OFFSET (MonoArray, bounds));
@@ -4271,6 +4291,8 @@ emit_array_generic_access (MonoCompile *cfg, MonoMethodSignature *fsig, MonoInst
        if (is_set) {
                EMIT_NEW_LOAD_MEMBASE_TYPE (cfg, load, &eklass->byval_arg, args [2]->dreg, 0);
                EMIT_NEW_STORE_MEMBASE_TYPE (cfg, store, &eklass->byval_arg, addr->dreg, 0, load->dreg);
+               if (mini_type_is_reference (cfg, fsig->params [2]))
+                       emit_write_barrier (cfg, addr, load, -1);
        } else {
                EMIT_NEW_LOAD_MEMBASE_TYPE (cfg, load, &eklass->byval_arg, addr->dreg, 0);
                EMIT_NEW_STORE_MEMBASE_TYPE (cfg, store, &eklass->byval_arg, args [2]->dreg, 0, load->dreg);
@@ -4278,6 +4300,76 @@ emit_array_generic_access (MonoCompile *cfg, MonoMethodSignature *fsig, MonoInst
        return store;
 }
 
+
+static gboolean
+generic_class_is_reference_type (MonoCompile *cfg, MonoClass *klass)
+{
+       return mini_type_is_reference (cfg, &klass->byval_arg);
+}
+
+static MonoInst*
+emit_array_store (MonoCompile *cfg, MonoClass *klass, MonoInst **sp, gboolean safety_checks)
+{
+       if (safety_checks && generic_class_is_reference_type (cfg, klass) &&
+               !(sp [2]->opcode == OP_PCONST && sp [2]->inst_p0 == NULL)) {
+               MonoClass *obj_array = mono_array_class_get_cached (mono_defaults.object_class, 1);
+               MonoMethod *helper = mono_marshal_get_virtual_stelemref (obj_array);
+               MonoInst *iargs [3];
+
+               if (!helper->slot)
+                       mono_class_setup_vtable (obj_array);
+               g_assert (helper->slot);
+
+               if (sp [0]->type != STACK_OBJ)
+                       return NULL;
+               if (sp [2]->type != STACK_OBJ)
+                       return NULL;
+
+               iargs [2] = sp [2];
+               iargs [1] = sp [1];
+               iargs [0] = sp [0];
+
+               return mono_emit_method_call (cfg, helper, iargs, sp [0]);
+       } else {
+               MonoInst *ins;
+               if (sp [1]->opcode == OP_ICONST) {
+                       int array_reg = sp [0]->dreg;
+                       int index_reg = sp [1]->dreg;
+                       int offset = (mono_class_array_element_size (klass) * sp [1]->inst_c0) + G_STRUCT_OFFSET (MonoArray, vector);
+
+                       if (safety_checks)
+                               MONO_EMIT_BOUNDS_CHECK (cfg, array_reg, MonoArray, max_length, index_reg);
+                       EMIT_NEW_STORE_MEMBASE_TYPE (cfg, ins, &klass->byval_arg, array_reg, offset, sp [2]->dreg);
+               } else {
+                       MonoInst *addr = mini_emit_ldelema_1_ins (cfg, klass, sp [0], sp [1], safety_checks);
+                       EMIT_NEW_STORE_MEMBASE_TYPE (cfg, ins, &klass->byval_arg, addr->dreg, 0, sp [2]->dreg);
+                       if (generic_class_is_reference_type (cfg, klass))
+                               emit_write_barrier (cfg, addr, sp [2], -1);
+               }
+               return ins;
+       }
+}
+
+static MonoInst*
+emit_array_unsafe_access (MonoCompile *cfg, MonoMethodSignature *fsig, MonoInst **args, int is_set)
+{
+       MonoClass *eklass;
+       
+       if (is_set)
+               eklass = mono_class_from_mono_type (fsig->params [2]);
+       else
+               eklass = mono_class_from_mono_type (fsig->ret);
+
+
+       if (is_set) {
+               return emit_array_store (cfg, eklass, args, FALSE);
+       } else {
+               MonoInst *ins, *addr = mini_emit_ldelema_1_ins (cfg, eklass, args [0], args [1], FALSE);
+               EMIT_NEW_LOAD_MEMBASE_TYPE (cfg, ins, &eklass->byval_arg, addr->dreg, 0);
+               return ins;
+       }
+}
+
 static MonoInst*
 mini_emit_inst_for_ctor (MonoCompile *cfg, MonoMethod *cmethod, MonoMethodSignature *fsig, MonoInst **args)
 {
@@ -4304,6 +4396,81 @@ emit_memory_barrier (MonoCompile *cfg, int kind)
        return ins;
 }
 
+static MonoInst*
+llvm_emit_inst_for_method (MonoCompile *cfg, MonoMethod *cmethod, MonoMethodSignature *fsig, MonoInst **args)
+{
+       MonoInst *ins = NULL;
+       int opcode = 0;
+
+       /* The LLVM backend supports these intrinsics */
+       if (cmethod->klass == mono_defaults.math_class) {
+               if (strcmp (cmethod->name, "Sin") == 0) {
+                       opcode = OP_SIN;
+               } else if (strcmp (cmethod->name, "Cos") == 0) {
+                       opcode = OP_COS;
+               } else if (strcmp (cmethod->name, "Sqrt") == 0) {
+                       opcode = OP_SQRT;
+               } else if (strcmp (cmethod->name, "Abs") == 0 && fsig->params [0]->type == MONO_TYPE_R8) {
+                       opcode = OP_ABS;
+               }
+
+               if (opcode) {
+                       MONO_INST_NEW (cfg, ins, opcode);
+                       ins->type = STACK_R8;
+                       ins->dreg = mono_alloc_freg (cfg);
+                       ins->sreg1 = args [0]->dreg;
+                       MONO_ADD_INS (cfg->cbb, ins);
+               }
+
+               opcode = 0;
+               if (cfg->opt & MONO_OPT_CMOV) {
+                       if (strcmp (cmethod->name, "Min") == 0) {
+                               if (fsig->params [0]->type == MONO_TYPE_I4)
+                                       opcode = OP_IMIN;
+                               if (fsig->params [0]->type == MONO_TYPE_U4)
+                                       opcode = OP_IMIN_UN;
+                               else if (fsig->params [0]->type == MONO_TYPE_I8)
+                                       opcode = OP_LMIN;
+                               else if (fsig->params [0]->type == MONO_TYPE_U8)
+                                       opcode = OP_LMIN_UN;
+                       } else if (strcmp (cmethod->name, "Max") == 0) {
+                               if (fsig->params [0]->type == MONO_TYPE_I4)
+                                       opcode = OP_IMAX;
+                               if (fsig->params [0]->type == MONO_TYPE_U4)
+                                       opcode = OP_IMAX_UN;
+                               else if (fsig->params [0]->type == MONO_TYPE_I8)
+                                       opcode = OP_LMAX;
+                               else if (fsig->params [0]->type == MONO_TYPE_U8)
+                                       opcode = OP_LMAX_UN;
+                       }
+               }
+
+               if (opcode) {
+                       MONO_INST_NEW (cfg, ins, opcode);
+                       ins->type = fsig->params [0]->type == MONO_TYPE_I4 ? STACK_I4 : STACK_I8;
+                       ins->dreg = mono_alloc_ireg (cfg);
+                       ins->sreg1 = args [0]->dreg;
+                       ins->sreg2 = args [1]->dreg;
+                       MONO_ADD_INS (cfg->cbb, ins);
+               }
+       }
+
+       return ins;
+}
+
+static MonoInst*
+mini_emit_inst_for_sharable_method (MonoCompile *cfg, MonoMethod *cmethod, MonoMethodSignature *fsig, MonoInst **args)
+{
+       if (cmethod->klass == mono_defaults.array_class) {
+               if (strcmp (cmethod->name, "UnsafeStore") == 0)
+                       return emit_array_unsafe_access (cfg, fsig, args, TRUE);
+               if (strcmp (cmethod->name, "UnsafeLoad") == 0)
+                       return emit_array_unsafe_access (cfg, fsig, args, FALSE);
+       }
+
+       return NULL;
+}
+
 static MonoInst*
 mini_emit_inst_for_method (MonoCompile *cfg, MonoMethod *cmethod, MonoMethodSignature *fsig, MonoInst **args)
 {
@@ -4750,6 +4917,12 @@ mini_emit_inst_for_method (MonoCompile *cfg, MonoMethod *cmethod, MonoMethodSign
        }
 #endif
 
+       if (COMPILE_LLVM (cfg)) {
+               ins = llvm_emit_inst_for_method (cfg, cmethod, fsig, args);
+               if (ins)
+                       return ins;
+       }
+
        return mono_arch_emit_inst_for_method (cfg, cmethod, fsig, args);
 }
 
@@ -5088,7 +5261,7 @@ inline_method (MonoCompile *cfg, MonoMethod *cmethod, MonoMethodSignature *fsig,
                return costs + 1;
        } else {
                if (cfg->verbose_level > 2)
-                       printf ("INLINE ABORTED %s\n", mono_method_full_name (cmethod, TRUE));
+                       printf ("INLINE ABORTED %s (cost %d)\n", mono_method_full_name (cmethod, TRUE), costs);
                cfg->exception_type = MONO_EXCEPTION_NONE;
                mono_loader_clear_error ();
 
@@ -5479,12 +5652,6 @@ set_exception_object (MonoCompile *cfg, MonoException *exception)
        cfg->exception_ptr = exception;
 }
 
-static gboolean
-generic_class_is_reference_type (MonoCompile *cfg, MonoClass *klass)
-{
-       return mini_type_is_reference (cfg, &klass->byval_arg);
-}
-
 static void
 emit_stloc_ir (MonoCompile *cfg, MonoInst **sp, MonoMethodHeader *header, int n)
 {
@@ -6622,7 +6789,7 @@ mono_method_to_ir (MonoCompile *cfg, MonoMethod *method, MonoBasicBlock *start_b
                case CEE_JMP: {
                        MonoCallInst *call;
 
-                       INLINE_FAILURE;
+                       INLINE_FAILURE ("jmp");
 
                        CHECK_OPSIZE (5);
                        if (stack_start != sp)
@@ -6834,7 +7001,7 @@ mono_method_to_ir (MonoCompile *cfg, MonoMethod *method, MonoBasicBlock *start_b
 
                                if (mono_security_get_mode () == MONO_SECURITY_MODE_CAS) {
                                        if (check_linkdemand (cfg, method, cmethod))
-                                               INLINE_FAILURE;
+                                               INLINE_FAILURE ("linkdemand");
                                        CHECK_CFG_EXCEPTION;
                                }
 
@@ -6858,7 +7025,7 @@ mono_method_to_ir (MonoCompile *cfg, MonoMethod *method, MonoBasicBlock *start_b
                                /*
                                 * We have the `constrained.' prefix opcode.
                                 */
-                               if (constrained_call->valuetype && !cmethod->klass->valuetype) {
+                               if (constrained_call->valuetype && (cmethod->klass == mono_defaults.object_class || cmethod->klass == mono_defaults.enum_class->parent || cmethod->klass == mono_defaults.enum_class)) {
                                        /*
                                         * The type parameter is instantiated as a valuetype,
                                         * but that type doesn't override the method we're
@@ -6879,14 +7046,48 @@ mono_method_to_ir (MonoCompile *cfg, MonoMethod *method, MonoBasicBlock *start_b
                                        EMIT_NEW_LOAD_MEMBASE (cfg, ins, OP_LOAD_MEMBASE, dreg, sp [0]->dreg, 0);
                                        ins->type = STACK_OBJ;
                                        sp [0] = ins;
-                               } else if (cmethod->klass->valuetype)
+                               } else {
+                                       if (cmethod->klass->valuetype) {
+                                               /* Own method */
+                                       } else {
+                                               /* Interface method */
+                                               int ioffset, slot;
+
+                                               mono_class_setup_vtable (constrained_call);
+                                               CHECK_TYPELOAD (constrained_call);
+                                               ioffset = mono_class_interface_offset (constrained_call, cmethod->klass);
+                                               if (ioffset == -1)
+                                                       TYPE_LOAD_ERROR (constrained_call);
+                                               slot = mono_method_get_vtable_slot (cmethod);
+                                               if (slot == -1)
+                                                       TYPE_LOAD_ERROR (cmethod->klass);
+                                               cmethod = constrained_call->vtable [ioffset + slot];
+                                       }
                                        virtual = 0;
+                               }
                                constrained_call = NULL;
                        }
 
                        if (*ip != CEE_CALLI && check_call_signature (cfg, fsig, sp))
                                UNVERIFIED;
 
+                       if (cmethod && (cfg->opt & MONO_OPT_INTRINS) && (ins = mini_emit_inst_for_sharable_method (cfg, cmethod, fsig, sp))) {
+                               bblock = cfg->cbb;
+                               if (!MONO_TYPE_IS_VOID (fsig->ret)) {
+                                       type_to_eval_stack_type ((cfg), fsig->ret, ins);
+                                       *sp = ins;
+                                       sp++;
+                               }
+
+                               CHECK_CFG_EXCEPTION;
+
+                               ip += 5;
+                               ins_flag = 0;
+                               if (need_seq_point)
+                                       emit_seq_point (cfg, method, ip, FALSE);
+                               break;
+                       }
+
                        /* 
                         * If the callee is a shared method, then its static cctor
                         * might not get called after the call was patched.
@@ -7014,7 +7215,7 @@ mono_method_to_ir (MonoCompile *cfg, MonoMethod *method, MonoBasicBlock *start_b
                                g_assert (mono_method_signature (cmethod)->is_inflated);
 
                                /* Prevent inlining of methods that contain indirect calls */
-                               INLINE_FAILURE;
+                               INLINE_FAILURE ("virtual generic call");
 
 #if MONO_ARCH_HAVE_GENERALIZED_IMT_THUNK && defined(MONO_ARCH_GSHARED_SUPPORTED)
                                if (cmethod->wrapper_type == MONO_WRAPPER_NONE && mono_use_imt) {
@@ -7114,7 +7315,7 @@ mono_method_to_ir (MonoCompile *cfg, MonoMethod *method, MonoBasicBlock *start_b
                                if ((cmethod->iflags & METHOD_IMPL_ATTRIBUTE_INTERNAL_CALL) ||
                                        (cmethod->flags & METHOD_ATTRIBUTE_PINVOKE_IMPL)) {
                                        /* Prevent inlining of methods that call wrappers */
-                                       INLINE_FAILURE;
+                                       INLINE_FAILURE ("wrapper call");
                                        cmethod = mono_marshal_get_native_wrapper (cmethod, check_for_pending_exc, FALSE);
                                        always = TRUE;
                                }
@@ -7145,7 +7346,7 @@ mono_method_to_ir (MonoCompile *cfg, MonoMethod *method, MonoBasicBlock *start_b
                                int i;
 
                                /* Prevent inlining of methods with tail calls (the call stack would be altered) */
-                               INLINE_FAILURE;
+                               INLINE_FAILURE ("tail call");
 
                                /* keep it simple */
                                for (i =  fsig->param_count - 1; i >= 0; i--) {
@@ -7182,7 +7383,7 @@ mono_method_to_ir (MonoCompile *cfg, MonoMethod *method, MonoBasicBlock *start_b
                                                !mono_class_generic_sharing_enabled (cmethod->klass)) &&
                                        (!virtual || MONO_METHOD_IS_FINAL (cmethod) ||
                                                !(cmethod->flags & METHOD_ATTRIBUTE_VIRTUAL))) {
-                               INLINE_FAILURE;
+                               INLINE_FAILURE ("gshared");
 
                                g_assert (cfg->generic_sharing_context && cmethod);
                                g_assert (!addr);
@@ -7211,7 +7412,7 @@ mono_method_to_ir (MonoCompile *cfg, MonoMethod *method, MonoBasicBlock *start_b
                                                        !(cmethod->flags & METHOD_ATTRIBUTE_FINAL));
 
                                /* Prevent inlining of methods with indirect calls */
-                               INLINE_FAILURE;
+                               INLINE_FAILURE ("indirect call");
 
                                if (vtable_arg) {
                                        ins = (MonoInst*)mono_emit_calli (cfg, fsig, sp, addr, vtable_arg);
@@ -7316,7 +7517,7 @@ mono_method_to_ir (MonoCompile *cfg, MonoMethod *method, MonoBasicBlock *start_b
                                MonoCallInst *call;
 
                                /* Prevent inlining of methods with tail calls (the call stack would be altered) */
-                               INLINE_FAILURE;
+                               INLINE_FAILURE ("tail call");
 
                                //printf ("HIT: %s -> %s\n", mono_method_full_name (cfg->method, TRUE), mono_method_full_name (cmethod, TRUE));
 
@@ -7377,7 +7578,7 @@ mono_method_to_ir (MonoCompile *cfg, MonoMethod *method, MonoBasicBlock *start_b
                        }
 
                        /* Common call */
-                       INLINE_FAILURE;
+                       INLINE_FAILURE ("call");
                        ins = mono_emit_method_call_full (cfg, cmethod, fsig, sp, virtual ? sp [0] : NULL,
                                                                                          imt_arg, vtable_arg);
 
@@ -7817,7 +8018,7 @@ mono_method_to_ir (MonoCompile *cfg, MonoMethod *method, MonoBasicBlock *start_b
 
                        /* Use the immediate opcodes if possible */
                        if ((sp [1]->opcode == OP_ICONST) && mono_arch_is_inst_imm (sp [1]->inst_c0)) {
-                               int imm_opcode = mono_op_to_op_imm (ins->opcode);
+                               int imm_opcode = mono_op_to_op_imm_noemul (ins->opcode);
                                if (imm_opcode != -1) {
                                        ins->opcode = imm_opcode;
                                        ins->inst_p1 = (gpointer)(gssize)(sp [1]->inst_c0);
@@ -8162,7 +8363,7 @@ mono_method_to_ir (MonoCompile *cfg, MonoMethod *method, MonoBasicBlock *start_b
 
                        if (mono_security_get_mode () == MONO_SECURITY_MODE_CAS) {
                                if (check_linkdemand (cfg, method, cmethod))
-                                       INLINE_FAILURE;
+                                       INLINE_FAILURE ("linkdemand");
                                CHECK_CFG_EXCEPTION;
                        } else if (mono_security_get_mode () == MONO_SECURITY_MODE_CORE_CLR) {
                                ensure_method_is_allowed_to_call_method (cfg, method, cmethod, bblock, ip);
@@ -8339,7 +8540,7 @@ mono_method_to_ir (MonoCompile *cfg, MonoMethod *method, MonoBasicBlock *start_b
 
                                                inline_costs += costs - 5;
                                        } else {
-                                               INLINE_FAILURE;
+                                               INLINE_FAILURE ("inline failure");
                                                mono_emit_method_call_full (cfg, cmethod, fsig, sp, callvirt_this_arg, NULL, NULL);
                                        }
                                } else if (context_used &&
@@ -8352,7 +8553,7 @@ mono_method_to_ir (MonoCompile *cfg, MonoMethod *method, MonoBasicBlock *start_b
 
                                        mono_emit_calli (cfg, fsig, sp, cmethod_addr, vtable_arg);
                                } else {
-                                       INLINE_FAILURE;
+                                       INLINE_FAILURE ("ctor call");
                                        ins = mono_emit_method_call_full (cfg, cmethod, fsig, sp,
                                                                                                          callvirt_this_arg, NULL, vtable_arg);
                                }
@@ -9082,7 +9283,7 @@ mono_method_to_ir (MonoCompile *cfg, MonoMethod *method, MonoBasicBlock *start_b
                                                        /* .cctors: too many apps depend on them */
                                                        /* running with a specific order... */
                                                        if (! vtable->initialized)
-                                                               INLINE_FAILURE;
+                                                               INLINE_FAILURE ("class init");
                                                        ex = mono_runtime_class_init_full (vtable, FALSE);
                                                        if (ex) {
                                                                set_exception_object (cfg, ex);
@@ -9452,8 +9653,6 @@ mono_method_to_ir (MonoCompile *cfg, MonoMethod *method, MonoBasicBlock *start_b
                case CEE_STELEM_R8:
                case CEE_STELEM_REF:
                case CEE_STELEM: {
-                       MonoInst *addr;
-
                        CHECK_STACK (3);
                        sp -= 3;
 
@@ -9472,40 +9671,7 @@ mono_method_to_ir (MonoCompile *cfg, MonoMethod *method, MonoBasicBlock *start_b
                        if (sp [0]->type != STACK_OBJ)
                                UNVERIFIED;
 
-                       /* storing a NULL doesn't need any of the complex checks in stelemref */
-                       if (generic_class_is_reference_type (cfg, klass) &&
-                               !(sp [2]->opcode == OP_PCONST && sp [2]->inst_p0 == NULL)) {
-                               MonoClass *obj_array = mono_array_class_get_cached (mono_defaults.object_class, 1);
-                               MonoMethod *helper = mono_marshal_get_virtual_stelemref (obj_array);
-                               MonoInst *iargs [3];
-
-                               if (!helper->slot)
-                                       mono_class_setup_vtable (obj_array);
-                               g_assert (helper->slot);
-
-                               if (sp [0]->type != STACK_OBJ)
-                                       UNVERIFIED;
-                               if (sp [2]->type != STACK_OBJ)
-                                       UNVERIFIED;
-
-                               iargs [2] = sp [2];
-                               iargs [1] = sp [1];
-                               iargs [0] = sp [0];
-
-                               mono_emit_method_call (cfg, helper, iargs, sp [0]);
-                       } else {
-                               if (sp [1]->opcode == OP_ICONST) {
-                                       int array_reg = sp [0]->dreg;
-                                       int index_reg = sp [1]->dreg;
-                                       int offset = (mono_class_array_element_size (klass) * sp [1]->inst_c0) + G_STRUCT_OFFSET (MonoArray, vector);
-
-                                       MONO_EMIT_BOUNDS_CHECK (cfg, array_reg, MonoArray, max_length, index_reg);
-                                       EMIT_NEW_STORE_MEMBASE_TYPE (cfg, ins, &klass->byval_arg, array_reg, offset, sp [2]->dreg);
-                               } else {
-                                       addr = mini_emit_ldelema_1_ins (cfg, klass, sp [0], sp [1], TRUE);
-                                       EMIT_NEW_STORE_MEMBASE_TYPE (cfg, ins, &klass->byval_arg, addr->dreg, 0, sp [2]->dreg);
-                               }
-                       }
+                       emit_array_store (cfg, klass, sp, TRUE);
 
                        if (*ip == CEE_STELEM)
                                ip += 5;
@@ -9772,6 +9938,9 @@ mono_method_to_ir (MonoCompile *cfg, MonoMethod *method, MonoBasicBlock *start_b
                        start_new_bblock = 1;
                        break;
                case CEE_ENDFINALLY:
+                       /* mono_save_seq_point_info () depends on this */
+                       if (sp != stack_start)
+                               emit_seq_point (cfg, method, ip, FALSE);
                        MONO_INST_NEW (cfg, ins, OP_ENDFINALLY);
                        MONO_ADD_INS (bblock, ins);
                        ip++;
@@ -10328,7 +10497,7 @@ mono_method_to_ir (MonoCompile *cfg, MonoMethod *method, MonoBasicBlock *start_b
 
                                if (mono_security_get_mode () == MONO_SECURITY_MODE_CAS) {
                                        if (check_linkdemand (cfg, method, cmethod))
-                                               INLINE_FAILURE;
+                                               INLINE_FAILURE ("linkdemand");
                                        CHECK_CFG_EXCEPTION;
                                } else if (mono_security_get_mode () == MONO_SECURITY_MODE_CORE_CLR) {
                                        ensure_method_is_allowed_to_call_method (cfg, method, cmethod, bblock, ip);
@@ -10405,7 +10574,7 @@ mono_method_to_ir (MonoCompile *cfg, MonoMethod *method, MonoBasicBlock *start_b
 
                                if (mono_security_get_mode () == MONO_SECURITY_MODE_CAS) {
                                        if (check_linkdemand (cfg, method, cmethod))
-                                               INLINE_FAILURE;
+                                               INLINE_FAILURE ("linkdemand");
                                        CHECK_CFG_EXCEPTION;
                                } else if (mono_security_get_mode () == MONO_SECURITY_MODE_CORE_CLR) {
                                        ensure_method_is_allowed_to_call_method (cfg, method, cmethod, bblock, ip);
@@ -11357,6 +11526,10 @@ mono_op_to_op_imm_noemul (int opcode)
        case OP_IREM:
        case OP_IREM_UN:
                return -1;
+#endif
+#if defined(MONO_ARCH_EMULATE_MUL_DIV)
+       case OP_IMUL:
+               return -1;
 #endif
        default:
                return mono_op_to_op_imm (opcode);
index 82598ece91dcfece417ff607a4fc1a2b871341ac..f4945b9459f1c78a2db5ee1fcdbcc8bbb693437a 100644 (file)
@@ -3588,11 +3588,12 @@ mono_amd64_have_tls_get (void)
 #ifdef __APPLE__
        static gboolean have_tls_get = FALSE;
        static gboolean inited = FALSE;
+       guint8 *ins;
 
        if (inited)
                return have_tls_get;
 
-       guint8 *ins = (guint8*)pthread_getspecific;
+       ins = (guint8*)pthread_getspecific;
 
        /*
         * We're looking for these two instructions:
index 4e65298c33869fe1b5626f7ded704bf5fa7d8065..0a9cd51a8defd81cc996626bd8461d78f09b2ad8 100644 (file)
@@ -89,8 +89,6 @@ struct sigcontext {
 };
 #endif  // sun, Solaris x86
 
-#define MONO_ARCH_SUPPORT_SIMD_INTRINSICS 1
-
 #ifndef DISABLE_SIMD
 #define MONO_ARCH_SIMD_INTRINSICS 1
 #define MONO_ARCH_NEED_SIMD_BANK 1
index 7221fc963135dd9383597d21e0b8aa32e89cdfe3..762a178c195873d3931ea8aa52a4b4dd5c3fbfa7 100644 (file)
@@ -886,7 +886,8 @@ mono_arch_regalloc_cost (MonoCompile *cfg, MonoMethodVar *vmv)
 void
 mono_arch_flush_icache (guint8 *code, gint size)
 {
-#if __APPLE__
+#ifdef MONO_CROSS_COMPILE
+#elif __APPLE__
        sys_icache_invalidate (code, size);
 #elif __GNUC_PREREQ(4, 1)
        __clear_cache (code, code + size);
index e6b6a1770a1eae853d7cd5c0e81fd20c2e20b8c6..027b0872049e1df1c0496b23d7c656b1cfe5a899 100644 (file)
@@ -314,9 +314,8 @@ mono_thread_state_init_from_handle (MonoThreadUnwindState *tctx, MonoNativeThrea
        domain = mono_mach_arch_get_tls_value_from_thread (thread_id, domain_key);
 
        /*Thread already started to cleanup, can no longer capture unwind state*/
-       if (!jit_tls)
+       if (!jit_tls || !domain)
                return FALSE;
-       g_assert (domain);
 
 #if defined (MONO_ARCH_ENABLE_MONO_LMF_VAR)
        lmf_key =  mono_get_lmf_tls_offset ();
index 362b18aff33ead5bbb798b1587eb66f41cb56b68..76414e7691ebecdd3d368d5b1ba5553f7c72a6c6 100644 (file)
@@ -45,6 +45,7 @@
 #include <mono/metadata/mono-debug.h>
 #include <mono/metadata/profiler.h>
 #include <mono/metadata/mono-endian.h>
+#include <mono/metadata/environment.h>
 #include <mono/utils/mono-mmap.h>
 
 #include "mini.h"
@@ -63,6 +64,9 @@ static gpointer throw_corlib_exception_func;
 static gpointer try_more_restore_tramp = NULL;
 static gpointer restore_stack_protection_tramp = NULL;
 
+static MonoUnhandledExceptionFunc unhandled_exception_hook = NULL;
+static gpointer unhandled_exception_hook_data = NULL;
+
 static void try_more_restore (void);
 static void restore_stack_protection (void);
 static void mono_walk_stack_full (MonoJitStackWalk func, MonoContext *start_ctx, MonoDomain *domain, MonoJitTlsData *jit_tls, MonoLMF *lmf, MonoUnwindOptions unwind_options, gpointer user_data);
@@ -851,15 +855,9 @@ ves_icall_get_frame_info (gint32 skip, MonoBoolean need_file_info,
                ji = frame.ji;
                *native_offset = frame.native_offset;
 
-               /* skip all wrappers ??*/
-               if (ji->method->wrapper_type == MONO_WRAPPER_RUNTIME_INVOKE ||
-                   ji->method->wrapper_type == MONO_WRAPPER_XDOMAIN_INVOKE ||
-                   ji->method->wrapper_type == MONO_WRAPPER_XDOMAIN_DISPATCH ||
-                   ji->method->wrapper_type == MONO_WRAPPER_REMOTING_INVOKE_WITH_CHECK ||
-                   ji->method->wrapper_type == MONO_WRAPPER_REMOTING_INVOKE ||
-                       ji->method->wrapper_type == MONO_WRAPPER_NATIVE_TO_MANAGED)
+               /* The skip count passed by the caller depends on us not filtering out MANAGED_TO_NATIVE */
+               if (ji->method->wrapper_type != MONO_WRAPPER_NONE && ji->method->wrapper_type != MONO_WRAPPER_DYNAMIC_METHOD && ji->method->wrapper_type != MONO_WRAPPER_MANAGED_TO_NATIVE)
                        continue;
-
                skip--;
        } while (skip >= 0);
 
@@ -2642,3 +2640,31 @@ mono_setup_async_callback (MonoContext *ctx, void (*async_cb)(void *fun), gpoint
        g_error ("This target doesn't support mono_arch_setup_async_callback");
 #endif
 }
+
+void
+mono_install_unhandled_exception_hook (MonoUnhandledExceptionFunc func, gpointer user_data)
+{
+       unhandled_exception_hook = func;
+       unhandled_exception_hook_data = user_data;
+}
+
+void
+mono_invoke_unhandled_exception_hook (MonoObject *exc)
+{
+       if (unhandled_exception_hook) {
+               unhandled_exception_hook (exc, unhandled_exception_hook_data);
+       } else {
+               MonoObject *other = NULL;
+               MonoString *str = mono_object_to_string (exc, &other);
+               if (str) {
+                       char *msg = mono_string_to_utf8 (str);
+                       fprintf (stderr, "[ERROR] FATAL UNHANDLED EXCEPTION: %s\n", msg);
+                       fflush (stderr);
+                       g_free (msg);
+               }
+
+               exit (mono_environment_exitcode_get ());
+       }
+
+       g_assert_not_reached ();
+}
index fbb737c23ef09ef497f7ca434ccefb986a8340d9..a8c033b68cf43e64fe72f083d6576bc5ef10f0ec 100644 (file)
@@ -576,7 +576,7 @@ thread_detach_func (gpointer user_data)
 }
 
 static void
-thread_suspend_func (gpointer user_data, void *sigctx)
+thread_suspend_func (gpointer user_data, void *sigctx, MonoContext *ctx)
 {
        TlsData *tls = user_data;
 
@@ -597,6 +597,9 @@ thread_suspend_func (gpointer user_data, void *sigctx)
                if (sigctx) {
                        mono_arch_sigctx_to_monoctx (sigctx, &tls->unwind_state.ctx);
                        tls->unwind_state.valid = TRUE;
+               } else if (ctx) {
+                       memcpy (&tls->unwind_state.ctx, ctx, sizeof (MonoContext));
+                       tls->unwind_state.valid = TRUE;
                } else {
                        tls->unwind_state.valid = FALSE;
                }
index d6355faf5f3bca20d1dc3af51e6a59c37c3d4edb..90ea7098b1107f75496b53e58aa9938e3cf27248 100644 (file)
@@ -640,7 +640,7 @@ static const char*
 simd_op_to_intrins (int opcode)
 {
        switch (opcode) {
-#if defined(TARGET_X86) || defined(TARGET_AMD64)
+#ifdef MONO_ARCH_SIMD_INTRINSICS
        case OP_MINPD:
                return "llvm.x86.sse2.min.pd";
        case OP_MINPS:
@@ -781,7 +781,7 @@ simd_op_to_intrins (int opcode)
 static LLVMTypeRef
 simd_op_to_llvm_type (int opcode)
 {
-#if defined(TARGET_X86) || defined(TARGET_AMD64)
+#ifdef MONO_ARCH_SIMD_INTRINSICS
        switch (opcode) {
        case OP_EXTRACT_R8:
        case OP_EXPAND_R8:
@@ -3041,7 +3041,7 @@ process_bb (EmitContext *ctx, MonoBasicBlock *bb)
                }
 
                case OP_CHECK_THIS:
-                       emit_load (ctx, bb, &builder, sizeof (gpointer), convert (ctx, values [ins->sreg1], LLVMPointerType (IntPtrType (), 0)), "", TRUE);
+                       emit_load (ctx, bb, &builder, sizeof (gpointer), convert (ctx, lhs, LLVMPointerType (IntPtrType (), 0)), "", TRUE);
                        break;
                case OP_OUTARG_VTRETADDR:
                        break;
@@ -3278,7 +3278,7 @@ process_bb (EmitContext *ctx, MonoBasicBlock *bb)
 #endif
                }
                case OP_TLS_GET: {
-#if defined(TARGET_AMD64) || defined(TARGET_X86)
+#if (defined(TARGET_AMD64) || defined(TARGET_X86)) && defined(__linux__)
 #ifdef TARGET_AMD64
                        // 257 == FS segment register
                        LLVMTypeRef ptrtype = LLVMPointerType (IntPtrType (), 257);
@@ -3433,7 +3433,7 @@ process_bb (EmitContext *ctx, MonoBasicBlock *bb)
                        /* 
                         * SIMD
                         */
-#if defined(TARGET_X86) || defined(TARGET_AMD64)
+#ifdef MONO_ARCH_SIMD_INTRINSICS
                case OP_XZERO: {
                        values [ins->dreg] = LLVMConstNull (type_to_llvm_type (ctx, &ins->klass->byval_arg));
                        break;
@@ -3754,7 +3754,7 @@ process_bb (EmitContext *ctx, MonoBasicBlock *bb)
                case OP_PSHUFLEW_LOW:
                case OP_PSHUFLEW_HIGH: {
                        int mask [16];
-                       LLVMValueRef v1 = NULL, v2 = NULL, mask_values [4];
+                       LLVMValueRef v1 = NULL, v2 = NULL, mask_values [16];
                        int i, mask_size = 0;
                        int imask = ins->inst_c0;
        
@@ -4461,7 +4461,9 @@ mono_llvm_emit_method (MonoCompile *cfg)
                        if (ctx->unreachable [node->in_bb->block_num])
                                continue;
 
-                       g_assert (values [sreg1]);
+                       if (!values [sreg1])
+                               /* Can happen with values in EH clauses */
+                               LLVM_FAILURE (ctx, "incoming phi sreg1");
 
                        if (phi->opcode == OP_VPHI) {
                                g_assert (LLVMTypeOf (ctx->addresses [sreg1]) == LLVMTypeOf (values [phi->dreg]));
index b2b88e9a0fd828098923067eeed9e8de04bd6b66..18f9a5a6bd58e2de992cba5cc07f868afd92d625 100644 (file)
@@ -100,7 +100,7 @@ MINI_OP(OP_STOREI8_MEMBASE_REG, "storei8_membase_reg", IREG, LREG, NONE)
 MINI_OP(OP_STORER4_MEMBASE_REG, "storer4_membase_reg", IREG, FREG, NONE)
 MINI_OP(OP_STORER8_MEMBASE_REG, "storer8_membase_reg", IREG, FREG, NONE)
 
-#if defined(TARGET_X86) || defined(TARGET_AMD64)
+#ifdef MONO_ARCH_SIMD_INTRINSICS
 MINI_OP(OP_STOREX_MEMBASE_REG, "storex_membase_reg", IREG, XREG, NONE)
 MINI_OP(OP_STOREX_ALIGNED_MEMBASE_REG,     "storex_aligned_membase_reg", IREG, XREG, NONE)
 MINI_OP(OP_STOREX_NTA_MEMBASE_REG,     "storex_nta_membase_reg", IREG, XREG, NONE)
@@ -128,7 +128,7 @@ MINI_OP(OP_LOADR8_MEMBASE,"loadr8_membase", FREG, IREG, NONE)
 
 MINI_OP(OP_LOADX_MEMBASE,                      "loadx_membase", XREG, IREG, NONE)
 
-#if defined(TARGET_X86) || defined(TARGET_AMD64)
+#ifdef MONO_ARCH_SIMD_INTRINSICS
 MINI_OP(OP_LOADX_ALIGNED_MEMBASE,  "loadx_aligned_membase", XREG, IREG, NONE)
 #endif
 
@@ -609,7 +609,7 @@ MINI_OP(OP_NOT_NULL, "not_null", NONE, IREG, NONE)
 
 /* SIMD opcodes. */
 
-#if defined(TARGET_X86) || defined(TARGET_AMD64)
+#ifdef MONO_ARCH_SIMD_INTRINSICS
 
 MINI_OP(OP_ADDPS, "addps", XREG, XREG, XREG)
 MINI_OP(OP_DIVPS, "divps", XREG, XREG, XREG)
index 605a1ff088f80942d573dddded5c4ab02ae4dbd1..d03e1147d4fbe22ac33732640d42cca4637fc6cb 100644 (file)
@@ -208,10 +208,12 @@ SIG_HANDLER_SIGNATURE (sigusr1_signal_handler)
        
        GET_CONTEXT;
 
-       if (!thread || !domain)
+       if (!thread || !domain) {
                /* The thread might not have started up yet */
                /* FIXME: Specify the synchronization with start_wrapper () in threads.c */
+               mono_debugger_agent_thread_interrupt (ctx, NULL);
                return;
+       }
 
        if (thread->ignore_next_signal) {
                thread->ignore_next_signal = FALSE;
index 3901a59449d68d03a6b50a592f3a57a02f2f151c..06f5ee0c21ae932f696d2035676e21b2c67ac209 100644 (file)
@@ -1627,6 +1627,7 @@ mono_arch_emit_call (MonoCompile *cfg, MonoCallInst *call)
        }
 
        call->stack_usage = cinfo->stack_usage;
+       call->stack_align_amount = cinfo->stack_align_amount;
        cfg->arch.param_area_size = MAX (cfg->arch.param_area_size, sp_offset);
 }
 
@@ -3179,7 +3180,7 @@ mono_arch_output_basic_block (MonoCompile *cfg, MonoBasicBlock *bb)
                        }
 
                        /* Copy arguments on the stack to our argument area */
-                       for (i = 0; i < call->stack_usage; i += 4) {
+                       for (i = 0; i < call->stack_usage - call->stack_align_amount; i += 4) {
                                x86_mov_reg_membase (code, X86_EAX, X86_ESP, i, 4);
                                x86_mov_membase_reg (code, X86_EBP, 8 + i, X86_EAX, 4);
                        }
index 5805f5e7ebd790c98dac6649a62a8102980e01d5..0c34eb54353bdb865555305098243ef4692f5920 100644 (file)
@@ -74,7 +74,6 @@ struct sigcontext {
 #endif /* HAVE_WORKING_SIGALTSTACK */
 #endif /* !HOST_WIN32 */
 
-#define MONO_ARCH_SUPPORT_SIMD_INTRINSICS 1
 #define MONO_ARCH_SUPPORT_TASKLETS 1
 
 #ifndef DISABLE_SIMD
index 6c7744b94cf5fe6659e2734bc45d116dcb777196..f52a44fa2152437471def187b4888fc2e146dcdc 100644 (file)
@@ -2666,16 +2666,7 @@ mono_thread_abort (MonoObject *obj)
                        (obj->vtable->klass == mono_defaults.threadabortexception_class)) {
                mono_thread_exit ();
        } else {
-               MonoObject *other = NULL;
-               MonoString *str = mono_object_to_string (obj, &other);
-               if (str) {
-                       char *msg = mono_string_to_utf8 (str);
-                       fprintf (stderr, "[ERROR] FATAL UNHANDLED EXCEPTION: %s\n", msg);
-                       fflush (stderr);
-                       g_free (msg);
-               }
-
-               exit (mono_environment_exitcode_get ());
+               mono_invoke_unhandled_exception_hook (obj);
        }
 }
 
@@ -4315,7 +4306,7 @@ mini_method_compile (MonoMethod *method, guint32 opts, MonoDomain *domain, gbool
        InterlockedIncrement (&mono_jit_stats.methods_compiled);
        if (mono_profiler_get_events () & MONO_PROFILE_JIT_COMPILATION)
                mono_profiler_method_jit (method);
-       if (MONO_PROBE_METHOD_COMPILE_BEGIN_ENABLED ())
+       if (MONO_METHOD_COMPILE_BEGIN_ENABLED ())
                MONO_PROBE_METHOD_COMPILE_BEGIN (method);
 
        if (compile_aot)
@@ -4391,7 +4382,7 @@ mini_method_compile (MonoMethod *method, guint32 opts, MonoDomain *domain, gbool
                cfg->exception_type = MONO_EXCEPTION_TYPE_LOAD;
                cfg->exception_message = g_strdup (mono_error_get_message (&err));
                mono_error_cleanup (&err);
-               if (MONO_PROBE_METHOD_COMPILE_END_ENABLED ())
+               if (MONO_METHOD_COMPILE_END_ENABLED ())
                        MONO_PROBE_METHOD_COMPILE_END (method, FALSE);
                return cfg;
        }
@@ -4406,7 +4397,7 @@ mini_method_compile (MonoMethod *method, guint32 opts, MonoDomain *domain, gbool
                        cfg->exception_type = MONO_EXCEPTION_INVALID_PROGRAM;
                        cfg->exception_message = g_strdup_printf ("Missing or incorrect header for method %s", cfg->method->name);
                }
-               if (MONO_PROBE_METHOD_COMPILE_END_ENABLED ())
+               if (MONO_METHOD_COMPILE_END_ENABLED ())
                        MONO_PROBE_METHOD_COMPILE_END (method, FALSE);
                return cfg;
        }
@@ -4610,7 +4601,7 @@ mini_method_compile (MonoMethod *method, guint32 opts, MonoDomain *domain, gbool
        if (i < 0) {
                if (try_generic_shared && cfg->exception_type == MONO_EXCEPTION_GENERIC_SHARING_FAILED) {
                        if (compile_aot) {
-                               if (MONO_PROBE_METHOD_COMPILE_END_ENABLED ())
+                               if (MONO_METHOD_COMPILE_END_ENABLED ())
                                        MONO_PROBE_METHOD_COMPILE_END (method, FALSE);
                                return cfg;
                        }
@@ -4620,7 +4611,7 @@ mini_method_compile (MonoMethod *method, guint32 opts, MonoDomain *domain, gbool
                }
                g_assert (cfg->exception_type != MONO_EXCEPTION_GENERIC_SHARING_FAILED);
 
-               if (MONO_PROBE_METHOD_COMPILE_END_ENABLED ())
+               if (MONO_METHOD_COMPILE_END_ENABLED ())
                        MONO_PROBE_METHOD_COMPILE_END (method, FALSE);
                /* cfg contains the details of the failure, so let the caller cleanup */
                return cfg;
@@ -4743,7 +4734,7 @@ mini_method_compile (MonoMethod *method, guint32 opts, MonoDomain *domain, gbool
 
        /* after method_to_ir */
        if (parts == 1) {
-               if (MONO_PROBE_METHOD_COMPILE_END_ENABLED ())
+               if (MONO_METHOD_COMPILE_END_ENABLED ())
                        MONO_PROBE_METHOD_COMPILE_END (method, TRUE);
                return cfg;
        }
@@ -4780,7 +4771,7 @@ mini_method_compile (MonoMethod *method, guint32 opts, MonoDomain *domain, gbool
 
        /* after SSA translation */
        if (parts == 2) {
-               if (MONO_PROBE_METHOD_COMPILE_END_ENABLED ())
+               if (MONO_METHOD_COMPILE_END_ENABLED ())
                        MONO_PROBE_METHOD_COMPILE_END (method, TRUE);
                return cfg;
        }
@@ -4847,7 +4838,7 @@ mini_method_compile (MonoMethod *method, guint32 opts, MonoDomain *domain, gbool
 
        /* after SSA removal */
        if (parts == 3) {
-               if (MONO_PROBE_METHOD_COMPILE_END_ENABLED ())
+               if (MONO_METHOD_COMPILE_END_ENABLED ())
                        MONO_PROBE_METHOD_COMPILE_END (method, TRUE);
                return cfg;
        }
@@ -5086,7 +5077,7 @@ mini_method_compile (MonoMethod *method, guint32 opts, MonoDomain *domain, gbool
        }
        mono_jit_stats.native_code_size += cfg->code_len;
 
-       if (MONO_PROBE_METHOD_COMPILE_END_ENABLED ())
+       if (MONO_METHOD_COMPILE_END_ENABLED ())
                MONO_PROBE_METHOD_COMPILE_END (method, TRUE);
 
        return cfg;
@@ -6381,7 +6372,7 @@ mini_init (const char *filename, const char *runtime_version)
        MonoRuntimeCallbacks callbacks;
        MonoThreadInfoRuntimeCallbacks ticallbacks;
 
-       MONO_PROBE_VES_INIT_BEGIN ();
+       MONO_VES_INIT_BEGIN ();
 
 #if defined(__linux__) && !defined(__native_client__)
        if (access ("/proc/self/maps", F_OK) != 0) {
@@ -6793,7 +6784,7 @@ mini_init (const char *filename, const char *runtime_version)
 
        mono_profiler_runtime_initialized ();
 
-       MONO_PROBE_VES_INIT_END ();
+       MONO_VES_INIT_END ();
        
        return domain;
 }
@@ -6846,10 +6837,6 @@ print_jit_stats (void)
                g_print ("JIT info table lookups: %ld\n", mono_stats.jit_info_table_lookup_count);
 
                g_print ("Hazardous pointers:     %ld\n", mono_stats.hazardous_pointer_count);
-               g_print ("Minor GC collections:   %ld\n", mono_stats.minor_gc_count);
-               g_print ("Major GC collections:   %ld\n", mono_stats.major_gc_count);
-               g_print ("Minor GC time in msecs: %lf\n", (double)mono_stats.minor_gc_time_usecs / 1000.0);
-               g_print ("Major GC time in msecs: %lf\n", (double)mono_stats.major_gc_time_usecs / 1000.0);
                if (mono_security_get_mode () == MONO_SECURITY_MODE_CAS) {
                        g_print ("\nDecl security check   : %ld\n", mono_jit_stats.cas_declsec_check);
                        g_print ("LinkDemand (user)     : %ld\n", mono_jit_stats.cas_linkdemand);
index d1d2255c442bd12c42d418c10f5932c6662bfeff..3dd34d53d5ae08757415f7f083458121a6a8c2e7 100644 (file)
 #include "mini-unwind.h"
 #include "jit.h"
 
+/*
+ * The mini code should not have any compile time dependencies on the GC being used, so the same object file from mini/
+ * can be linked into both mono and mono-sgen.
+ */
+#if defined(HAVE_BOEHM_GC) || defined(HAVE_SGEN_GC)
+#error "The code in mini/ should not depend on these defines."
+#endif
+
 #ifndef G_LIKELY
 #define G_LIKELY(a) (a)
 #define G_UNLIKELY(a) (a)
@@ -781,6 +789,7 @@ struct MonoCallInst {
        MonoInst *vret_var;
        gconstpointer fptr;
        guint stack_usage;
+       guint stack_align_amount;
        guint virtual : 1;
        guint tail_call : 1;
        /* If this is TRUE, 'fptr' points to a MonoJumpInfo instead of an address. */
@@ -2233,6 +2242,14 @@ MonoBoolean ves_icall_get_frame_info            (gint32 skip, MonoBoolean need_f
 MonoString *ves_icall_System_Exception_get_trace (MonoException *exc) MONO_INTERNAL;
 void mono_set_cast_details                      (MonoClass *from, MonoClass *to) MONO_INTERNAL;
 
+/* Installs a function which is called when the runtime encounters an unhandled exception.
+ * This hook isn't expected to return.
+ * If no hook has been installed, the runtime will print a message before aborting.
+ */
+typedef void  (*MonoUnhandledExceptionFunc)         (MonoObject *exc, gpointer user_data);
+void          mono_install_unhandled_exception_hook (MonoUnhandledExceptionFunc func, gpointer user_data);
+void          mono_invoke_unhandled_exception_hook  (MonoObject *exc);
+
 /* Dominator/SSA methods */
 void        mono_compile_dominator_info         (MonoCompile *cfg, int dom_flags) MONO_INTERNAL;
 void        mono_compute_natural_loops          (MonoCompile *cfg) MONO_INTERNAL;
index 2c0bf5e37aaed46933c860ef479d387159fc5962..417a55bbacfa5f0416fcfede4f10512e90a7023b 100644 (file)
@@ -19,7 +19,7 @@ internal_init (void)
 {
        if (keepalive_stacks)
                return;
-       MONO_GC_REGISTER_ROOT (keepalive_stacks);
+       MONO_GC_REGISTER_ROOT_PINNING (keepalive_stacks);
        keepalive_stacks = mono_g_hash_table_new (NULL, NULL);
 }
 
index 43516d87a7a0ca7a0c9270c1f662b01b9b97c9ea..f8643d77cdf7acc45e68701666102cd430497dbf 100644 (file)
@@ -76,6 +76,10 @@ mono_trace_eval (MonoMethod *method)
                case MONO_TRACEOP_PROGRAM:
                        if (trace_spec.assembly && (method->klass->image == mono_assembly_get_image (trace_spec.assembly)))
                                inc = 1; break;
+               case MONO_TRACEOP_WRAPPER:
+                       if ((method->wrapper_type == MONO_WRAPPER_NATIVE_TO_MANAGED) ||
+                               (method->wrapper_type == MONO_WRAPPER_MANAGED_TO_NATIVE))
+                               inc = 1; break;
                case MONO_TRACEOP_METHOD:
                        if (mono_method_desc_full_match ((MonoMethodDesc *) op->data, method))
                                inc = 1; break;
@@ -138,6 +142,7 @@ enum Token {
        TOKEN_PROGRAM,
        TOKEN_EXCEPTION,
        TOKEN_NAMESPACE,
+       TOKEN_WRAPPER,
        TOKEN_STRING,
        TOKEN_EXCLUDE,
        TOKEN_DISABLED,
@@ -185,6 +190,8 @@ get_token (void)
                        return TOKEN_ALL;
                if (strcmp (value, "program") == 0)
                        return TOKEN_PROGRAM;
+               if (strcmp (value, "wrapper") == 0)
+                       return TOKEN_WRAPPER;
                if (strcmp (value, "disabled") == 0)
                        return TOKEN_DISABLED;
                return TOKEN_STRING;
@@ -235,6 +242,8 @@ get_spec (int *last)
                trace_spec.ops [*last].op = MONO_TRACEOP_ALL;
        else if (token == TOKEN_PROGRAM)
                trace_spec.ops [*last].op = MONO_TRACEOP_PROGRAM;
+       else if (token == TOKEN_WRAPPER)
+               trace_spec.ops [*last].op = MONO_TRACEOP_WRAPPER;
        else if (token == TOKEN_NAMESPACE){
                trace_spec.ops [*last].op = MONO_TRACEOP_NAMESPACE;
                trace_spec.ops [*last].data = g_strdup (value);
index 6f6d3a0dcac4aa3215d618d84d670901d38f8c8c..af4ce40a39269c12bb384e9e2dac703adbb2063f 100644 (file)
@@ -11,6 +11,7 @@ typedef enum {
        MONO_TRACEOP_CLASS,
        MONO_TRACEOP_NAMESPACE,
        MONO_TRACEOP_EXCEPTION,
+       MONO_TRACEOP_WRAPPER,
 } MonoTraceOpcode;
 
 typedef struct {
index d63b055f530dc0aee726510b465b2af4e03494ec..3c108f307cf0cd91a1141a645ff4eef6f9295454 100644 (file)
@@ -158,7 +158,9 @@ mono_arch_patch_callsite (guint8 *method_start, guint8 *orig_code, guint8 *addr)
                                VALGRIND_DISCARD_TRANSLATIONS (orig_code - 11, sizeof (gpointer));
                        }
                } else {
-                       if ((((guint64)(addr)) >> 32) != 0) {
+                       gboolean disp_32bit = ((((gint64)addr - (gint64)orig_code)) < (1 << 30)) && ((((gint64)addr - (gint64)orig_code)) > -(1 << 30));
+
+                       if ((((guint64)(addr)) >> 32) != 0 && !disp_32bit) {
 #ifdef MONO_ARCH_NOMAP32BIT
                                /* Print some diagnostics */
                                MonoJitInfo *ji = mono_jit_info_table_find (mono_domain_get (), (char*)orig_code);
@@ -183,7 +185,6 @@ mono_arch_patch_callsite (guint8 *method_start, guint8 *orig_code, guint8 *addr)
                                mono_arch_flush_icache (thunk_start, thunk_code - thunk_start);
 #endif
                        }
-                       g_assert ((((guint64)(orig_code)) >> 32) == 0);
                        if (can_write) {
                                InterlockedExchange ((gint32*)(orig_code - 4), ((gint64)addr - (gint64)orig_code));
                                VALGRIND_DISCARD_TRANSLATIONS (orig_code - 5, 4);
index 11caa60166c115018f96ac558e85ac15bbdab1c2..2377e0dd009b5e970a01d2732dc2584f943e4458 100644 (file)
@@ -54,7 +54,16 @@ static int map_hw_reg_to_dwarf_reg [] = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11,
 #define DWARF_DATA_ALIGN (-4)
 #define DWARF_PC_REG (mono_hw_reg_to_dwarf_reg (ARMREG_LR))
 #elif defined (TARGET_X86)
+#ifdef __APPLE__
+/*
+ * LLVM seems to generate unwind info where esp is encoded as 5, and ebp as 4, ie see this line:
+ *   def ESP : RegisterWithSubRegs<"esp", [SP]>, DwarfRegNum<[-2, 5, 4]>;
+ * in lib/Target/X86/X86RegisterInfo.td in the llvm sources.
+ */
+static int map_hw_reg_to_dwarf_reg [] = { 0, 1, 2, 3, 5, 4, 6, 7, 8 };
+#else
 static int map_hw_reg_to_dwarf_reg [] = { 0, 1, 2, 3, 4, 5, 6, 7, 8 };
+#endif
 /* + 1 is for IP */
 #define NUM_REGS X86_NREG + 1
 #define DWARF_DATA_ALIGN (-4)
index acabade04a8f3e21cb0ad67247178d81d6cc9752..d40e38b8470c561a6a2238e56c7ff442bb171294 100644 (file)
@@ -4,14 +4,25 @@ export HOST_CC
 endif
 
 if JIT_SUPPORTED
+if !SHARED_MONO
+static_libs=   \
+       $(top_builddir)/mono/metadata/libmonoruntime-static.la  \
+       $(top_builddir)/mono/io-layer/libwapi.la        \
+       $(top_builddir)/mono/utils/libmonoutils.la \
+       $(GLIB_LIBS) $(LIBICONV) \
+       $(LIBGC_STATIC_LIBS)
+
+runtime_lib=../mini/$(LIBMONO_LA) $(static_libs)
+else
 runtime_lib=../mini/$(LIBMONO_LA)
+endif
 else
 runtime_lib=../interpreter/libmint.la
 endif
 
 bin_PROGRAMS = monograph
 
-INCLUDES =                             \
+AM_CPPFLAGS =                          \
        -I$(top_srcdir)                 \
        $(GLIB_CFLAGS)
 
index 4577fc9a9f8d5cafadc123328851bd3d69fa5125..33dda5c379832cae7cb170ff1b4d4ef8346329ba 100644 (file)
@@ -4,7 +4,7 @@ else
 Z_LIBS=
 endif
 
-INCLUDES = \
+AM_CPPFLAGS = \
        -fexceptions -DMONO_USE_EXC_TABLES      \
        -I$(top_srcdir)         \
        $(GLIB_CFLAGS)
@@ -24,7 +24,18 @@ if HAVE_OPROFILE
 endif
 
 if SUPPORT_BOEHM
-LIBMONO=$(top_builddir)/mono/mini/libmono-$(API_VER).la
+if !SHARED_MONO
+static_libs=   \
+       $(top_builddir)/mono/metadata/libmonoruntime-static.la  \
+       $(top_builddir)/mono/io-layer/libwapi.la        \
+       $(top_builddir)/mono/utils/libmonoutils.la \
+       $(GLIB_LIBS) $(LIBICONV) \
+       $(LIBGC_STATIC_LIBS)
+
+LIBMONO=$(top_builddir)/mono/mini/$(LIBMONO_LA) $(static_libs)
+else
+LIBMONO=$(top_builddir)/mono/mini/$(LIBMONO_LA)
+endif
 else
 LIBMONO=$(top_builddir)/mono/mini/libmonosgen-$(API_VER).la
 endif
index 84a0ad96875e115aeb33d381f7e75deb565158b1..e0138fa61301dca4659554026fe048059cacb4fd 100644 (file)
@@ -1035,7 +1035,7 @@ test-oom: $(OOM_TESTS)
 
 noinst_LTLIBRARIES = libtest.la
 
-INCLUDES = $(GLIB_CFLAGS) $(GMODULE_CFLAGS)
+AM_CPPFLAGS = $(GLIB_CFLAGS) $(GMODULE_CFLAGS)
 
 if HOST_WIN32
 # gcc-3.4.4 emits incorrect code when making indirect calls to stdcall functions using a tail call
index 217a2ebaffe7117db1b2b6a9c8aceeaef82202db..b8d35607ae6dc3411731a31bead8c26b96274408 100644 (file)
@@ -49,6 +49,10 @@ namespace Test {
        [X, Z, Serializable]
        class Y {
        }
+
+       [My("arg\0string\0with\0nuls")]
+       class NulTests {
+       }
                        
        [My("testclass")]
        [My2("testclass", 22)]
@@ -106,6 +110,10 @@ namespace Test {
                        if (typeof(int[,]).GetConstructor (new Type [] { typeof (int), typeof (int) }).GetCustomAttributes (true).Length != 0)
                                return 7;
 
+                       // Test that nuls are preserved (see Xamarin bug 5732)
+                       if (((MyAttribute)typeof (NulTests).GetCustomAttributes (true)[0]).val != "arg\0string\0with\0nuls")
+                               return 8;
+
                        return 0;
                }
        }
index 6fdb608ecbbb2a5d0ac6c18446dc3a627f8f0cf6..5e078dccfaad6cddcfbe7b0462d2b8e32f59afb3 100644 (file)
@@ -1,6 +1,6 @@
 noinst_LTLIBRARIES = libmonoutils.la
 
-INCLUDES = -I$(top_srcdir) -I$(top_srcdir)/mono $(LIBGC_CPPFLAGS) $(GLIB_CFLAGS)
+AM_CPPFLAGS = -I$(top_srcdir) -I$(top_srcdir)/mono $(LIBGC_CPPFLAGS) $(GLIB_CFLAGS)
 
 if ENABLE_DTRACE
 
index 1b540f705da5c1423d74796dcaa09a6aa14a4004..0e2492c73d3cdffbf77d84fbbc0971e71eccd9e2 100644 (file)
 
 #ifdef ENABLE_DTRACE
 
-
 #include <mono/utils/mono-dtrace.h>
 
-#define MONO_PROBE_VES_INIT_BEGIN()            MONO_VES_INIT_BEGIN ()
-#define MONO_PROBE_VES_INIT_BEGIN_ENABLED()    MONO_VES_INIT_BEGIN_ENABLED ()
-
-#define MONO_PROBE_VES_INIT_END()              MONO_VES_INIT_END ()
-#define MONO_PROBE_VES_INIT_END_ENABLED()      MONO_VES_INIT_END_ENABLED ()
-
-
 #define MONO_PROBE_METHOD_COMPILE_BEGIN(method) \
        MONO_METHOD_COMPILE_BEGIN ( \
                mono_type_get_full_name ((method)->klass), \
                (gchar*)(method)->name, \
                mono_signature_get_desc ((method)->signature, TRUE) \
        )
-#define MONO_PROBE_METHOD_COMPILE_BEGIN_ENABLED()      MONO_METHOD_COMPILE_BEGIN_ENABLED ()
 
 #define MONO_PROBE_METHOD_COMPILE_END(method, success) \
        MONO_METHOD_COMPILE_END ( \
                mono_signature_get_desc ((method)->signature, TRUE), \
                success \
        )
-#define MONO_PROBE_METHOD_COMPILE_END_ENABLED()        MONO_METHOD_COMPILE_END_ENABLED ()
 
+#else
 
-#define MONO_PROBE_GC_BEGIN(generation)        MONO_GC_BEGIN (generation)
-#define MONO_PROBE_GC_BEGIN_ENABLED()  MONO_GC_BEGIN_ENABLED ()
+#define MONO_VES_INIT_BEGIN()
+#define MONO_VES_INIT_BEGIN_ENABLED() (0)
 
-#define MONO_PROBE_GC_END(generation)  MONO_GC_END (generation)
-#define MONO_PROBE_GC_END_ENABLED()    MONO_GC_END_ENABLED ()
+#define MONO_VES_INIT_END()
+#define MONO_VES_INIT_END_ENABLED() (0)
 
 
-#else
+#define MONO_PROBE_METHOD_COMPILE_BEGIN(method)
+#define MONO_METHOD_COMPILE_BEGIN_ENABLED() (0)
 
+#define MONO_PROBE_METHOD_COMPILE_END(method, success)
+#define MONO_METHOD_COMPILE_END_ENABLED() (0)
 
-#define MONO_PROBE_VES_INIT_BEGIN()
-#define MONO_PROBE_VES_INIT_BEGIN_ENABLED() (0)
 
-#define MONO_PROBE_VES_INIT_END()
-#define MONO_PROBE_VES_INIT_END_ENABLED() (0)
+#define MONO_GC_BEGIN(generation)
+#define MONO_GC_BEGIN_ENABLED() (0)
 
+#define MONO_GC_END(generation)
+#define MONO_GC_END_ENABLED() (0)
 
-#define MONO_PROBE_METHOD_COMPILE_BEGIN(method)
-#define MONO_PROBE_METHOD_COMPILE_BEGIN_ENABLED() (0)
 
-#define MONO_PROBE_METHOD_COMPILE_END(method, success)
-#define MONO_PROBE_METHOD_COMPILE_END_ENABLED() (0)
+#define MONO_GC_LOCKED()
+#define MONO_GC_LOCKED_ENABLED() (0)
 
+#define MONO_GC_UNLOCKED()
+#define MONO_GC_UNLOCKED_ENABLED() (0)
 
-#define MONO_PROBE_GC_BEGIN(generation)
-#define MONO_PROBE_GC_BEGIN_ENABLED() (0)
 
-#define MONO_PROBE_GC_END(generation)
-#define MONO_PROBE_GC_END_ENABLED() (0)
+#define MONO_GC_HEAP_ALLOC(addr,size)
+#define MONO_GC_HEAP_FREE(addr,size)
 
 
-#endif
+#define MONO_GC_NURSERY_TLAB_ALLOC(addr,len)
+#define MONO_GC_NURSERY_TLAB_ALLOC_ENABLED()   (0)
+
+#define MONO_GC_NURSERY_OBJ_ALLOC(addr,size,ns_name,class_name)
+#define MONO_GC_NURSERY_OBJ_ALLOC_ENABLED()    (0)
+
+
+#define MONO_GC_MAJOR_OBJ_ALLOC_LARGE(addr,size,ns_name,class_name)
+#define MONO_GC_MAJOR_OBJ_ALLOC_LARGE_ENABLED()        (0)
+
+#define MONO_GC_MAJOR_OBJ_ALLOC_PINNED(addr,size,ns_name,class_name)
+#define MONO_GC_MAJOR_OBJ_ALLOC_PINNED_ENABLED()       (0)
+
+#define MONO_GC_MAJOR_OBJ_ALLOC_DEGRADED(addr,size,ns_name,class_name)
+#define MONO_GC_MAJOR_OBJ_ALLOC_DEGRADED_ENABLED()     (0)
+
+#define MONO_GC_MAJOR_OBJ_ALLOC_MATURE(addr,size,ns_name,class_name)
+#define MONO_GC_MAJOR_OBJ_ALLOC_MATURE_ENABLED()       (0)
+
+
+#define MONO_GC_OBJ_MOVED(dest,src,dest_gen,src_gen,size,ns_name,class_name)
+#define MONO_GC_OBJ_MOVED_ENABLED()    (0)
+
+
+#define MONO_GC_NURSERY_SWEPT(addr,len)
+#define MONO_GC_NURSERY_SWEPT_ENABLED()        (0)
+
+#define MONO_GC_MAJOR_SWEPT(addr,len)
+#define MONO_GC_MAJOR_SWEPT_ENABLED()  (0)
+
+
+#define MONO_GC_OBJ_PINNED(addr,size,ns_name,class_name,generation)
+#define MONO_GC_OBJ_PINNED_ENABLED()   (0)
 
 #endif
 
+#endif
index 1d39e86cb0245f50bfc1133c233bde1eaf13213a..5adc0c99ee895a365e3ac5281782ae6855938d1e 100644 (file)
@@ -16,7 +16,6 @@
 #include <mach/thread_act.h>
 #include <mach/thread_status.h>
 
-#include <mono/arch/x86/x86-codegen.h>
 #include <mono/metadata/appdomain.h>
 #include <mono/metadata/debug-helpers.h>
 #include <mono/metadata/mono-debug.h>
index 116721206a34200f062edc7c50f199e12451a3ef..06b34e8689b1aac3837da6c262d681dbd3b27ee4 100644 (file)
@@ -12,8 +12,9 @@
 #include <mach/thread_act.h>
 #include <mach/thread_status.h>
 
-#if defined(__i386__) || defined (__x86_64__)
 #define MONO_MACH_ARCH_SUPPORTED 1
+#if defined(__arm__)
+typedef _STRUCT_MCONTEXT *mcontext_t;
 #endif
 
 // We need to define this here since we need _XOPEN_SOURCE for mono
index 15f3c0c15acfab3333829bbacfb90c6312d9731d..ef33f23bd95dbf74de646e811851a6d2ede7a39a 100644 (file)
@@ -258,6 +258,9 @@ mono_sigctx_to_monoctx (void *sigctx, MonoContext *mctx)
        mctx->regs [ARMREG_SP] = UCONTEXT_REG_SP (my_uc);
        mctx->cpsr = UCONTEXT_REG_CPSR (my_uc);
        memcpy (&mctx->regs, &UCONTEXT_REG_R0 (my_uc), sizeof (mgreg_t) * 16);
+#ifdef UCONTEXT_REG_VFPREGS
+       memcpy (&mctx->fregs, UCONTEXT_REG_VFPREGS (my_uc), sizeof (double) * 16);
+#endif
 #endif
 }
 
@@ -274,6 +277,9 @@ mono_monoctx_to_sigctx (MonoContext *mctx, void *ctx)
        UCONTEXT_REG_CPSR (my_uc) = mctx->cpsr;
        /* The upper registers are not guaranteed to be valid */
        memcpy (&UCONTEXT_REG_R0 (my_uc), &mctx->regs, sizeof (mgreg_t) * 12);
+#ifdef UCONTEXT_REG_VFPREGS
+       memcpy (UCONTEXT_REG_VFPREGS (my_uc), &mctx->fregs, sizeof (double) * 16);
+#endif
 #endif
 }
 
index 2c9e0941bb930e77d7a9c49ede3f449af8d4def9..98ae7951d041f92fd00b3cafb827a222d431da0e 100644 (file)
@@ -221,7 +221,7 @@ typedef struct {
 typedef struct {
        mgreg_t pc;
        mgreg_t regs [16];
-       double fregs [8];
+       double fregs [16];
        mgreg_t cpsr;
 } MonoContext;
 
index df76434d347fa777ee937980b4d40dc427607788..8b0634e7257a696b98011b4aed5a794eae69e26e 100644 (file)
@@ -322,6 +322,7 @@ typedef struct ucontext {
        #define UCONTEXT_REG_R11(ctx) (((ucontext_t*)(ctx))->uc_mcontext->__ss.__r[11])
        #define UCONTEXT_REG_R12(ctx) (((ucontext_t*)(ctx))->uc_mcontext->__ss.__r[12])
        #define UCONTEXT_REG_CPSR(ctx) (((ucontext_t*)(ctx))->uc_mcontext->__ss.__cpsr)
+       #define UCONTEXT_REG_VFPREGS(ctx) (double*)(((ucontext_t*)(ctx))->uc_mcontext->__fs.__r)
 #elif defined(__linux__)
        typedef struct arm_ucontext {
                unsigned long       uc_flags;
index c427472f4fa3233525124461b35c70de2c9ebcfa..49bba1764fcb55d5b7ab3b3839aff117f0afb9fa 100644 (file)
@@ -1,6 +1,6 @@
 lib_LTLIBRARIES = libmonowrapper.la
 
-INCLUDES = $(GLIB_CFLAGS) -I$(top_srcdir)
+AM_CPPFLAGS = $(GLIB_CFLAGS) -I$(top_srcdir)
 
 if HOST_WIN32
 # glob.c doesnt build under windows
index 86486feaafc352ae1b4c46f1da8a02478307b110..07bbd0b114ec4b6d27bb02453a9c4eeb70629646 100644 (file)
@@ -3,7 +3,7 @@
     <project dir="mcs" library="basic-basic">
       <boot></boot>
       <mcs>gmcs</mcs>
-      <flags>/codepage:65001 -d:STATIC,NO_SYMBOL_WRITER -d:NET_1_1 -d:NET_2_0 -d:BOOTSTRAP_BASIC -nowarn:1699 /noconfig</flags>
+      <flags>/codepage:65001 -d:STATIC,NO_SYMBOL_WRITER -d:NET_1_1 -d:NET_2_0 -d:BOOTSTRAP_BASIC -nowarn:1699 -optimize /noconfig</flags>
       <output>basic.exe</output>
       <built_sources>cs-parser.cs</built_sources>
       <library_output>basic.exe</library_output>
@@ -13,7 +13,7 @@
     <project dir="class/corlib" library="corlib-basic">
       <boot>true</boot>
       <mcs>MONO_PATH=./../../class/lib/basic: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -unsafe -nostdlib -nowarn:612,618 -d:INSIDE_CORLIB -d:LIBC -d:NET_1_1 -d:NET_2_0 -d:BOOTSTRAP_BASIC -nowarn:1699 /noconfig -resource:resources/collation.core.bin -resource:resources/collation.tailoring.bin -resource:resources/collation.cjkCHS.bin -resource:resources/collation.cjkCHT.bin -resource:resources/collation.cjkJA.bin -resource:resources/collation.cjkKO.bin -resource:resources/collation.cjkKOlv2.bin</flags>
+      <flags>/codepage:65001 -unsafe -nostdlib -nowarn:612,618 -d:INSIDE_CORLIB -d:LIBC -d:NET_1_1 -d:NET_2_0 -d:BOOTSTRAP_BASIC -nowarn:1699 -optimize /noconfig -resource:resources/collation.core.bin -resource:resources/collation.tailoring.bin -resource:resources/collation.cjkCHS.bin -resource:resources/collation.cjkCHT.bin -resource:resources/collation.cjkJA.bin -resource:resources/collation.cjkKO.bin -resource:resources/collation.cjkKOlv2.bin</flags>
       <output>mscorlib.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/basic/tmp/mscorlib.dll</library_output>
@@ -23,7 +23,7 @@
     <project dir="class/System" library="System-basic">
       <boot>true</boot>
       <mcs>MONO_PATH=./../../class/lib/basic: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:BOOTSTRAP_BASIC -nowarn:1699 /noconfig -nowarn:618 -d:CONFIGURATION_2_0 -unsafe -resource:resources/Asterisk.wav -resource:resources/Beep.wav -resource:resources/Exclamation.wav -resource:resources/Hand.wav -resource:resources/Question.wav -d:XML_DEP -r:System.Xml.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:BOOTSTRAP_BASIC -nowarn:1699 -optimize /noconfig -nowarn:618 -d:CONFIGURATION_2_0 -unsafe -resource:resources/Asterisk.wav -resource:resources/Beep.wav -resource:resources/Exclamation.wav -resource:resources/Hand.wav -resource:resources/Question.wav -d:XML_DEP -r:System.Xml.dll</flags>
       <output>System.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/basic/tmp/System.dll</library_output>
@@ -33,7 +33,7 @@
     <project dir="class/System.XML" library="System.Xml-basic">
       <boot>true</boot>
       <mcs>MONO_PATH=./../../class/lib/basic: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:BOOTSTRAP_BASIC -nowarn:1699 /noconfig -r:mscorlib.dll -r:System.dll -nowarn:0618,0612,0642</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:BOOTSTRAP_BASIC -nowarn:1699 -optimize /noconfig -r:mscorlib.dll -r:System.dll -nowarn:0618,0612,0642</flags>
       <output>System.Xml.dll</output>
       <built_sources>System.Xml.XPath/Parser.cs Mono.Xml.Xsl/PatternParser.cs Mono.Xml.Xsl/PatternTokenizer.cs</built_sources>
       <library_output>./../../class/lib/basic/tmp/System.Xml.dll</library_output>
@@ -43,7 +43,7 @@
     <project dir="class/System" library="System-basic">
       <boot>true</boot>
       <mcs>MONO_PATH=./../../class/lib/basic: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:BOOTSTRAP_BASIC -nowarn:1699 /noconfig -nowarn:618 -d:CONFIGURATION_2_0 -unsafe -resource:resources/Asterisk.wav -resource:resources/Beep.wav -resource:resources/Exclamation.wav -resource:resources/Hand.wav -resource:resources/Question.wav -d:XML_DEP -r:System.Xml.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:BOOTSTRAP_BASIC -nowarn:1699 -optimize /noconfig -nowarn:618 -d:CONFIGURATION_2_0 -unsafe -resource:resources/Asterisk.wav -resource:resources/Beep.wav -resource:resources/Exclamation.wav -resource:resources/Hand.wav -resource:resources/Question.wav -d:XML_DEP -r:System.Xml.dll</flags>
       <output>System.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/basic/tmp/System.dll</library_output>
@@ -53,7 +53,7 @@
     <project dir="class/Mono.Security" library="Mono.Security-basic">
       <boot>true</boot>
       <mcs>MONO_PATH=./../../class/lib/basic: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:BOOTSTRAP_BASIC -nowarn:1699 /noconfig -r:System.dll -unsafe -nowarn:1030</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:BOOTSTRAP_BASIC -nowarn:1699 -optimize /noconfig -r:System.dll -unsafe -nowarn:1030</flags>
       <output>Mono.Security.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/basic/tmp/Mono.Security.dll</library_output>
@@ -63,7 +63,7 @@
     <project dir="class/System.Core" library="System.Core-basic">
       <boot>true</boot>
       <mcs>MONO_PATH=./../../class/lib/basic: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:BOOTSTRAP_BASIC -nowarn:1699 /noconfig -d:INSIDE_SYSCORE -d:LIBC /r:mscorlib.dll /r:System.dll -unsafe -d:NET_3_5 -nowarn:1720</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:BOOTSTRAP_BASIC -nowarn:1699 -optimize /noconfig -d:INSIDE_SYSCORE -d:LIBC /r:mscorlib.dll /r:System.dll -unsafe -d:NET_3_5 -nowarn:1720</flags>
       <output>System.Core.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/basic/System.Core.dll</library_output>
@@ -73,7 +73,7 @@
     <project dir="class/corlib" library="corlib-build">
       <boot>true</boot>
       <mcs>MONO_PATH=./../../class/lib/basic: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/basic/basic.exe</mcs>
-      <flags>/codepage:65001 -unsafe -nostdlib -nowarn:612,618 -d:INSIDE_CORLIB -d:LIBC -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/build /noconfig -resource:resources/collation.core.bin -resource:resources/collation.tailoring.bin -resource:resources/collation.cjkCHS.bin -resource:resources/collation.cjkCHT.bin -resource:resources/collation.cjkJA.bin -resource:resources/collation.cjkKO.bin -resource:resources/collation.cjkKOlv2.bin --runtime:v4</flags>
+      <flags>/codepage:65001 -unsafe -nostdlib -nowarn:612,618 -d:INSIDE_CORLIB -d:LIBC -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/build -optimize /noconfig -resource:resources/collation.core.bin -resource:resources/collation.tailoring.bin -resource:resources/collation.cjkCHS.bin -resource:resources/collation.cjkCHT.bin -resource:resources/collation.cjkJA.bin -resource:resources/collation.cjkKO.bin -resource:resources/collation.cjkKOlv2.bin --runtime:v4</flags>
       <output>mscorlib.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/build/tmp/mscorlib.dll</library_output>
@@ -83,7 +83,7 @@
     <project dir="class/System" library="System-build">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/basic: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/basic/basic.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/build -r:mscorlib.dll /noconfig -nowarn:618 -d:CONFIGURATION_2_0 -unsafe -resource:resources/Asterisk.wav -resource:resources/Beep.wav -resource:resources/Exclamation.wav -resource:resources/Hand.wav -resource:resources/Question.wav -d:XML_DEP -r:System.Xml.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/build -r:mscorlib.dll -optimize /noconfig -nowarn:618 -d:CONFIGURATION_2_0 -unsafe -resource:resources/Asterisk.wav -resource:resources/Beep.wav -resource:resources/Exclamation.wav -resource:resources/Hand.wav -resource:resources/Question.wav -d:XML_DEP -r:System.Xml.dll</flags>
       <output>System.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/build/tmp/System.dll</library_output>
@@ -93,7 +93,7 @@
     <project dir="class/System.XML" library="System.Xml-build">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/basic: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/basic/basic.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/build -r:mscorlib.dll /noconfig -r:mscorlib.dll -r:System.dll -nowarn:0618,0612,0642</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/build -r:mscorlib.dll -optimize /noconfig -r:mscorlib.dll -r:System.dll -nowarn:0618,0612,0642</flags>
       <output>System.Xml.dll</output>
       <built_sources>System.Xml.XPath/Parser.cs Mono.Xml.Xsl/PatternParser.cs Mono.Xml.Xsl/PatternTokenizer.cs</built_sources>
       <library_output>./../../class/lib/build/tmp/System.Xml.dll</library_output>
     <project dir="class/System" library="System-build">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/basic: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/basic/basic.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/build -r:mscorlib.dll /noconfig -nowarn:618 -d:CONFIGURATION_2_0 -unsafe -resource:resources/Asterisk.wav -resource:resources/Beep.wav -resource:resources/Exclamation.wav -resource:resources/Hand.wav -resource:resources/Question.wav -d:XML_DEP -r:System.Xml.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/build -r:mscorlib.dll -optimize /noconfig -nowarn:618 -d:CONFIGURATION_2_0 -unsafe -resource:resources/Asterisk.wav -resource:resources/Beep.wav -resource:resources/Exclamation.wav -resource:resources/Hand.wav -resource:resources/Question.wav -d:XML_DEP -r:System.Xml.dll</flags>
       <output>System.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/build/tmp/System.dll</library_output>
     <project dir="class/Mono.Security" library="Mono.Security-build">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/basic: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/basic/basic.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/build -r:mscorlib.dll /noconfig -r:System.dll -unsafe -nowarn:1030</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/build -r:mscorlib.dll -optimize /noconfig -r:System.dll -unsafe -nowarn:1030</flags>
       <output>Mono.Security.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/build/tmp/Mono.Security.dll</library_output>
     <project dir="class/Mono.Posix" library="Mono.Posix-build">
       <boot>true</boot>
       <mcs>MONO_PATH=./../../class/lib/basic: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/basic/basic.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/build -r:mscorlib.dll /noconfig /unsafe /r:mscorlib.dll /r:System.dll /nowarn:0618,612</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/build -r:mscorlib.dll -optimize /noconfig /unsafe /r:mscorlib.dll /r:System.dll /nowarn:0618,612</flags>
       <output>Mono.Posix.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/build/Mono.Posix.dll</library_output>
     <project dir="class/System.Core" library="System.Core-build">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/basic: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/basic/basic.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/build -r:mscorlib.dll /noconfig -d:INSIDE_SYSCORE -d:LIBC /r:mscorlib.dll /r:System.dll -unsafe -d:NET_3_5 -nowarn:1720 -d:FEATURE_CORE_DLR,FEATURE_REFEMIT,FEATURE_PDBEMIT -r:Mono.Posix.dll -unsafe</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/build -r:mscorlib.dll -optimize /noconfig -d:INSIDE_SYSCORE -d:LIBC /r:mscorlib.dll /r:System.dll -unsafe -d:NET_3_5 -nowarn:1720 -d:FEATURE_CORE_DLR,FEATURE_REFEMIT,FEATURE_PDBEMIT -r:Mono.Posix.dll -unsafe</flags>
       <output>System.Core.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/build/System.Core.dll</library_output>
     <project dir="mcs" library="mcs-build">
       <boot></boot>
       <mcs>MONO_PATH=./../class/lib/basic: /home/marek/git/mono/runtime/mono-wrapper ./../class/lib/basic/basic.exe</mcs>
-      <flags>/codepage:65001 -lib:./../class/lib/build -debug -d:STATIC,NO_SYMBOL_WRITER -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../class/lib/build -r:mscorlib.dll /noconfig</flags>
+      <flags>/codepage:65001 -lib:./../class/lib/build -debug -d:STATIC,NO_SYMBOL_WRITER -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../class/lib/build -r:mscorlib.dll -optimize /noconfig</flags>
       <output>mcs.exe</output>
       <built_sources>cs-parser.cs</built_sources>
       <library_output>mcs.exe</library_output>
     <project dir="tools/gacutil" library="gacutil-build">
       <boot></boot>
       <mcs>MONO_PATH=./../../class/lib/basic: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/basic/basic.exe</mcs>
-      <flags>/codepage:65001 -r:Mono.Security.dll -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/build -r:mscorlib.dll /noconfig</flags>
+      <flags>/codepage:65001 -r:Mono.Security.dll -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/build -r:mscorlib.dll -optimize /noconfig</flags>
       <output>gacutil.exe</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/build/gacutil.exe</library_output>
     <project dir="tools/culevel" library="culevel-build">
       <boot></boot>
       <mcs>MONO_PATH=./../../class/lib/basic: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/basic/basic.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/build -r:mscorlib.dll /noconfig</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/build -r:mscorlib.dll -optimize /noconfig</flags>
       <output>culevel.exe</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/build/culevel.exe</library_output>
     <project dir="class/corlib" library="corlib-net_2_0">
       <boot>true</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -unsafe -nostdlib -nowarn:612,618 -d:INSIDE_CORLIB -d:LIBC -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -debug /noconfig -resource:resources/collation.core.bin -resource:resources/collation.tailoring.bin -resource:resources/collation.cjkCHS.bin -resource:resources/collation.cjkCHT.bin -resource:resources/collation.cjkJA.bin -resource:resources/collation.cjkKO.bin -resource:resources/collation.cjkKOlv2.bin --runtime:v2</flags>
+      <flags>/codepage:65001 -unsafe -nostdlib -nowarn:612,618 -d:INSIDE_CORLIB -d:LIBC -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -debug -optimize /noconfig -resource:resources/collation.core.bin -resource:resources/collation.tailoring.bin -resource:resources/collation.cjkCHS.bin -resource:resources/collation.cjkCHT.bin -resource:resources/collation.cjkJA.bin -resource:resources/collation.cjkKO.bin -resource:resources/collation.cjkKOlv2.bin --runtime:v2</flags>
       <output>mscorlib.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_2_0/tmp/mscorlib.dll</library_output>
     <project dir="class/corlib" library="corlib-tests-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -unsafe -nostdlib -nowarn:612,618 -d:INSIDE_CORLIB -d:LIBC -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -debug -r:./../../class/lib/net_2_0/mscorlib.dll -debug+ -debug:full -nowarn:168,219,618,672 -unsafe -r:Mono.Posix.dll -r:System.Core.dll -define:MONO_DATACONVERTER_STATIC_METHODS</flags>
+      <flags>/codepage:65001 -unsafe -nostdlib -nowarn:612,618 -d:INSIDE_CORLIB -d:LIBC -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -debug -optimize -r:./../../class/lib/net_2_0/mscorlib.dll -debug+ -debug:full -nowarn:168,219,618,672 -unsafe -r:Mono.Posix.dll -r:System.Core.dll -define:MONO_DATACONVERTER_STATIC_METHODS</flags>
       <output>corlib_test_net_2_0.dll</output>
       <built_sources></built_sources>
       <library_output>corlib_test_net_2_0.dll</library_output>
     <project dir="class/System" library="System-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig -nowarn:618 -d:CONFIGURATION_2_0 -unsafe -resource:resources/Asterisk.wav -resource:resources/Beep.wav -resource:resources/Exclamation.wav -resource:resources/Hand.wav -resource:resources/Question.wav -r:PrebuiltSystem=../lib/net_2_0/System.dll -d:XML_DEP -r:System.Xml.dll -d:SECURITY_DEP -r:Mono.Security.dll -d:CONFIGURATION_DEP -r:System.Configuration.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig -nowarn:618 -d:CONFIGURATION_2_0 -unsafe -resource:resources/Asterisk.wav -resource:resources/Beep.wav -resource:resources/Exclamation.wav -resource:resources/Hand.wav -resource:resources/Question.wav -r:PrebuiltSystem=../lib/net_2_0/System.dll -d:XML_DEP -r:System.Xml.dll -d:SECURITY_DEP -r:Mono.Security.dll -d:CONFIGURATION_DEP -r:System.Configuration.dll</flags>
       <output>System.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_2_0/tmp/System.dll</library_output>
     <project dir="class/System" library="System-tests-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -r:./../../class/lib/net_2_0/System.dll -r:System.Drawing.dll -r:Mono.Security.dll -r:System.Data -r:System.Xml.dll -r:System.Core.dll -nowarn:0618 -nowarn:219 -nowarn:67 -nowarn:169 -nowarn:612 -resource:Test/System/test-uri-props.txt,test-uri-props.txt -resource:Test/System/test-uri-props-manual.txt,test-uri-props-manual.txt -resource:Test/System/test-uri-relative-props.txt,test-uri-relative-props.txt -r:System.Configuration</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_2_0/System.dll -r:System.Drawing.dll -r:Mono.Security.dll -r:System.Data -r:System.Xml.dll -r:System.Core.dll -nowarn:0618 -nowarn:219 -nowarn:67 -nowarn:169 -nowarn:612 -resource:Test/System/test-uri-props.txt,test-uri-props.txt -resource:Test/System/test-uri-props-manual.txt,test-uri-props-manual.txt -resource:Test/System/test-uri-relative-props.txt,test-uri-relative-props.txt -r:System.Configuration</flags>
       <output>System_test_net_2_0.dll</output>
       <built_sources></built_sources>
       <library_output>System_test_net_2_0.dll</library_output>
     <project dir="class/System.XML" library="System.Xml-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig -r:mscorlib.dll -r:System.dll -nowarn:0618,0612,0642 -define:CONFIGURATION_DEP -r:System.Configuration.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig -r:mscorlib.dll -r:System.dll -nowarn:0618,0612,0642 -define:CONFIGURATION_DEP -r:System.Configuration.dll</flags>
       <output>System.Xml.dll</output>
       <built_sources>System.Xml.XPath/Parser.cs Mono.Xml.Xsl/PatternParser.cs Mono.Xml.Xsl/PatternTokenizer.cs</built_sources>
       <library_output>./../../class/lib/net_2_0/tmp/System.Xml.dll</library_output>
     <project dir="class/System.XML" library="System.Xml-tests-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -r:./../../class/lib/net_2_0/System.Xml.dll -r:mscorlib.dll -r:System.dll -nowarn:0618,0612,0642 -define:CONFIGURATION_DEP -r:System.Configuration.dll -nowarn:0618 -nowarn:219 -nowarn:169 -r:System.Data.dll -r:System.Core.dll -r:System.Configuration</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_2_0/System.Xml.dll -r:mscorlib.dll -r:System.dll -nowarn:0618,0612,0642 -define:CONFIGURATION_DEP -r:System.Configuration.dll -nowarn:0618 -nowarn:219 -nowarn:169 -r:System.Data.dll -r:System.Core.dll -r:System.Configuration</flags>
       <output>System.Xml_test_net_2_0.dll</output>
       <built_sources>System.Xml.XPath/Parser.cs Mono.Xml.Xsl/PatternParser.cs Mono.Xml.Xsl/PatternTokenizer.cs</built_sources>
       <library_output>System.Xml_test_net_2_0.dll</library_output>
     <project dir="class/Mono.CompilerServices.SymbolWriter" library="Mono.CompilerServices.SymbolWriter-net_2_0">
       <boot>true</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig /r:System.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig /r:System.dll</flags>
       <output>Mono.CompilerServices.SymbolWriter.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_2_0/tmp/Mono.CompilerServices.SymbolWriter.dll</library_output>
     <project dir="class/Mono.Posix" library="Mono.Posix-net_2_0">
       <boot>true</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig /unsafe /r:mscorlib.dll /r:System.dll /nowarn:0618,612</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig /unsafe /r:mscorlib.dll /r:System.dll /nowarn:0618,612</flags>
       <output>Mono.Posix.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_2_0/Mono.Posix.dll</library_output>
     <project dir="class/Mono.Posix" library="Mono.Posix-tests-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -r:./../../class/lib/net_2_0/Mono.Posix.dll /r:Mono.Posix.dll /r:System.dll /nowarn:0219,0618</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_2_0/Mono.Posix.dll /r:Mono.Posix.dll /r:System.dll /nowarn:0219,0618</flags>
       <output>Mono.Posix_test_net_2_0.dll</output>
       <built_sources></built_sources>
       <library_output>Mono.Posix_test_net_2_0.dll</library_output>
     <project dir="class/System.Core" library="System.Core-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig -d:INSIDE_SYSCORE -d:LIBC /r:mscorlib.dll /r:System.dll -unsafe -d:NET_3_5 -nowarn:1720 -r:Mono.Posix.dll -unsafe</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig -d:INSIDE_SYSCORE -d:LIBC /r:mscorlib.dll /r:System.dll -unsafe -d:NET_3_5 -nowarn:1720 -r:Mono.Posix.dll -unsafe</flags>
       <output>System.Core.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_2_0/System.Core.dll</library_output>
     <project dir="class/System.Core" library="System.Core-tests-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -r:./../../class/lib/net_2_0/System.Core.dll -d:INSIDE_SYSCORE -d:LIBC /r:mscorlib.dll /r:System.dll -unsafe -d:NET_3_5 -nowarn:1720 -r:Mono.Posix.dll -unsafe</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_2_0/System.Core.dll -d:INSIDE_SYSCORE -d:LIBC /r:mscorlib.dll /r:System.dll -unsafe -d:NET_3_5 -nowarn:1720 -r:Mono.Posix.dll -unsafe</flags>
       <output>System.Core_test_net_2_0.dll</output>
       <built_sources></built_sources>
       <library_output>System.Core_test_net_2_0.dll</library_output>
     <project dir="class/Mono.Security" library="Mono.Security-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig -r:System.dll -unsafe -nowarn:1030</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig -r:System.dll -unsafe -nowarn:1030</flags>
       <output>Mono.Security.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_2_0/tmp/Mono.Security.dll</library_output>
     <project dir="class/Mono.Security" library="Mono.Security-tests-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -r:./../../class/lib/net_2_0/Mono.Security.dll -r:System.dll -unsafe -nowarn:1030 -nowarn:169,219,618,672</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_2_0/Mono.Security.dll -r:System.dll -unsafe -nowarn:1030 -nowarn:169,219,618,672</flags>
       <output>Mono.Security_test_net_2_0.dll</output>
       <built_sources></built_sources>
       <library_output>Mono.Security_test_net_2_0.dll</library_output>
     <project dir="class/System" library="System-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig -nowarn:618 -d:CONFIGURATION_2_0 -unsafe -resource:resources/Asterisk.wav -resource:resources/Beep.wav -resource:resources/Exclamation.wav -resource:resources/Hand.wav -resource:resources/Question.wav -r:PrebuiltSystem=../lib/net_2_0/System.dll -d:XML_DEP -r:System.Xml.dll -d:SECURITY_DEP -r:Mono.Security.dll -d:CONFIGURATION_DEP -r:System.Configuration.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig -nowarn:618 -d:CONFIGURATION_2_0 -unsafe -resource:resources/Asterisk.wav -resource:resources/Beep.wav -resource:resources/Exclamation.wav -resource:resources/Hand.wav -resource:resources/Question.wav -r:PrebuiltSystem=../lib/net_2_0/System.dll -d:XML_DEP -r:System.Xml.dll -d:SECURITY_DEP -r:Mono.Security.dll -d:CONFIGURATION_DEP -r:System.Configuration.dll</flags>
       <output>System.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_2_0/tmp/System.dll</library_output>
     <project dir="class/System" library="System-tests-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -r:./../../class/lib/net_2_0/System.dll -r:System.Drawing.dll -r:Mono.Security.dll -r:System.Data -r:System.Xml.dll -r:System.Core.dll -nowarn:0618 -nowarn:219 -nowarn:67 -nowarn:169 -nowarn:612 -resource:Test/System/test-uri-props.txt,test-uri-props.txt -resource:Test/System/test-uri-props-manual.txt,test-uri-props-manual.txt -resource:Test/System/test-uri-relative-props.txt,test-uri-relative-props.txt -r:System.Configuration</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_2_0/System.dll -r:System.Drawing.dll -r:Mono.Security.dll -r:System.Data -r:System.Xml.dll -r:System.Core.dll -nowarn:0618 -nowarn:219 -nowarn:67 -nowarn:169 -nowarn:612 -resource:Test/System/test-uri-props.txt,test-uri-props.txt -resource:Test/System/test-uri-props-manual.txt,test-uri-props-manual.txt -resource:Test/System/test-uri-relative-props.txt,test-uri-relative-props.txt -r:System.Configuration</flags>
       <output>System_test_net_2_0.dll</output>
       <built_sources></built_sources>
       <library_output>System_test_net_2_0.dll</library_output>
     <project dir="class/System.Security" library="System.Security-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig -nowarn:618 -r:mscorlib.dll -r:System.dll -r:System.Xml.dll -r:Mono.Security.dll -nowarn:414 -d:SECURITY_DEP</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig -nowarn:618 -r:mscorlib.dll -r:System.dll -r:System.Xml.dll -r:Mono.Security.dll -nowarn:414 -d:SECURITY_DEP</flags>
       <output>System.Security.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_2_0/System.Security.dll</library_output>
     <project dir="class/System.Security" library="System.Security-tests-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -r:./../../class/lib/net_2_0/System.Security.dll -nowarn:618 -r:mscorlib.dll -r:System.dll -r:System.Xml.dll -r:Mono.Security.dll -nowarn:414 -d:SECURITY_DEP -nowarn:169,219,1595 -nowarn:168,183,414</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_2_0/System.Security.dll -nowarn:618 -r:mscorlib.dll -r:System.dll -r:System.Xml.dll -r:Mono.Security.dll -nowarn:414 -d:SECURITY_DEP -nowarn:169,219,1595 -nowarn:168,183,414</flags>
       <output>System.Security_test_net_2_0.dll</output>
       <built_sources></built_sources>
       <library_output>System.Security_test_net_2_0.dll</library_output>
     <project dir="class/System.Configuration" library="System.Configuration-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig -r:mscorlib.dll -r:System.dll -r:System.Xml.dll -r:System.Security.dll -nowarn:618</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig -r:mscorlib.dll -r:System.dll -r:System.Xml.dll -r:System.Security.dll -nowarn:618</flags>
       <output>System.Configuration.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_2_0/tmp/System.Configuration.dll</library_output>
     <project dir="class/System.Configuration" library="System.Configuration-tests-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -r:./../../class/lib/net_2_0/System.Configuration.dll -r:mscorlib.dll -r:System.dll -r:System.Xml.dll -r:System.Security.dll -nowarn:618</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_2_0/System.Configuration.dll -r:mscorlib.dll -r:System.dll -r:System.Xml.dll -r:System.Security.dll -nowarn:618</flags>
       <output>System.Configuration_test_net_2_0.dll</output>
       <built_sources></built_sources>
       <library_output>System.Configuration_test_net_2_0.dll</library_output>
     <project dir="class/System" library="System-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig -nowarn:618 -d:CONFIGURATION_2_0 -unsafe -resource:resources/Asterisk.wav -resource:resources/Beep.wav -resource:resources/Exclamation.wav -resource:resources/Hand.wav -resource:resources/Question.wav -r:PrebuiltSystem=../lib/net_2_0/System.dll -d:XML_DEP -r:System.Xml.dll -d:SECURITY_DEP -r:Mono.Security.dll -d:CONFIGURATION_DEP -r:System.Configuration.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig -nowarn:618 -d:CONFIGURATION_2_0 -unsafe -resource:resources/Asterisk.wav -resource:resources/Beep.wav -resource:resources/Exclamation.wav -resource:resources/Hand.wav -resource:resources/Question.wav -r:PrebuiltSystem=../lib/net_2_0/System.dll -d:XML_DEP -r:System.Xml.dll -d:SECURITY_DEP -r:Mono.Security.dll -d:CONFIGURATION_DEP -r:System.Configuration.dll</flags>
       <output>System.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_2_0/tmp/System.dll</library_output>
     <project dir="class/System" library="System-tests-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -r:./../../class/lib/net_2_0/System.dll -r:System.Drawing.dll -r:Mono.Security.dll -r:System.Data -r:System.Xml.dll -r:System.Core.dll -nowarn:0618 -nowarn:219 -nowarn:67 -nowarn:169 -nowarn:612 -resource:Test/System/test-uri-props.txt,test-uri-props.txt -resource:Test/System/test-uri-props-manual.txt,test-uri-props-manual.txt -resource:Test/System/test-uri-relative-props.txt,test-uri-relative-props.txt -r:System.Configuration</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_2_0/System.dll -r:System.Drawing.dll -r:Mono.Security.dll -r:System.Data -r:System.Xml.dll -r:System.Core.dll -nowarn:0618 -nowarn:219 -nowarn:67 -nowarn:169 -nowarn:612 -resource:Test/System/test-uri-props.txt,test-uri-props.txt -resource:Test/System/test-uri-props-manual.txt,test-uri-props-manual.txt -resource:Test/System/test-uri-relative-props.txt,test-uri-relative-props.txt -r:System.Configuration</flags>
       <output>System_test_net_2_0.dll</output>
       <built_sources></built_sources>
       <library_output>System_test_net_2_0.dll</library_output>
     <project dir="class/System.XML" library="System.Xml-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig -r:mscorlib.dll -r:System.dll -nowarn:0618,0612,0642 -define:CONFIGURATION_DEP -r:System.Configuration.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig -r:mscorlib.dll -r:System.dll -nowarn:0618,0612,0642 -define:CONFIGURATION_DEP -r:System.Configuration.dll</flags>
       <output>System.Xml.dll</output>
       <built_sources>System.Xml.XPath/Parser.cs Mono.Xml.Xsl/PatternParser.cs Mono.Xml.Xsl/PatternTokenizer.cs</built_sources>
       <library_output>./../../class/lib/net_2_0/tmp/System.Xml.dll</library_output>
     <project dir="class/System.XML" library="System.Xml-tests-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -r:./../../class/lib/net_2_0/System.Xml.dll -r:mscorlib.dll -r:System.dll -nowarn:0618,0612,0642 -define:CONFIGURATION_DEP -r:System.Configuration.dll -nowarn:0618 -nowarn:219 -nowarn:169 -r:System.Data.dll -r:System.Core.dll -r:System.Configuration</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_2_0/System.Xml.dll -r:mscorlib.dll -r:System.dll -nowarn:0618,0612,0642 -define:CONFIGURATION_DEP -r:System.Configuration.dll -nowarn:0618 -nowarn:219 -nowarn:169 -r:System.Data.dll -r:System.Core.dll -r:System.Configuration</flags>
       <output>System.Xml_test_net_2_0.dll</output>
       <built_sources>System.Xml.XPath/Parser.cs Mono.Xml.Xsl/PatternParser.cs Mono.Xml.Xsl/PatternTokenizer.cs</built_sources>
       <library_output>System.Xml_test_net_2_0.dll</library_output>
     <project dir="class/I18N/Common" library="I18N-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 /r:mscorlib.dll /unsafe /define:DISABLE_UNSAFE -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig</flags>
+      <flags>/codepage:65001 /r:mscorlib.dll /unsafe /define:DISABLE_UNSAFE -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig</flags>
       <output>I18N.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_2_0/tmp/I18N.dll</library_output>
     <project dir="class/I18N/West" library="I18N.West-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 /r:mscorlib.dll /r:I18N.dll /unsafe -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig</flags>
+      <flags>/codepage:65001 /r:mscorlib.dll /r:I18N.dll /unsafe -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig</flags>
       <output>I18N.West.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_2_0/tmp/I18N.West.dll</library_output>
     <project dir="class/I18N/West" library="I18N.West-tests-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 /r:mscorlib.dll /r:I18N.dll /unsafe -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_2_0 -r:mscorlib.dll -debug -r:./../../../class/lib/net_2_0/I18N.West.dll</flags>
+      <flags>/codepage:65001 /r:mscorlib.dll /r:I18N.dll /unsafe -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize -r:./../../../class/lib/net_2_0/I18N.West.dll</flags>
       <output>I18N.West_test_net_2_0.dll</output>
       <built_sources></built_sources>
       <library_output>I18N.West_test_net_2_0.dll</library_output>
     <project dir="class/I18N/MidEast" library="I18N.MidEast-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 /r:mscorlib.dll /r:I18N.dll /unsafe -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig</flags>
+      <flags>/codepage:65001 /r:mscorlib.dll /r:I18N.dll /unsafe -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig</flags>
       <output>I18N.MidEast.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_2_0/tmp/I18N.MidEast.dll</library_output>
     <project dir="class/I18N/Other" library="I18N.Other-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 /r:mscorlib.dll /r:I18N.dll /unsafe -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig</flags>
+      <flags>/codepage:65001 /r:mscorlib.dll /r:I18N.dll /unsafe -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig</flags>
       <output>I18N.Other.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_2_0/tmp/I18N.Other.dll</library_output>
     <project dir="class/I18N/Rare" library="I18N.Rare-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 /r:mscorlib.dll /r:I18N.dll /unsafe -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig</flags>
+      <flags>/codepage:65001 /r:mscorlib.dll /r:I18N.dll /unsafe -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig</flags>
       <output>I18N.Rare.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_2_0/tmp/I18N.Rare.dll</library_output>
     <project dir="class/I18N/CJK" library="I18N.CJK-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 /unsafe /resource:big5.table /resource:gb2312.table /resource:jis.table /resource:ks.table /resource:gb18030.table /r:mscorlib.dll /r:I18N.dll /define:DISABLE_UNSAFE -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig</flags>
+      <flags>/codepage:65001 /unsafe /resource:big5.table /resource:gb2312.table /resource:jis.table /resource:ks.table /resource:gb18030.table /r:mscorlib.dll /r:I18N.dll /define:DISABLE_UNSAFE -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig</flags>
       <output>I18N.CJK.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_2_0/tmp/I18N.CJK.dll</library_output>
     <project dir="class/I18N/CJK" library="I18N.CJK-tests-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 /unsafe /resource:big5.table /resource:gb2312.table /resource:jis.table /resource:ks.table /resource:gb18030.table /r:mscorlib.dll /r:I18N.dll /define:DISABLE_UNSAFE -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_2_0 -r:mscorlib.dll -debug -r:./../../../class/lib/net_2_0/I18N.CJK.dll</flags>
+      <flags>/codepage:65001 /unsafe /resource:big5.table /resource:gb2312.table /resource:jis.table /resource:ks.table /resource:gb18030.table /r:mscorlib.dll /r:I18N.dll /define:DISABLE_UNSAFE -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize -r:./../../../class/lib/net_2_0/I18N.CJK.dll</flags>
       <output>I18N.CJK_test_net_2_0.dll</output>
       <built_sources></built_sources>
       <library_output>I18N.CJK_test_net_2_0.dll</library_output>
     <project dir="tools/resgen" library="resgen-net_2_0">
       <boot></boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig</flags>
       <output>resgen.exe</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_2_0/resgen.exe</library_output>
     <project dir="class/System.Drawing" library="System.Drawing-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig /unsafe /r:mscorlib.dll /r:System.dll -resource:Assembly/Mono.ico,Mono.ico -resource:Assembly/Information.ico,Information.ico -resource:Assembly/Error.ico,Error.ico -resource:Assembly/Warning.ico,Warning.ico -resource:Assembly/Question.ico,Question.ico</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig /unsafe /r:mscorlib.dll /r:System.dll -resource:Assembly/Mono.ico,Mono.ico -resource:Assembly/Information.ico,Information.ico -resource:Assembly/Error.ico,Error.ico -resource:Assembly/Warning.ico,Warning.ico -resource:Assembly/Question.ico,Question.ico</flags>
       <output>System.Drawing.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_2_0/System.Drawing.dll</library_output>
     <project dir="class/System.Drawing" library="System.Drawing-tests-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -r:./../../class/lib/net_2_0/System.Drawing.dll /unsafe /r:mscorlib.dll /r:System.dll -resource:Assembly/Mono.ico,Mono.ico -resource:Assembly/Information.ico,Information.ico -resource:Assembly/Error.ico,Error.ico -resource:Assembly/Warning.ico,Warning.ico -resource:Assembly/Question.ico,Question.ico -define:TEST -resource:Test/resources/indexed.png,indexed.png -r:System.Drawing.dll -r:System.Runtime.Serialization.Formatters.Soap.dll -r:System.Xml.dll -nowarn:0618 -nowarn:219 -nowarn:169 -nowarn:1595</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_2_0/System.Drawing.dll /unsafe /r:mscorlib.dll /r:System.dll -resource:Assembly/Mono.ico,Mono.ico -resource:Assembly/Information.ico,Information.ico -resource:Assembly/Error.ico,Error.ico -resource:Assembly/Warning.ico,Warning.ico -resource:Assembly/Question.ico,Question.ico -define:TEST -resource:Test/resources/indexed.png,indexed.png -r:System.Drawing.dll -r:System.Runtime.Serialization.Formatters.Soap.dll -r:System.Xml.dll -nowarn:0618 -nowarn:219 -nowarn:169 -nowarn:1595</flags>
       <output>System.Drawing_test_net_2_0.dll</output>
       <built_sources></built_sources>
       <library_output>System.Drawing_test_net_2_0.dll</library_output>
     <project dir="class/System.Transactions" library="System.Transactions-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig /r:mscorlib.dll /r:System.dll /r:System.Configuration.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig /r:mscorlib.dll /r:System.dll /r:System.Configuration.dll</flags>
       <output>System.Transactions.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_2_0/System.Transactions.dll</library_output>
     <project dir="class/System.Transactions" library="System.Transactions-tests-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -r:./../../class/lib/net_2_0/System.Transactions.dll /nowarn:1595 /r:mscorlib.dll /r:System.dll /r:System.Configuration.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_2_0/System.Transactions.dll /nowarn:1595 /r:mscorlib.dll /r:System.dll /r:System.Configuration.dll</flags>
       <output>System.Transactions_test_net_2_0.dll</output>
       <built_sources></built_sources>
       <library_output>System.Transactions_test_net_2_0.dll</library_output>
     <project dir="class/System.EnterpriseServices" library="System.EnterpriseServices-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig /nowarn:0168 /nowarn:0162 /r:mscorlib.dll /r:System.Transactions.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig /nowarn:0168 /nowarn:0162 /r:mscorlib.dll /r:System.Transactions.dll</flags>
       <output>System.EnterpriseServices.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_2_0/System.EnterpriseServices.dll</library_output>
     <project dir="class/Mono.Data.Tds" library="Mono.Data.Tds-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig /r:mscorlib.dll /r:System.dll /r:System.Xml.dll /r:Mono.Security.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig /r:mscorlib.dll /r:System.dll /r:System.Xml.dll /r:Mono.Security.dll</flags>
       <output>Mono.Data.Tds.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_2_0/Mono.Data.Tds.dll</library_output>
     <project dir="class/Mono.Data.Tds" library="Mono.Data.Tds-tests-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -r:./../../class/lib/net_2_0/Mono.Data.Tds.dll /r:System.dll /r:System.Net.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_2_0/Mono.Data.Tds.dll /r:System.dll /r:System.Net.dll</flags>
       <output>Mono.Data.Tds_test_net_2_0.dll</output>
       <built_sources></built_sources>
       <library_output>Mono.Data.Tds_test_net_2_0.dll</library_output>
     <project dir="class/System.Data" library="System.Data-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig -nowarn:649 -unsafe -r:mscorlib.dll -r:./../../class/lib/net_2_0/System.dll -r:System.Xml.dll -r:System.EnterpriseServices.dll -r:Mono.Data.Tds.dll -r:System.Configuration.dll -r:System.Transactions.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig -nowarn:649 -unsafe -r:mscorlib.dll -r:./../../class/lib/net_2_0/System.dll -r:System.Xml.dll -r:System.EnterpriseServices.dll -r:Mono.Data.Tds.dll -r:System.Configuration.dll -r:System.Transactions.dll</flags>
       <output>System.Data.dll</output>
       <built_sources>Mono.Data.SqlExpressions/Parser.cs</built_sources>
       <library_output>./../../class/lib/net_2_0/System.Data.dll</library_output>
     <project dir="class/System.Data" library="System.Data-tests-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -r:./../../class/lib/net_2_0/System.Data.dll -nowarn:649 -unsafe -r:mscorlib.dll -r:./../../class/lib/net_2_0/System.dll -r:System.Xml.dll -r:System.EnterpriseServices.dll -r:Mono.Data.Tds.dll -r:System.Configuration.dll -r:System.Transactions.dll -r:System.Core.dll -r:Mono.Data.Sqlite.dll -nowarn:618,169,612,219,168</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_2_0/System.Data.dll -nowarn:649 -unsafe -r:mscorlib.dll -r:./../../class/lib/net_2_0/System.dll -r:System.Xml.dll -r:System.EnterpriseServices.dll -r:Mono.Data.Tds.dll -r:System.Configuration.dll -r:System.Transactions.dll -r:System.Core.dll -r:Mono.Data.Sqlite.dll -nowarn:618,169,612,219,168</flags>
       <output>System.Data_test_net_2_0.dll</output>
       <built_sources>Mono.Data.SqlExpressions/Parser.cs</built_sources>
       <library_output>System.Data_test_net_2_0.dll</library_output>
     <project dir="class/Accessibility" library="Accessibility-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig /r:mscorlib.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig /r:mscorlib.dll</flags>
       <output>Accessibility.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_2_0/Accessibility.dll</library_output>
     <project dir="class/Mono.WebBrowser" library="Mono.WebBrowser-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig -r:System.dll -warn:1</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig -r:System.dll -warn:1</flags>
       <output>Mono.WebBrowser.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_2_0/Mono.WebBrowser.dll</library_output>
     <project dir="class/Managed.Windows.Forms" library="System.Windows.Forms-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig /unsafe /r:mscorlib.dll /r:System.dll /r:System.Xml.dll /r:System.Drawing.dll /r:Accessibility.dll /r:System.Data.dll /r:Mono.Posix.dll /r:Mono.WebBrowser /r:System.Configuration.dll @System.Windows.Forms.dll.resources -nowarn:618,612,809</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig /unsafe /r:mscorlib.dll /r:System.dll /r:System.Xml.dll /r:System.Drawing.dll /r:Accessibility.dll /r:System.Data.dll /r:Mono.Posix.dll /r:Mono.WebBrowser /r:System.Configuration.dll @System.Windows.Forms.dll.resources -nowarn:618,612,809</flags>
       <output>System.Windows.Forms.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_2_0/System.Windows.Forms.dll</library_output>
     <project dir="class/Managed.Windows.Forms" library="System.Windows.Forms-tests-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -r:./../../class/lib/net_2_0/System.Windows.Forms.dll /r:System.Data.dll /r:System.Drawing.dll /r:Accessibility.dll -r:System.dll -r:System.Xml.dll -resource:Test/resources/a.cur,a.cur -resource:Test/resources/32x32.ico,32x32.ico -nowarn:618,612</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_2_0/System.Windows.Forms.dll /r:System.Data.dll /r:System.Drawing.dll /r:Accessibility.dll -r:System.dll -r:System.Xml.dll -resource:Test/resources/a.cur,a.cur -resource:Test/resources/32x32.ico,32x32.ico -nowarn:618,612</flags>
       <output>System.Windows.Forms_test_net_2_0.dll</output>
       <built_sources></built_sources>
       <library_output>System.Windows.Forms_test_net_2_0.dll</library_output>
     <project dir="class/Mono.Data.Sqlite" library="Mono.Data.Sqlite-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig /unsafe /r:System.dll /r:System.Data.dll /r:System.Transactions.dll /r:System.Xml.dll -resource:resources/SR.resources -resource:resources/SQLiteCommand.bmp -resource:resources/SQLiteConnection.bmp -resource:resources/SQLiteDataAdapter.bmp -d:SQLITE_STANDARD</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig /unsafe /r:System.dll /r:System.Data.dll /r:System.Transactions.dll /r:System.Xml.dll -resource:resources/SR.resources -resource:resources/SQLiteCommand.bmp -resource:resources/SQLiteConnection.bmp -resource:resources/SQLiteDataAdapter.bmp -d:SQLITE_STANDARD</flags>
       <output>Mono.Data.Sqlite.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_2_0/Mono.Data.Sqlite.dll</library_output>
     <project dir="class/Mono.Data.Sqlite" library="Mono.Data.Sqlite-tests-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -r:./../../class/lib/net_2_0/Mono.Data.Sqlite.dll /unsafe /r:System.dll /r:System.Data.dll /r:System.Transactions.dll /r:System.Xml.dll -resource:resources/SR.resources -resource:resources/SQLiteCommand.bmp -resource:resources/SQLiteConnection.bmp -resource:resources/SQLiteDataAdapter.bmp -d:SQLITE_STANDARD /nowarn:618</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_2_0/Mono.Data.Sqlite.dll /unsafe /r:System.dll /r:System.Data.dll /r:System.Transactions.dll /r:System.Xml.dll -resource:resources/SR.resources -resource:resources/SQLiteCommand.bmp -resource:resources/SQLiteConnection.bmp -resource:resources/SQLiteDataAdapter.bmp -d:SQLITE_STANDARD /nowarn:618</flags>
       <output>Mono.Data.Sqlite_test_net_2_0.dll</output>
       <built_sources></built_sources>
       <library_output>Mono.Data.Sqlite_test_net_2_0.dll</library_output>
     <project dir="class/System.Web.ApplicationServices" library="System.Web.ApplicationServices-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig -r:System.dll -r:System.Configuration.dll -d:SYSTEM_WEB_APPLICATIONSERVICES</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig -r:System.dll -r:System.Configuration.dll -d:SYSTEM_WEB_APPLICATIONSERVICES</flags>
       <output>dummy-System.Web.ApplicationServices.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_2_0/dummy-System.Web.ApplicationServices.dll</library_output>
     <project dir="class/System.Web" library="System.Web-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig -unsafe -nowarn:612,618 -r:mscorlib.dll -r:System.dll -r:System.Drawing.dll -r:System.Data.dll -r:System.Xml.dll -r:System.EnterpriseServices.dll -d:INSIDE_SYSTEM_WEB -nowarn:618 -r:System.Configuration.dll -r:Mono.Data.Sqlite.dll /resource:resources/TranslationResources.resources /resource:resources/WebUIValidation.js /resource:resources/folder.gif /resource:resources/file.gif /resource:resources/computer.gif /resource:resources/arrow_minus.gif /resource:resources/arrow_noexpand.gif /resource:resources/arrow_plus.gif /resource:resources/arrow_up.gif /resource:resources/arrow_down.gif /resource:resources/box_full.gif /resource:resources/box_empty.gif /resource:resources/box_minus.gif /resource:resources/box_noexpand.gif /resource:resources/box_plus.gif /resource:resources/contact.gif /resource:resources/dot_empty.gif /resource:resources/dot_full.gif /resource:resources/dots.gif /resource:resources/inbox.gif /resource:resources/star_empty.gif /resource:resources/star_full.gif /resource:resources/warning.gif /resource:resources/TreeView_noexpand.gif /resource:resources/TreeView_dash.gif /resource:resources/TreeView_dashminus.gif /resource:resources/TreeView_dashplus.gif /resource:resources/TreeView_i.gif /resource:resources/TreeView_l.gif /resource:resources/TreeView_lminus.gif /resource:resources/TreeView_lplus.gif /resource:resources/TreeView_minus.gif /resource:resources/TreeView_plus.gif /resource:resources/TreeView_r.gif /resource:resources/TreeView_rminus.gif /resource:resources/TreeView_rplus.gif /resource:resources/TreeView_t.gif /resource:resources/TreeView_tminus.gif /resource:resources/TreeView_tplus.gif /resource:resources/transparent.gif /resource:resources/webform.js /resource:resources/WebUIValidation_2.0.js /resource:resources/ErrorTemplateCommon_Top.html /resource:resources/DefaultErrorTemplate_CustomErrorDefault.html /resource:resources/ErrorTemplateCommon_Bottom.html /resource:resources/DefaultErrorTemplate_StandardPage.html /resource:resources/HtmlizedExceptionPage_Top.html /resource:resources/HtmlizedExceptionPage_FileLongSource.html /resource:resources/HtmlizedExceptionPage_FileShortSource.html /resource:resources/HtmlizedExceptionPage_CompilerOutput.html /resource:System.Web.UI.WebControls/GridView.js /resource:System.Web.UI.WebControls/DetailsView.js /resource:System.Web.UI.WebControls/TreeView.js /resource:System.Web.UI.WebControls/Menu.js -define:WEBSERVICES_DEP -r:System.Web.Services.dll -define:MONOWEB_DEP -r:Mono.Web.dll -define:SYSTEMCORE_DEP -r:System.Core.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig -unsafe -nowarn:612,618 -r:mscorlib.dll -r:System.dll -r:System.Drawing.dll -r:System.Data.dll -r:System.Xml.dll -r:System.EnterpriseServices.dll -d:INSIDE_SYSTEM_WEB -nowarn:618 -r:System.Configuration.dll -r:Mono.Data.Sqlite.dll /resource:resources/TranslationResources.resources /resource:resources/WebUIValidation.js /resource:resources/folder.gif /resource:resources/file.gif /resource:resources/computer.gif /resource:resources/arrow_minus.gif /resource:resources/arrow_noexpand.gif /resource:resources/arrow_plus.gif /resource:resources/arrow_up.gif /resource:resources/arrow_down.gif /resource:resources/box_full.gif /resource:resources/box_empty.gif /resource:resources/box_minus.gif /resource:resources/box_noexpand.gif /resource:resources/box_plus.gif /resource:resources/contact.gif /resource:resources/dot_empty.gif /resource:resources/dot_full.gif /resource:resources/dots.gif /resource:resources/inbox.gif /resource:resources/star_empty.gif /resource:resources/star_full.gif /resource:resources/warning.gif /resource:resources/TreeView_noexpand.gif /resource:resources/TreeView_dash.gif /resource:resources/TreeView_dashminus.gif /resource:resources/TreeView_dashplus.gif /resource:resources/TreeView_i.gif /resource:resources/TreeView_l.gif /resource:resources/TreeView_lminus.gif /resource:resources/TreeView_lplus.gif /resource:resources/TreeView_minus.gif /resource:resources/TreeView_plus.gif /resource:resources/TreeView_r.gif /resource:resources/TreeView_rminus.gif /resource:resources/TreeView_rplus.gif /resource:resources/TreeView_t.gif /resource:resources/TreeView_tminus.gif /resource:resources/TreeView_tplus.gif /resource:resources/transparent.gif /resource:resources/webform.js /resource:resources/WebUIValidation_2.0.js /resource:resources/ErrorTemplateCommon_Top.html /resource:resources/DefaultErrorTemplate_CustomErrorDefault.html /resource:resources/ErrorTemplateCommon_Bottom.html /resource:resources/DefaultErrorTemplate_StandardPage.html /resource:resources/HtmlizedExceptionPage_Top.html /resource:resources/HtmlizedExceptionPage_FileLongSource.html /resource:resources/HtmlizedExceptionPage_FileShortSource.html /resource:resources/HtmlizedExceptionPage_CompilerOutput.html /resource:System.Web.UI.WebControls/GridView.js /resource:System.Web.UI.WebControls/DetailsView.js /resource:System.Web.UI.WebControls/TreeView.js /resource:System.Web.UI.WebControls/Menu.js -define:WEBSERVICES_DEP -r:System.Web.Services.dll -define:MONOWEB_DEP -r:Mono.Web.dll -define:SYSTEMCORE_DEP -r:System.Core.dll</flags>
       <output>System.Web.dll</output>
       <built_sources>System.Web/UplevelHelper.cs</built_sources>
       <library_output>./../../class/lib/net_2_0/tmp/System.Web.dll</library_output>
     <project dir="class/System.Web" library="System.Web-tests-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -r:./../../class/lib/net_2_0/System.Web.dll -unsafe -nowarn:612,618 -r:mscorlib.dll -r:System.dll -r:System.Drawing.dll -r:System.Data.dll -r:System.Xml.dll -r:System.EnterpriseServices.dll -d:INSIDE_SYSTEM_WEB -nowarn:618 -r:System.Configuration.dll -r:Mono.Data.Sqlite.dll /resource:resources/TranslationResources.resources /resource:resources/WebUIValidation.js /resource:resources/folder.gif /resource:resources/file.gif /resource:resources/computer.gif /resource:resources/arrow_minus.gif /resource:resources/arrow_noexpand.gif /resource:resources/arrow_plus.gif /resource:resources/arrow_up.gif /resource:resources/arrow_down.gif /resource:resources/box_full.gif /resource:resources/box_empty.gif /resource:resources/box_minus.gif /resource:resources/box_noexpand.gif /resource:resources/box_plus.gif /resource:resources/contact.gif /resource:resources/dot_empty.gif /resource:resources/dot_full.gif /resource:resources/dots.gif /resource:resources/inbox.gif /resource:resources/star_empty.gif /resource:resources/star_full.gif /resource:resources/warning.gif /resource:resources/TreeView_noexpand.gif /resource:resources/TreeView_dash.gif /resource:resources/TreeView_dashminus.gif /resource:resources/TreeView_dashplus.gif /resource:resources/TreeView_i.gif /resource:resources/TreeView_l.gif /resource:resources/TreeView_lminus.gif /resource:resources/TreeView_lplus.gif /resource:resources/TreeView_minus.gif /resource:resources/TreeView_plus.gif /resource:resources/TreeView_r.gif /resource:resources/TreeView_rminus.gif /resource:resources/TreeView_rplus.gif /resource:resources/TreeView_t.gif /resource:resources/TreeView_tminus.gif /resource:resources/TreeView_tplus.gif /resource:resources/transparent.gif /resource:resources/webform.js /resource:resources/WebUIValidation_2.0.js /resource:resources/ErrorTemplateCommon_Top.html /resource:resources/DefaultErrorTemplate_CustomErrorDefault.html /resource:resources/ErrorTemplateCommon_Bottom.html /resource:resources/DefaultErrorTemplate_StandardPage.html /resource:resources/HtmlizedExceptionPage_Top.html /resource:resources/HtmlizedExceptionPage_FileLongSource.html /resource:resources/HtmlizedExceptionPage_FileShortSource.html /resource:resources/HtmlizedExceptionPage_CompilerOutput.html /resource:System.Web.UI.WebControls/GridView.js /resource:System.Web.UI.WebControls/DetailsView.js /resource:System.Web.UI.WebControls/TreeView.js /resource:System.Web.UI.WebControls/Menu.js -define:WEBSERVICES_DEP -r:System.Web.Services.dll -define:MONOWEB_DEP -r:Mono.Web.dll -define:SYSTEMCORE_DEP -r:System.Core.dll -doc:System.Web_test_net_2_0.xml -nowarn:219,169,1591 -r:SystemWebTestShim.dll /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/Global.asax /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/My.ashx /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/My.master /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/MyPage.aspx /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/MyPage.aspx.cs /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/MyPageWithMaster.aspx /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/Web.mono.config /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/Web.mono.config.4.0 /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/sub_map_01.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_01.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_02.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_03.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_04.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_05.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_06.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_07.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_08.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_09.sitemap /resource:Test/mainsoft/NunitWebResources/menuclass.aspx /resource:Test/mainsoft/NunitWebResources/FormView.aspx /resource:Test/mainsoft/NunitWebResources/PostBackMenuTest.aspx /resource:Test/mainsoft/NunitWebResources/PageWithStyleSheet.aspx /resource:Test/mainsoft/NunitWebResources/PageWithTheme.aspx /resource:Test/mainsoft/NunitWebResources/ResolveUrl.ascx /resource:Test/mainsoft/NunitWebResources/ResolveUrl.aspx /resource:Test/mainsoft/NunitWebResources/RunTimeSetTheme.aspx /resource:Test/mainsoft/NunitWebResources/ReadOnlyPropertyBind.aspx /resource:Test/mainsoft/NunitWebResources/ReadOnlyPropertyControl.ascx /resource:Test/mainsoft/NunitWebResources/Theme1.skin /resource:Test/mainsoft/NunitWebResources/Theme2.skin /resource:Test/mainsoft/NunitWebResources/UrlProperty.aspx /resource:Test/mainsoft/NunitWebResources/UrlProperty.ascx /resource:Test/mainsoft/NunitWebResources/UrlProperty.ascx.cs /resource:Test/mainsoft/NunitWebResources/Web.sitemap /resource:Test/mainsoft/NunitWebResources/WizardTest.skin /resource:Test/mainsoft/NunitWebResources/FooterTemplateTest.aspx /resource:Test/mainsoft/NunitWebResources/DataGrid.aspx /resource:Test/mainsoft/NunitWebResources/DetailsViewTemplates.aspx /resource:Test/mainsoft/NunitWebResources/DetailsViewTemplates_2.aspx /resource:Test/mainsoft/NunitWebResources/DetailsViewTemplates_3.aspx /resource:Test/mainsoft/NunitWebResources/DetailsViewDataActions.aspx /resource:Test/mainsoft/NunitWebResources/DetailsViewProperties1.aspx /resource:Test/mainsoft/NunitWebResources/Bluehills.jpg /resource:Test/mainsoft/NunitWebResources/FormViewTest1.aspx /resource:Test/mainsoft/NunitWebResources/FormViewTest1_2.aspx /resource:Test/mainsoft/NunitWebResources/FormViewTest1_3.aspx /resource:Test/mainsoft/NunitWebResources/FormViewTest1_4.aspx /resource:Test/mainsoft/NunitWebResources/FormViewInsertEditDelete.aspx /resource:Test/mainsoft/NunitWebResources/GridViewUpdate.aspx /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest.xml /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest.xsl /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest1.aspx /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest2.aspx /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest3.aspx /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest4.aspx /resource:Test/mainsoft/NunitWebResources/LoginViewTest1.aspx /resource:Test/mainsoft/NunitWebResources/WebControl.config /resource:Test/mainsoft/NunitWebResources/WebLogin.config /resource:Test/mainsoft/NunitWebResources/CallbackTest1.aspx /resource:Test/mainsoft/NunitWebResources/CallbackTest2.aspx /resource:Test/mainsoft/NunitWebResources/EventValidationTest2.aspx /resource:Test/mainsoft/NunitWebResources/EventValidationTest1.aspx /resource:Test/mainsoft/NunitWebResources/ClientScript.js /resource:Test/mainsoft/NunitWebResources/EvalTest.aspx /resource:Test/mainsoft/NunitWebResources/TemplateUserControl.ascx /resource:Test/mainsoft/NunitWebResources/WebMapping.config /resource:Test/mainsoft/NunitWebResources/Mapping.aspx /resource:Test/mainsoft/NunitWebResources/Mapping1.aspx /resource:Test/mainsoft/NunitWebResources/CrossPagePosting1.aspx /resource:Test/mainsoft/NunitWebResources/CrossPagePosting2.aspx /resource:Test/mainsoft/NunitWebResources/MyDerived.master /resource:Test/mainsoft/NunitWebResources/MyPageWithDerivedMaster.aspx /resource:Test/mainsoft/NunitWebResources/MasterTypeTest1.aspx /resource:Test/mainsoft/NunitWebResources/MasterTypeTest2.aspx /resource:Test/mainsoft/NunitWebResources/PageLifecycleTest.aspx /resource:Test/mainsoft/NunitWebResources/PageValidationTest.aspx /resource:Test/mainsoft/NunitWebResources/AsyncPage.aspx /resource:Test/mainsoft/NunitWebResources/PageCultureTest.aspx /resource:Test/mainsoft/NunitWebResources/adapters.browser /resource:Test/mainsoft/NunitWebResources/NoEventValidation.aspx /resource:Test/mainsoft/NunitWebResources/ListControlPage.aspx /resource:Test/mainsoft/NunitWebResources/TextBoxTestlPage.aspx /resource:Test/mainsoft/NunitWebResources/ClearErrorOnError.aspx /resource:Test/mainsoft/NunitWebResources/RedirectOnError.aspx /resource:Test/mainsoft/NunitWebResources/TestCapability.browser /resource:Test/mainsoft/NunitWebResources/PageWithAdapter.aspx /resource:Test/mainsoft/NunitWebResources/InvalidPropertyBind1.aspx /resource:Test/mainsoft/NunitWebResources/InvalidPropertyBind2.aspx /resource:Test/mainsoft/NunitWebResources/InvalidPropertyBind3.aspx /resource:Test/mainsoft/NunitWebResources/InvalidPropertyBind4.aspx /resource:Test/mainsoft/NunitWebResources/ValidPropertyBind1.aspx /resource:Test/mainsoft/NunitWebResources/ValidPropertyBind2.aspx /resource:Test/mainsoft/NunitWebResources/ValidPropertyBind3.aspx /resource:Test/mainsoft/NunitWebResources/ValidPropertyBind4.aspx /resource:Test/mainsoft/NunitWebResources/ValidPropertyBind5.aspx /resource:Test/mainsoft/NunitWebResources/ReadWritePropertyControl.ascx /resource:Test/mainsoft/MainsoftWebTest/nunitweb_config.xml /resource:Test/mainsoft/NunitWebResources/TemplateControlParsingTest.aspx /resource:Test/mainsoft/NunitWebResources/ContentPlaceHolderInTemplate.aspx /resource:Test/mainsoft/NunitWebResources/ContentPlaceHolderInTemplate.master /resource:Test/mainsoft/NunitWebResources/MissingMasterFile.aspx /resource:Test/mainsoft/NunitWebResources/CustomSectionEmptyCollection.aspx /resource:Test/mainsoft/NunitWebResources/NoDoubleOnInitOnRemoveAdd.aspx /resource:Test/mainsoft/NunitWebResources/NoDoubleOnInitOnRemoveAdd.aspx.cs /resource:Test/mainsoft/NunitWebResources/LoginDisplayRememberMe.aspx /resource:Test/mainsoft/NunitWebResources/NoBindForMethodsWithBindInName.aspx /resource:Test/mainsoft/NunitWebResources/LinkInHeadWithEmbeddedExpression.aspx /resource:Test/mainsoft/NunitWebResources/ExpressionInListControl.aspx /resource:Test/mainsoft/NunitWebResources/ServerSideControlsInScriptBlock.aspx /resource:Test/mainsoft/NunitWebResources/ServerControlInClientSideComment.aspx /resource:Test/mainsoft/NunitWebResources/PreprocessorDirectivesInMarkup.aspx /resource:Test/mainsoft/NunitWebResources/UnquotedAngleBrackets.aspx /resource:Test/mainsoft/NunitWebResources/FullTagsInText.aspx /resource:Test/mainsoft/NunitWebResources/TagsExpressionsAndCommentsInText.aspx /resource:Test/mainsoft/NunitWebResources/NewlineInCodeExpression.aspx /resource:Test/mainsoft/NunitWebResources/DuplicateControlsInClientComment.aspx /resource:Test/mainsoft/NunitWebResources/TagsNestedInClientTag.aspx /resource:Test/mainsoft/NunitWebResources/ConditionalClientComments.aspx /resource:Test/mainsoft/NunitWebResources/OneLetterIdentifierInCodeRender.aspx /resource:Test/mainsoft/NunitWebResources/GlobalResourcesLocalization.aspx /resource:Test/mainsoft/NunitWebResources/TableSections_Bug551666.aspx /resource:Test/mainsoft/NunitWebResources/TableSections_Bug551666.aspx.cs /resource:Test/mainsoft/NunitWebResources/NestedParserFileText.aspx /resource:Test/mainsoft/NunitWebResources/StateFormatter_CorrectConverter.aspx /resource:Test/mainsoft/NunitWebResources/StateFormatter_CollectionConverter.aspx /resource:Test/mainsoft/NunitWebResources/StateFormatter_CollectionConverter.aspx.cs /resource:Test/mainsoft/NunitWebResources/ChangePasswordContainer_FindControl.aspx /resource:Test/mainsoft/NunitWebResources/TagWithExpressionWithinAttribute.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxList_Bug377703_1.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxList_Bug377703_2.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxList_Bug578770.aspx /resource:Test/mainsoft/NunitWebResources/EnumConverter_Bug578586.aspx /resource:Test/mainsoft/NunitWebResources/ButtonColor_Bug325489.aspx /resource:Test/mainsoft/NunitWebResources/SqlDataSource_OnInit_Bug572781.aspx /resource:Test/mainsoft/NunitWebResources/FormViewPagerVisibility.aspx /resource:Test/mainsoft/NunitWebResources/OverridenControlsPropertyAndPostBack_Bug594238.aspx /resource:Test/mainsoft/NunitWebResources/GlobalizationEncodingName.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_0.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_1.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_2.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_5.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_6.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_7.aspx /resource:Test/mainsoft/NunitWebResources/GridView_Bug595567.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxList_Bug600415.aspx /resource:Test/mainsoft/NunitWebResources/BoundField_Bug646505.aspx /resource:Test/mainsoft/NunitWebResources/BoundField_Bug646505.aspx.cs /resource:Test/mainsoft/NunitWebResources/HtmlTitleCodeRender_Bug662918.aspx /resource:Test/mainsoft/NunitWebResources/App_Code/EnumConverterControl.cs,App_Code/EnumConverterControl.cs /resource:Test/mainsoft/NunitWebResources/App_Code/MyContainer.cs,App_Code/MyContainer.cs /resource:Test/mainsoft/NunitWebResources/App_Code/CustomCheckBoxColumn.cs,App_Code/CustomCheckBoxColumn.cs /resource:Test/mainsoft/NunitWebResources/App_GlobalResources/Common.resx,App_GlobalResources/Common.resx /resource:Test/mainsoft/NunitWebResources/App_GlobalResources/Common.fr-FR.resx,App_GlobalResources/Common.fr-FR.resx /resource:Test/mainsoft/NunitWebResources/App_GlobalResources/Resource1.resx,App_GlobalResources/Resource1.resx -r:System.Web.Extensions.dll -d:TEST</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_2_0/System.Web.dll -unsafe -nowarn:612,618 -r:mscorlib.dll -r:System.dll -r:System.Drawing.dll -r:System.Data.dll -r:System.Xml.dll -r:System.EnterpriseServices.dll -d:INSIDE_SYSTEM_WEB -nowarn:618 -r:System.Configuration.dll -r:Mono.Data.Sqlite.dll /resource:resources/TranslationResources.resources /resource:resources/WebUIValidation.js /resource:resources/folder.gif /resource:resources/file.gif /resource:resources/computer.gif /resource:resources/arrow_minus.gif /resource:resources/arrow_noexpand.gif /resource:resources/arrow_plus.gif /resource:resources/arrow_up.gif /resource:resources/arrow_down.gif /resource:resources/box_full.gif /resource:resources/box_empty.gif /resource:resources/box_minus.gif /resource:resources/box_noexpand.gif /resource:resources/box_plus.gif /resource:resources/contact.gif /resource:resources/dot_empty.gif /resource:resources/dot_full.gif /resource:resources/dots.gif /resource:resources/inbox.gif /resource:resources/star_empty.gif /resource:resources/star_full.gif /resource:resources/warning.gif /resource:resources/TreeView_noexpand.gif /resource:resources/TreeView_dash.gif /resource:resources/TreeView_dashminus.gif /resource:resources/TreeView_dashplus.gif /resource:resources/TreeView_i.gif /resource:resources/TreeView_l.gif /resource:resources/TreeView_lminus.gif /resource:resources/TreeView_lplus.gif /resource:resources/TreeView_minus.gif /resource:resources/TreeView_plus.gif /resource:resources/TreeView_r.gif /resource:resources/TreeView_rminus.gif /resource:resources/TreeView_rplus.gif /resource:resources/TreeView_t.gif /resource:resources/TreeView_tminus.gif /resource:resources/TreeView_tplus.gif /resource:resources/transparent.gif /resource:resources/webform.js /resource:resources/WebUIValidation_2.0.js /resource:resources/ErrorTemplateCommon_Top.html /resource:resources/DefaultErrorTemplate_CustomErrorDefault.html /resource:resources/ErrorTemplateCommon_Bottom.html /resource:resources/DefaultErrorTemplate_StandardPage.html /resource:resources/HtmlizedExceptionPage_Top.html /resource:resources/HtmlizedExceptionPage_FileLongSource.html /resource:resources/HtmlizedExceptionPage_FileShortSource.html /resource:resources/HtmlizedExceptionPage_CompilerOutput.html /resource:System.Web.UI.WebControls/GridView.js /resource:System.Web.UI.WebControls/DetailsView.js /resource:System.Web.UI.WebControls/TreeView.js /resource:System.Web.UI.WebControls/Menu.js -define:WEBSERVICES_DEP -r:System.Web.Services.dll -define:MONOWEB_DEP -r:Mono.Web.dll -define:SYSTEMCORE_DEP -r:System.Core.dll -doc:System.Web_test_net_2_0.xml -nowarn:219,169,1591 -r:SystemWebTestShim.dll /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/Global.asax /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/My.ashx /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/My.master /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/MyPage.aspx /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/MyPage.aspx.cs /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/MyPageWithMaster.aspx /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/Web.mono.config /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/Web.mono.config.4.0 /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/sub_map_01.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_01.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_02.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_03.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_04.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_05.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_06.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_07.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_08.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_09.sitemap /resource:Test/mainsoft/NunitWebResources/menuclass.aspx /resource:Test/mainsoft/NunitWebResources/FormView.aspx /resource:Test/mainsoft/NunitWebResources/PostBackMenuTest.aspx /resource:Test/mainsoft/NunitWebResources/PageWithStyleSheet.aspx /resource:Test/mainsoft/NunitWebResources/PageWithTheme.aspx /resource:Test/mainsoft/NunitWebResources/ResolveUrl.ascx /resource:Test/mainsoft/NunitWebResources/ResolveUrl.aspx /resource:Test/mainsoft/NunitWebResources/RunTimeSetTheme.aspx /resource:Test/mainsoft/NunitWebResources/ReadOnlyPropertyBind.aspx /resource:Test/mainsoft/NunitWebResources/ReadOnlyPropertyControl.ascx /resource:Test/mainsoft/NunitWebResources/Theme1.skin /resource:Test/mainsoft/NunitWebResources/Theme2.skin /resource:Test/mainsoft/NunitWebResources/UrlProperty.aspx /resource:Test/mainsoft/NunitWebResources/UrlProperty.ascx /resource:Test/mainsoft/NunitWebResources/UrlProperty.ascx.cs /resource:Test/mainsoft/NunitWebResources/Web.sitemap /resource:Test/mainsoft/NunitWebResources/WizardTest.skin /resource:Test/mainsoft/NunitWebResources/FooterTemplateTest.aspx /resource:Test/mainsoft/NunitWebResources/DataGrid.aspx /resource:Test/mainsoft/NunitWebResources/DetailsViewTemplates.aspx /resource:Test/mainsoft/NunitWebResources/DetailsViewTemplates_2.aspx /resource:Test/mainsoft/NunitWebResources/DetailsViewTemplates_3.aspx /resource:Test/mainsoft/NunitWebResources/DetailsViewDataActions.aspx /resource:Test/mainsoft/NunitWebResources/DetailsViewProperties1.aspx /resource:Test/mainsoft/NunitWebResources/Bluehills.jpg /resource:Test/mainsoft/NunitWebResources/FormViewTest1.aspx /resource:Test/mainsoft/NunitWebResources/FormViewTest1_2.aspx /resource:Test/mainsoft/NunitWebResources/FormViewTest1_3.aspx /resource:Test/mainsoft/NunitWebResources/FormViewTest1_4.aspx /resource:Test/mainsoft/NunitWebResources/FormViewInsertEditDelete.aspx /resource:Test/mainsoft/NunitWebResources/GridViewUpdate.aspx /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest.xml /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest.xsl /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest1.aspx /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest2.aspx /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest3.aspx /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest4.aspx /resource:Test/mainsoft/NunitWebResources/LoginViewTest1.aspx /resource:Test/mainsoft/NunitWebResources/WebControl.config /resource:Test/mainsoft/NunitWebResources/WebLogin.config /resource:Test/mainsoft/NunitWebResources/CallbackTest1.aspx /resource:Test/mainsoft/NunitWebResources/CallbackTest2.aspx /resource:Test/mainsoft/NunitWebResources/EventValidationTest2.aspx /resource:Test/mainsoft/NunitWebResources/EventValidationTest1.aspx /resource:Test/mainsoft/NunitWebResources/ClientScript.js /resource:Test/mainsoft/NunitWebResources/EvalTest.aspx /resource:Test/mainsoft/NunitWebResources/TemplateUserControl.ascx /resource:Test/mainsoft/NunitWebResources/WebMapping.config /resource:Test/mainsoft/NunitWebResources/Mapping.aspx /resource:Test/mainsoft/NunitWebResources/Mapping1.aspx /resource:Test/mainsoft/NunitWebResources/CrossPagePosting1.aspx /resource:Test/mainsoft/NunitWebResources/CrossPagePosting2.aspx /resource:Test/mainsoft/NunitWebResources/MyDerived.master /resource:Test/mainsoft/NunitWebResources/MyPageWithDerivedMaster.aspx /resource:Test/mainsoft/NunitWebResources/MasterTypeTest1.aspx /resource:Test/mainsoft/NunitWebResources/MasterTypeTest2.aspx /resource:Test/mainsoft/NunitWebResources/PageLifecycleTest.aspx /resource:Test/mainsoft/NunitWebResources/PageValidationTest.aspx /resource:Test/mainsoft/NunitWebResources/AsyncPage.aspx /resource:Test/mainsoft/NunitWebResources/PageCultureTest.aspx /resource:Test/mainsoft/NunitWebResources/adapters.browser /resource:Test/mainsoft/NunitWebResources/NoEventValidation.aspx /resource:Test/mainsoft/NunitWebResources/ListControlPage.aspx /resource:Test/mainsoft/NunitWebResources/TextBoxTestlPage.aspx /resource:Test/mainsoft/NunitWebResources/ClearErrorOnError.aspx /resource:Test/mainsoft/NunitWebResources/RedirectOnError.aspx /resource:Test/mainsoft/NunitWebResources/TestCapability.browser /resource:Test/mainsoft/NunitWebResources/PageWithAdapter.aspx /resource:Test/mainsoft/NunitWebResources/InvalidPropertyBind1.aspx /resource:Test/mainsoft/NunitWebResources/InvalidPropertyBind2.aspx /resource:Test/mainsoft/NunitWebResources/InvalidPropertyBind3.aspx /resource:Test/mainsoft/NunitWebResources/InvalidPropertyBind4.aspx /resource:Test/mainsoft/NunitWebResources/ValidPropertyBind1.aspx /resource:Test/mainsoft/NunitWebResources/ValidPropertyBind2.aspx /resource:Test/mainsoft/NunitWebResources/ValidPropertyBind3.aspx /resource:Test/mainsoft/NunitWebResources/ValidPropertyBind4.aspx /resource:Test/mainsoft/NunitWebResources/ValidPropertyBind5.aspx /resource:Test/mainsoft/NunitWebResources/ReadWritePropertyControl.ascx /resource:Test/mainsoft/MainsoftWebTest/nunitweb_config.xml /resource:Test/mainsoft/NunitWebResources/TemplateControlParsingTest.aspx /resource:Test/mainsoft/NunitWebResources/ContentPlaceHolderInTemplate.aspx /resource:Test/mainsoft/NunitWebResources/ContentPlaceHolderInTemplate.master /resource:Test/mainsoft/NunitWebResources/MissingMasterFile.aspx /resource:Test/mainsoft/NunitWebResources/CustomSectionEmptyCollection.aspx /resource:Test/mainsoft/NunitWebResources/NoDoubleOnInitOnRemoveAdd.aspx /resource:Test/mainsoft/NunitWebResources/NoDoubleOnInitOnRemoveAdd.aspx.cs /resource:Test/mainsoft/NunitWebResources/LoginDisplayRememberMe.aspx /resource:Test/mainsoft/NunitWebResources/NoBindForMethodsWithBindInName.aspx /resource:Test/mainsoft/NunitWebResources/LinkInHeadWithEmbeddedExpression.aspx /resource:Test/mainsoft/NunitWebResources/ExpressionInListControl.aspx /resource:Test/mainsoft/NunitWebResources/ServerSideControlsInScriptBlock.aspx /resource:Test/mainsoft/NunitWebResources/ServerControlInClientSideComment.aspx /resource:Test/mainsoft/NunitWebResources/PreprocessorDirectivesInMarkup.aspx /resource:Test/mainsoft/NunitWebResources/UnquotedAngleBrackets.aspx /resource:Test/mainsoft/NunitWebResources/FullTagsInText.aspx /resource:Test/mainsoft/NunitWebResources/TagsExpressionsAndCommentsInText.aspx /resource:Test/mainsoft/NunitWebResources/NewlineInCodeExpression.aspx /resource:Test/mainsoft/NunitWebResources/DuplicateControlsInClientComment.aspx /resource:Test/mainsoft/NunitWebResources/TagsNestedInClientTag.aspx /resource:Test/mainsoft/NunitWebResources/ConditionalClientComments.aspx /resource:Test/mainsoft/NunitWebResources/OneLetterIdentifierInCodeRender.aspx /resource:Test/mainsoft/NunitWebResources/GlobalResourcesLocalization.aspx /resource:Test/mainsoft/NunitWebResources/TableSections_Bug551666.aspx /resource:Test/mainsoft/NunitWebResources/TableSections_Bug551666.aspx.cs /resource:Test/mainsoft/NunitWebResources/NestedParserFileText.aspx /resource:Test/mainsoft/NunitWebResources/StateFormatter_CorrectConverter.aspx /resource:Test/mainsoft/NunitWebResources/StateFormatter_CollectionConverter.aspx /resource:Test/mainsoft/NunitWebResources/StateFormatter_CollectionConverter.aspx.cs /resource:Test/mainsoft/NunitWebResources/ChangePasswordContainer_FindControl.aspx /resource:Test/mainsoft/NunitWebResources/TagWithExpressionWithinAttribute.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxList_Bug377703_1.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxList_Bug377703_2.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxList_Bug578770.aspx /resource:Test/mainsoft/NunitWebResources/EnumConverter_Bug578586.aspx /resource:Test/mainsoft/NunitWebResources/ButtonColor_Bug325489.aspx /resource:Test/mainsoft/NunitWebResources/SqlDataSource_OnInit_Bug572781.aspx /resource:Test/mainsoft/NunitWebResources/FormViewPagerVisibility.aspx /resource:Test/mainsoft/NunitWebResources/OverridenControlsPropertyAndPostBack_Bug594238.aspx /resource:Test/mainsoft/NunitWebResources/GlobalizationEncodingName.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_0.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_1.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_2.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_5.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_6.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_7.aspx /resource:Test/mainsoft/NunitWebResources/GridView_Bug595567.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxList_Bug600415.aspx /resource:Test/mainsoft/NunitWebResources/BoundField_Bug646505.aspx /resource:Test/mainsoft/NunitWebResources/BoundField_Bug646505.aspx.cs /resource:Test/mainsoft/NunitWebResources/HtmlTitleCodeRender_Bug662918.aspx /resource:Test/mainsoft/NunitWebResources/App_Code/EnumConverterControl.cs,App_Code/EnumConverterControl.cs /resource:Test/mainsoft/NunitWebResources/App_Code/MyContainer.cs,App_Code/MyContainer.cs /resource:Test/mainsoft/NunitWebResources/App_Code/CustomCheckBoxColumn.cs,App_Code/CustomCheckBoxColumn.cs /resource:Test/mainsoft/NunitWebResources/App_GlobalResources/Common.resx,App_GlobalResources/Common.resx /resource:Test/mainsoft/NunitWebResources/App_GlobalResources/Common.fr-FR.resx,App_GlobalResources/Common.fr-FR.resx /resource:Test/mainsoft/NunitWebResources/App_GlobalResources/Resource1.resx,App_GlobalResources/Resource1.resx -r:System.Web.Extensions.dll -d:TEST</flags>
       <output>System.Web_test_net_2_0.dll</output>
       <built_sources>System.Web/UplevelHelper.cs</built_sources>
       <library_output>System.Web_test_net_2_0.dll</library_output>
     <project dir="class/Mono.Web" library="Mono.Web-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig -r:mscorlib.dll -r:System.dll -r:System.Xml.dll -r:System.Web.dll -r:System.Configuration.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig -r:mscorlib.dll -r:System.dll -r:System.Xml.dll -r:System.Web.dll -r:System.Configuration.dll</flags>
       <output>Mono.Web.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_2_0/Mono.Web.dll</library_output>
     <project dir="class/System.Web.Services" library="System.Web.Services-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig -nowarn:649 -nowarn:169 -r:mscorlib.dll -r:System.dll -r:System.EnterpriseServices.dll -r:System.Xml.dll -r:System.Web.dll -r:System.Configuration.dll -resource:System.Web.Services.Description/wsdl-1.1.xsd,wsdl-1.1.xsd -resource:System.Web.Services.Description/wsdl-1.1-soap.xsd,wsdl-1.1-soap.xsd -resource:System.Web.Services.Description/web-reference.xsd,web-reference.xsd</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig -nowarn:649 -nowarn:169 -r:mscorlib.dll -r:System.dll -r:System.EnterpriseServices.dll -r:System.Xml.dll -r:System.Web.dll -r:System.Configuration.dll -resource:System.Web.Services.Description/wsdl-1.1.xsd,wsdl-1.1.xsd -resource:System.Web.Services.Description/wsdl-1.1-soap.xsd,wsdl-1.1-soap.xsd -resource:System.Web.Services.Description/web-reference.xsd,web-reference.xsd</flags>
       <output>System.Web.Services.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_2_0/System.Web.Services.dll</library_output>
     <project dir="class/System.Web.Services" library="System.Web.Services-tests-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -r:./../../class/lib/net_2_0/System.Web.Services.dll -nowarn:649 -nowarn:169 -r:mscorlib.dll -r:System.dll -r:System.EnterpriseServices.dll -r:System.Xml.dll -r:System.Web.dll -r:System.Configuration.dll -resource:System.Web.Services.Description/wsdl-1.1.xsd,wsdl-1.1.xsd -resource:System.Web.Services.Description/wsdl-1.1-soap.xsd,wsdl-1.1-soap.xsd -resource:System.Web.Services.Description/web-reference.xsd,web-reference.xsd -nowarn:618</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_2_0/System.Web.Services.dll -nowarn:649 -nowarn:169 -r:mscorlib.dll -r:System.dll -r:System.EnterpriseServices.dll -r:System.Xml.dll -r:System.Web.dll -r:System.Configuration.dll -resource:System.Web.Services.Description/wsdl-1.1.xsd,wsdl-1.1.xsd -resource:System.Web.Services.Description/wsdl-1.1-soap.xsd,wsdl-1.1-soap.xsd -resource:System.Web.Services.Description/web-reference.xsd,web-reference.xsd -nowarn:618</flags>
       <output>System.Web.Services_test_net_2_0.dll</output>
       <built_sources></built_sources>
       <library_output>System.Web.Services_test_net_2_0.dll</library_output>
     <project dir="class/System.Web" library="System.Web-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig -unsafe -nowarn:612,618 -r:mscorlib.dll -r:System.dll -r:System.Drawing.dll -r:System.Data.dll -r:System.Xml.dll -r:System.EnterpriseServices.dll -d:INSIDE_SYSTEM_WEB -nowarn:618 -r:System.Configuration.dll -r:Mono.Data.Sqlite.dll /resource:resources/TranslationResources.resources /resource:resources/WebUIValidation.js /resource:resources/folder.gif /resource:resources/file.gif /resource:resources/computer.gif /resource:resources/arrow_minus.gif /resource:resources/arrow_noexpand.gif /resource:resources/arrow_plus.gif /resource:resources/arrow_up.gif /resource:resources/arrow_down.gif /resource:resources/box_full.gif /resource:resources/box_empty.gif /resource:resources/box_minus.gif /resource:resources/box_noexpand.gif /resource:resources/box_plus.gif /resource:resources/contact.gif /resource:resources/dot_empty.gif /resource:resources/dot_full.gif /resource:resources/dots.gif /resource:resources/inbox.gif /resource:resources/star_empty.gif /resource:resources/star_full.gif /resource:resources/warning.gif /resource:resources/TreeView_noexpand.gif /resource:resources/TreeView_dash.gif /resource:resources/TreeView_dashminus.gif /resource:resources/TreeView_dashplus.gif /resource:resources/TreeView_i.gif /resource:resources/TreeView_l.gif /resource:resources/TreeView_lminus.gif /resource:resources/TreeView_lplus.gif /resource:resources/TreeView_minus.gif /resource:resources/TreeView_plus.gif /resource:resources/TreeView_r.gif /resource:resources/TreeView_rminus.gif /resource:resources/TreeView_rplus.gif /resource:resources/TreeView_t.gif /resource:resources/TreeView_tminus.gif /resource:resources/TreeView_tplus.gif /resource:resources/transparent.gif /resource:resources/webform.js /resource:resources/WebUIValidation_2.0.js /resource:resources/ErrorTemplateCommon_Top.html /resource:resources/DefaultErrorTemplate_CustomErrorDefault.html /resource:resources/ErrorTemplateCommon_Bottom.html /resource:resources/DefaultErrorTemplate_StandardPage.html /resource:resources/HtmlizedExceptionPage_Top.html /resource:resources/HtmlizedExceptionPage_FileLongSource.html /resource:resources/HtmlizedExceptionPage_FileShortSource.html /resource:resources/HtmlizedExceptionPage_CompilerOutput.html /resource:System.Web.UI.WebControls/GridView.js /resource:System.Web.UI.WebControls/DetailsView.js /resource:System.Web.UI.WebControls/TreeView.js /resource:System.Web.UI.WebControls/Menu.js -define:WEBSERVICES_DEP -r:System.Web.Services.dll -define:MONOWEB_DEP -r:Mono.Web.dll -define:SYSTEMCORE_DEP -r:System.Core.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig -unsafe -nowarn:612,618 -r:mscorlib.dll -r:System.dll -r:System.Drawing.dll -r:System.Data.dll -r:System.Xml.dll -r:System.EnterpriseServices.dll -d:INSIDE_SYSTEM_WEB -nowarn:618 -r:System.Configuration.dll -r:Mono.Data.Sqlite.dll /resource:resources/TranslationResources.resources /resource:resources/WebUIValidation.js /resource:resources/folder.gif /resource:resources/file.gif /resource:resources/computer.gif /resource:resources/arrow_minus.gif /resource:resources/arrow_noexpand.gif /resource:resources/arrow_plus.gif /resource:resources/arrow_up.gif /resource:resources/arrow_down.gif /resource:resources/box_full.gif /resource:resources/box_empty.gif /resource:resources/box_minus.gif /resource:resources/box_noexpand.gif /resource:resources/box_plus.gif /resource:resources/contact.gif /resource:resources/dot_empty.gif /resource:resources/dot_full.gif /resource:resources/dots.gif /resource:resources/inbox.gif /resource:resources/star_empty.gif /resource:resources/star_full.gif /resource:resources/warning.gif /resource:resources/TreeView_noexpand.gif /resource:resources/TreeView_dash.gif /resource:resources/TreeView_dashminus.gif /resource:resources/TreeView_dashplus.gif /resource:resources/TreeView_i.gif /resource:resources/TreeView_l.gif /resource:resources/TreeView_lminus.gif /resource:resources/TreeView_lplus.gif /resource:resources/TreeView_minus.gif /resource:resources/TreeView_plus.gif /resource:resources/TreeView_r.gif /resource:resources/TreeView_rminus.gif /resource:resources/TreeView_rplus.gif /resource:resources/TreeView_t.gif /resource:resources/TreeView_tminus.gif /resource:resources/TreeView_tplus.gif /resource:resources/transparent.gif /resource:resources/webform.js /resource:resources/WebUIValidation_2.0.js /resource:resources/ErrorTemplateCommon_Top.html /resource:resources/DefaultErrorTemplate_CustomErrorDefault.html /resource:resources/ErrorTemplateCommon_Bottom.html /resource:resources/DefaultErrorTemplate_StandardPage.html /resource:resources/HtmlizedExceptionPage_Top.html /resource:resources/HtmlizedExceptionPage_FileLongSource.html /resource:resources/HtmlizedExceptionPage_FileShortSource.html /resource:resources/HtmlizedExceptionPage_CompilerOutput.html /resource:System.Web.UI.WebControls/GridView.js /resource:System.Web.UI.WebControls/DetailsView.js /resource:System.Web.UI.WebControls/TreeView.js /resource:System.Web.UI.WebControls/Menu.js -define:WEBSERVICES_DEP -r:System.Web.Services.dll -define:MONOWEB_DEP -r:Mono.Web.dll -define:SYSTEMCORE_DEP -r:System.Core.dll</flags>
       <output>System.Web.dll</output>
       <built_sources>System.Web/UplevelHelper.cs</built_sources>
       <library_output>./../../class/lib/net_2_0/tmp/System.Web.dll</library_output>
     <project dir="class/System.Web" library="System.Web-tests-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -r:./../../class/lib/net_2_0/System.Web.dll -unsafe -nowarn:612,618 -r:mscorlib.dll -r:System.dll -r:System.Drawing.dll -r:System.Data.dll -r:System.Xml.dll -r:System.EnterpriseServices.dll -d:INSIDE_SYSTEM_WEB -nowarn:618 -r:System.Configuration.dll -r:Mono.Data.Sqlite.dll /resource:resources/TranslationResources.resources /resource:resources/WebUIValidation.js /resource:resources/folder.gif /resource:resources/file.gif /resource:resources/computer.gif /resource:resources/arrow_minus.gif /resource:resources/arrow_noexpand.gif /resource:resources/arrow_plus.gif /resource:resources/arrow_up.gif /resource:resources/arrow_down.gif /resource:resources/box_full.gif /resource:resources/box_empty.gif /resource:resources/box_minus.gif /resource:resources/box_noexpand.gif /resource:resources/box_plus.gif /resource:resources/contact.gif /resource:resources/dot_empty.gif /resource:resources/dot_full.gif /resource:resources/dots.gif /resource:resources/inbox.gif /resource:resources/star_empty.gif /resource:resources/star_full.gif /resource:resources/warning.gif /resource:resources/TreeView_noexpand.gif /resource:resources/TreeView_dash.gif /resource:resources/TreeView_dashminus.gif /resource:resources/TreeView_dashplus.gif /resource:resources/TreeView_i.gif /resource:resources/TreeView_l.gif /resource:resources/TreeView_lminus.gif /resource:resources/TreeView_lplus.gif /resource:resources/TreeView_minus.gif /resource:resources/TreeView_plus.gif /resource:resources/TreeView_r.gif /resource:resources/TreeView_rminus.gif /resource:resources/TreeView_rplus.gif /resource:resources/TreeView_t.gif /resource:resources/TreeView_tminus.gif /resource:resources/TreeView_tplus.gif /resource:resources/transparent.gif /resource:resources/webform.js /resource:resources/WebUIValidation_2.0.js /resource:resources/ErrorTemplateCommon_Top.html /resource:resources/DefaultErrorTemplate_CustomErrorDefault.html /resource:resources/ErrorTemplateCommon_Bottom.html /resource:resources/DefaultErrorTemplate_StandardPage.html /resource:resources/HtmlizedExceptionPage_Top.html /resource:resources/HtmlizedExceptionPage_FileLongSource.html /resource:resources/HtmlizedExceptionPage_FileShortSource.html /resource:resources/HtmlizedExceptionPage_CompilerOutput.html /resource:System.Web.UI.WebControls/GridView.js /resource:System.Web.UI.WebControls/DetailsView.js /resource:System.Web.UI.WebControls/TreeView.js /resource:System.Web.UI.WebControls/Menu.js -define:WEBSERVICES_DEP -r:System.Web.Services.dll -define:MONOWEB_DEP -r:Mono.Web.dll -define:SYSTEMCORE_DEP -r:System.Core.dll -doc:System.Web_test_net_2_0.xml -nowarn:219,169,1591 -r:SystemWebTestShim.dll /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/Global.asax /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/My.ashx /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/My.master /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/MyPage.aspx /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/MyPage.aspx.cs /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/MyPageWithMaster.aspx /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/Web.mono.config /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/Web.mono.config.4.0 /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/sub_map_01.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_01.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_02.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_03.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_04.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_05.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_06.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_07.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_08.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_09.sitemap /resource:Test/mainsoft/NunitWebResources/menuclass.aspx /resource:Test/mainsoft/NunitWebResources/FormView.aspx /resource:Test/mainsoft/NunitWebResources/PostBackMenuTest.aspx /resource:Test/mainsoft/NunitWebResources/PageWithStyleSheet.aspx /resource:Test/mainsoft/NunitWebResources/PageWithTheme.aspx /resource:Test/mainsoft/NunitWebResources/ResolveUrl.ascx /resource:Test/mainsoft/NunitWebResources/ResolveUrl.aspx /resource:Test/mainsoft/NunitWebResources/RunTimeSetTheme.aspx /resource:Test/mainsoft/NunitWebResources/ReadOnlyPropertyBind.aspx /resource:Test/mainsoft/NunitWebResources/ReadOnlyPropertyControl.ascx /resource:Test/mainsoft/NunitWebResources/Theme1.skin /resource:Test/mainsoft/NunitWebResources/Theme2.skin /resource:Test/mainsoft/NunitWebResources/UrlProperty.aspx /resource:Test/mainsoft/NunitWebResources/UrlProperty.ascx /resource:Test/mainsoft/NunitWebResources/UrlProperty.ascx.cs /resource:Test/mainsoft/NunitWebResources/Web.sitemap /resource:Test/mainsoft/NunitWebResources/WizardTest.skin /resource:Test/mainsoft/NunitWebResources/FooterTemplateTest.aspx /resource:Test/mainsoft/NunitWebResources/DataGrid.aspx /resource:Test/mainsoft/NunitWebResources/DetailsViewTemplates.aspx /resource:Test/mainsoft/NunitWebResources/DetailsViewTemplates_2.aspx /resource:Test/mainsoft/NunitWebResources/DetailsViewTemplates_3.aspx /resource:Test/mainsoft/NunitWebResources/DetailsViewDataActions.aspx /resource:Test/mainsoft/NunitWebResources/DetailsViewProperties1.aspx /resource:Test/mainsoft/NunitWebResources/Bluehills.jpg /resource:Test/mainsoft/NunitWebResources/FormViewTest1.aspx /resource:Test/mainsoft/NunitWebResources/FormViewTest1_2.aspx /resource:Test/mainsoft/NunitWebResources/FormViewTest1_3.aspx /resource:Test/mainsoft/NunitWebResources/FormViewTest1_4.aspx /resource:Test/mainsoft/NunitWebResources/FormViewInsertEditDelete.aspx /resource:Test/mainsoft/NunitWebResources/GridViewUpdate.aspx /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest.xml /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest.xsl /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest1.aspx /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest2.aspx /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest3.aspx /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest4.aspx /resource:Test/mainsoft/NunitWebResources/LoginViewTest1.aspx /resource:Test/mainsoft/NunitWebResources/WebControl.config /resource:Test/mainsoft/NunitWebResources/WebLogin.config /resource:Test/mainsoft/NunitWebResources/CallbackTest1.aspx /resource:Test/mainsoft/NunitWebResources/CallbackTest2.aspx /resource:Test/mainsoft/NunitWebResources/EventValidationTest2.aspx /resource:Test/mainsoft/NunitWebResources/EventValidationTest1.aspx /resource:Test/mainsoft/NunitWebResources/ClientScript.js /resource:Test/mainsoft/NunitWebResources/EvalTest.aspx /resource:Test/mainsoft/NunitWebResources/TemplateUserControl.ascx /resource:Test/mainsoft/NunitWebResources/WebMapping.config /resource:Test/mainsoft/NunitWebResources/Mapping.aspx /resource:Test/mainsoft/NunitWebResources/Mapping1.aspx /resource:Test/mainsoft/NunitWebResources/CrossPagePosting1.aspx /resource:Test/mainsoft/NunitWebResources/CrossPagePosting2.aspx /resource:Test/mainsoft/NunitWebResources/MyDerived.master /resource:Test/mainsoft/NunitWebResources/MyPageWithDerivedMaster.aspx /resource:Test/mainsoft/NunitWebResources/MasterTypeTest1.aspx /resource:Test/mainsoft/NunitWebResources/MasterTypeTest2.aspx /resource:Test/mainsoft/NunitWebResources/PageLifecycleTest.aspx /resource:Test/mainsoft/NunitWebResources/PageValidationTest.aspx /resource:Test/mainsoft/NunitWebResources/AsyncPage.aspx /resource:Test/mainsoft/NunitWebResources/PageCultureTest.aspx /resource:Test/mainsoft/NunitWebResources/adapters.browser /resource:Test/mainsoft/NunitWebResources/NoEventValidation.aspx /resource:Test/mainsoft/NunitWebResources/ListControlPage.aspx /resource:Test/mainsoft/NunitWebResources/TextBoxTestlPage.aspx /resource:Test/mainsoft/NunitWebResources/ClearErrorOnError.aspx /resource:Test/mainsoft/NunitWebResources/RedirectOnError.aspx /resource:Test/mainsoft/NunitWebResources/TestCapability.browser /resource:Test/mainsoft/NunitWebResources/PageWithAdapter.aspx /resource:Test/mainsoft/NunitWebResources/InvalidPropertyBind1.aspx /resource:Test/mainsoft/NunitWebResources/InvalidPropertyBind2.aspx /resource:Test/mainsoft/NunitWebResources/InvalidPropertyBind3.aspx /resource:Test/mainsoft/NunitWebResources/InvalidPropertyBind4.aspx /resource:Test/mainsoft/NunitWebResources/ValidPropertyBind1.aspx /resource:Test/mainsoft/NunitWebResources/ValidPropertyBind2.aspx /resource:Test/mainsoft/NunitWebResources/ValidPropertyBind3.aspx /resource:Test/mainsoft/NunitWebResources/ValidPropertyBind4.aspx /resource:Test/mainsoft/NunitWebResources/ValidPropertyBind5.aspx /resource:Test/mainsoft/NunitWebResources/ReadWritePropertyControl.ascx /resource:Test/mainsoft/MainsoftWebTest/nunitweb_config.xml /resource:Test/mainsoft/NunitWebResources/TemplateControlParsingTest.aspx /resource:Test/mainsoft/NunitWebResources/ContentPlaceHolderInTemplate.aspx /resource:Test/mainsoft/NunitWebResources/ContentPlaceHolderInTemplate.master /resource:Test/mainsoft/NunitWebResources/MissingMasterFile.aspx /resource:Test/mainsoft/NunitWebResources/CustomSectionEmptyCollection.aspx /resource:Test/mainsoft/NunitWebResources/NoDoubleOnInitOnRemoveAdd.aspx /resource:Test/mainsoft/NunitWebResources/NoDoubleOnInitOnRemoveAdd.aspx.cs /resource:Test/mainsoft/NunitWebResources/LoginDisplayRememberMe.aspx /resource:Test/mainsoft/NunitWebResources/NoBindForMethodsWithBindInName.aspx /resource:Test/mainsoft/NunitWebResources/LinkInHeadWithEmbeddedExpression.aspx /resource:Test/mainsoft/NunitWebResources/ExpressionInListControl.aspx /resource:Test/mainsoft/NunitWebResources/ServerSideControlsInScriptBlock.aspx /resource:Test/mainsoft/NunitWebResources/ServerControlInClientSideComment.aspx /resource:Test/mainsoft/NunitWebResources/PreprocessorDirectivesInMarkup.aspx /resource:Test/mainsoft/NunitWebResources/UnquotedAngleBrackets.aspx /resource:Test/mainsoft/NunitWebResources/FullTagsInText.aspx /resource:Test/mainsoft/NunitWebResources/TagsExpressionsAndCommentsInText.aspx /resource:Test/mainsoft/NunitWebResources/NewlineInCodeExpression.aspx /resource:Test/mainsoft/NunitWebResources/DuplicateControlsInClientComment.aspx /resource:Test/mainsoft/NunitWebResources/TagsNestedInClientTag.aspx /resource:Test/mainsoft/NunitWebResources/ConditionalClientComments.aspx /resource:Test/mainsoft/NunitWebResources/OneLetterIdentifierInCodeRender.aspx /resource:Test/mainsoft/NunitWebResources/GlobalResourcesLocalization.aspx /resource:Test/mainsoft/NunitWebResources/TableSections_Bug551666.aspx /resource:Test/mainsoft/NunitWebResources/TableSections_Bug551666.aspx.cs /resource:Test/mainsoft/NunitWebResources/NestedParserFileText.aspx /resource:Test/mainsoft/NunitWebResources/StateFormatter_CorrectConverter.aspx /resource:Test/mainsoft/NunitWebResources/StateFormatter_CollectionConverter.aspx /resource:Test/mainsoft/NunitWebResources/StateFormatter_CollectionConverter.aspx.cs /resource:Test/mainsoft/NunitWebResources/ChangePasswordContainer_FindControl.aspx /resource:Test/mainsoft/NunitWebResources/TagWithExpressionWithinAttribute.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxList_Bug377703_1.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxList_Bug377703_2.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxList_Bug578770.aspx /resource:Test/mainsoft/NunitWebResources/EnumConverter_Bug578586.aspx /resource:Test/mainsoft/NunitWebResources/ButtonColor_Bug325489.aspx /resource:Test/mainsoft/NunitWebResources/SqlDataSource_OnInit_Bug572781.aspx /resource:Test/mainsoft/NunitWebResources/FormViewPagerVisibility.aspx /resource:Test/mainsoft/NunitWebResources/OverridenControlsPropertyAndPostBack_Bug594238.aspx /resource:Test/mainsoft/NunitWebResources/GlobalizationEncodingName.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_0.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_1.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_2.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_5.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_6.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_7.aspx /resource:Test/mainsoft/NunitWebResources/GridView_Bug595567.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxList_Bug600415.aspx /resource:Test/mainsoft/NunitWebResources/BoundField_Bug646505.aspx /resource:Test/mainsoft/NunitWebResources/BoundField_Bug646505.aspx.cs /resource:Test/mainsoft/NunitWebResources/HtmlTitleCodeRender_Bug662918.aspx /resource:Test/mainsoft/NunitWebResources/App_Code/EnumConverterControl.cs,App_Code/EnumConverterControl.cs /resource:Test/mainsoft/NunitWebResources/App_Code/MyContainer.cs,App_Code/MyContainer.cs /resource:Test/mainsoft/NunitWebResources/App_Code/CustomCheckBoxColumn.cs,App_Code/CustomCheckBoxColumn.cs /resource:Test/mainsoft/NunitWebResources/App_GlobalResources/Common.resx,App_GlobalResources/Common.resx /resource:Test/mainsoft/NunitWebResources/App_GlobalResources/Common.fr-FR.resx,App_GlobalResources/Common.fr-FR.resx /resource:Test/mainsoft/NunitWebResources/App_GlobalResources/Resource1.resx,App_GlobalResources/Resource1.resx -r:System.Web.Extensions.dll -d:TEST</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_2_0/System.Web.dll -unsafe -nowarn:612,618 -r:mscorlib.dll -r:System.dll -r:System.Drawing.dll -r:System.Data.dll -r:System.Xml.dll -r:System.EnterpriseServices.dll -d:INSIDE_SYSTEM_WEB -nowarn:618 -r:System.Configuration.dll -r:Mono.Data.Sqlite.dll /resource:resources/TranslationResources.resources /resource:resources/WebUIValidation.js /resource:resources/folder.gif /resource:resources/file.gif /resource:resources/computer.gif /resource:resources/arrow_minus.gif /resource:resources/arrow_noexpand.gif /resource:resources/arrow_plus.gif /resource:resources/arrow_up.gif /resource:resources/arrow_down.gif /resource:resources/box_full.gif /resource:resources/box_empty.gif /resource:resources/box_minus.gif /resource:resources/box_noexpand.gif /resource:resources/box_plus.gif /resource:resources/contact.gif /resource:resources/dot_empty.gif /resource:resources/dot_full.gif /resource:resources/dots.gif /resource:resources/inbox.gif /resource:resources/star_empty.gif /resource:resources/star_full.gif /resource:resources/warning.gif /resource:resources/TreeView_noexpand.gif /resource:resources/TreeView_dash.gif /resource:resources/TreeView_dashminus.gif /resource:resources/TreeView_dashplus.gif /resource:resources/TreeView_i.gif /resource:resources/TreeView_l.gif /resource:resources/TreeView_lminus.gif /resource:resources/TreeView_lplus.gif /resource:resources/TreeView_minus.gif /resource:resources/TreeView_plus.gif /resource:resources/TreeView_r.gif /resource:resources/TreeView_rminus.gif /resource:resources/TreeView_rplus.gif /resource:resources/TreeView_t.gif /resource:resources/TreeView_tminus.gif /resource:resources/TreeView_tplus.gif /resource:resources/transparent.gif /resource:resources/webform.js /resource:resources/WebUIValidation_2.0.js /resource:resources/ErrorTemplateCommon_Top.html /resource:resources/DefaultErrorTemplate_CustomErrorDefault.html /resource:resources/ErrorTemplateCommon_Bottom.html /resource:resources/DefaultErrorTemplate_StandardPage.html /resource:resources/HtmlizedExceptionPage_Top.html /resource:resources/HtmlizedExceptionPage_FileLongSource.html /resource:resources/HtmlizedExceptionPage_FileShortSource.html /resource:resources/HtmlizedExceptionPage_CompilerOutput.html /resource:System.Web.UI.WebControls/GridView.js /resource:System.Web.UI.WebControls/DetailsView.js /resource:System.Web.UI.WebControls/TreeView.js /resource:System.Web.UI.WebControls/Menu.js -define:WEBSERVICES_DEP -r:System.Web.Services.dll -define:MONOWEB_DEP -r:Mono.Web.dll -define:SYSTEMCORE_DEP -r:System.Core.dll -doc:System.Web_test_net_2_0.xml -nowarn:219,169,1591 -r:SystemWebTestShim.dll /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/Global.asax /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/My.ashx /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/My.master /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/MyPage.aspx /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/MyPage.aspx.cs /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/MyPageWithMaster.aspx /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/Web.mono.config /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/Web.mono.config.4.0 /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/sub_map_01.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_01.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_02.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_03.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_04.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_05.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_06.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_07.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_08.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_09.sitemap /resource:Test/mainsoft/NunitWebResources/menuclass.aspx /resource:Test/mainsoft/NunitWebResources/FormView.aspx /resource:Test/mainsoft/NunitWebResources/PostBackMenuTest.aspx /resource:Test/mainsoft/NunitWebResources/PageWithStyleSheet.aspx /resource:Test/mainsoft/NunitWebResources/PageWithTheme.aspx /resource:Test/mainsoft/NunitWebResources/ResolveUrl.ascx /resource:Test/mainsoft/NunitWebResources/ResolveUrl.aspx /resource:Test/mainsoft/NunitWebResources/RunTimeSetTheme.aspx /resource:Test/mainsoft/NunitWebResources/ReadOnlyPropertyBind.aspx /resource:Test/mainsoft/NunitWebResources/ReadOnlyPropertyControl.ascx /resource:Test/mainsoft/NunitWebResources/Theme1.skin /resource:Test/mainsoft/NunitWebResources/Theme2.skin /resource:Test/mainsoft/NunitWebResources/UrlProperty.aspx /resource:Test/mainsoft/NunitWebResources/UrlProperty.ascx /resource:Test/mainsoft/NunitWebResources/UrlProperty.ascx.cs /resource:Test/mainsoft/NunitWebResources/Web.sitemap /resource:Test/mainsoft/NunitWebResources/WizardTest.skin /resource:Test/mainsoft/NunitWebResources/FooterTemplateTest.aspx /resource:Test/mainsoft/NunitWebResources/DataGrid.aspx /resource:Test/mainsoft/NunitWebResources/DetailsViewTemplates.aspx /resource:Test/mainsoft/NunitWebResources/DetailsViewTemplates_2.aspx /resource:Test/mainsoft/NunitWebResources/DetailsViewTemplates_3.aspx /resource:Test/mainsoft/NunitWebResources/DetailsViewDataActions.aspx /resource:Test/mainsoft/NunitWebResources/DetailsViewProperties1.aspx /resource:Test/mainsoft/NunitWebResources/Bluehills.jpg /resource:Test/mainsoft/NunitWebResources/FormViewTest1.aspx /resource:Test/mainsoft/NunitWebResources/FormViewTest1_2.aspx /resource:Test/mainsoft/NunitWebResources/FormViewTest1_3.aspx /resource:Test/mainsoft/NunitWebResources/FormViewTest1_4.aspx /resource:Test/mainsoft/NunitWebResources/FormViewInsertEditDelete.aspx /resource:Test/mainsoft/NunitWebResources/GridViewUpdate.aspx /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest.xml /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest.xsl /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest1.aspx /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest2.aspx /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest3.aspx /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest4.aspx /resource:Test/mainsoft/NunitWebResources/LoginViewTest1.aspx /resource:Test/mainsoft/NunitWebResources/WebControl.config /resource:Test/mainsoft/NunitWebResources/WebLogin.config /resource:Test/mainsoft/NunitWebResources/CallbackTest1.aspx /resource:Test/mainsoft/NunitWebResources/CallbackTest2.aspx /resource:Test/mainsoft/NunitWebResources/EventValidationTest2.aspx /resource:Test/mainsoft/NunitWebResources/EventValidationTest1.aspx /resource:Test/mainsoft/NunitWebResources/ClientScript.js /resource:Test/mainsoft/NunitWebResources/EvalTest.aspx /resource:Test/mainsoft/NunitWebResources/TemplateUserControl.ascx /resource:Test/mainsoft/NunitWebResources/WebMapping.config /resource:Test/mainsoft/NunitWebResources/Mapping.aspx /resource:Test/mainsoft/NunitWebResources/Mapping1.aspx /resource:Test/mainsoft/NunitWebResources/CrossPagePosting1.aspx /resource:Test/mainsoft/NunitWebResources/CrossPagePosting2.aspx /resource:Test/mainsoft/NunitWebResources/MyDerived.master /resource:Test/mainsoft/NunitWebResources/MyPageWithDerivedMaster.aspx /resource:Test/mainsoft/NunitWebResources/MasterTypeTest1.aspx /resource:Test/mainsoft/NunitWebResources/MasterTypeTest2.aspx /resource:Test/mainsoft/NunitWebResources/PageLifecycleTest.aspx /resource:Test/mainsoft/NunitWebResources/PageValidationTest.aspx /resource:Test/mainsoft/NunitWebResources/AsyncPage.aspx /resource:Test/mainsoft/NunitWebResources/PageCultureTest.aspx /resource:Test/mainsoft/NunitWebResources/adapters.browser /resource:Test/mainsoft/NunitWebResources/NoEventValidation.aspx /resource:Test/mainsoft/NunitWebResources/ListControlPage.aspx /resource:Test/mainsoft/NunitWebResources/TextBoxTestlPage.aspx /resource:Test/mainsoft/NunitWebResources/ClearErrorOnError.aspx /resource:Test/mainsoft/NunitWebResources/RedirectOnError.aspx /resource:Test/mainsoft/NunitWebResources/TestCapability.browser /resource:Test/mainsoft/NunitWebResources/PageWithAdapter.aspx /resource:Test/mainsoft/NunitWebResources/InvalidPropertyBind1.aspx /resource:Test/mainsoft/NunitWebResources/InvalidPropertyBind2.aspx /resource:Test/mainsoft/NunitWebResources/InvalidPropertyBind3.aspx /resource:Test/mainsoft/NunitWebResources/InvalidPropertyBind4.aspx /resource:Test/mainsoft/NunitWebResources/ValidPropertyBind1.aspx /resource:Test/mainsoft/NunitWebResources/ValidPropertyBind2.aspx /resource:Test/mainsoft/NunitWebResources/ValidPropertyBind3.aspx /resource:Test/mainsoft/NunitWebResources/ValidPropertyBind4.aspx /resource:Test/mainsoft/NunitWebResources/ValidPropertyBind5.aspx /resource:Test/mainsoft/NunitWebResources/ReadWritePropertyControl.ascx /resource:Test/mainsoft/MainsoftWebTest/nunitweb_config.xml /resource:Test/mainsoft/NunitWebResources/TemplateControlParsingTest.aspx /resource:Test/mainsoft/NunitWebResources/ContentPlaceHolderInTemplate.aspx /resource:Test/mainsoft/NunitWebResources/ContentPlaceHolderInTemplate.master /resource:Test/mainsoft/NunitWebResources/MissingMasterFile.aspx /resource:Test/mainsoft/NunitWebResources/CustomSectionEmptyCollection.aspx /resource:Test/mainsoft/NunitWebResources/NoDoubleOnInitOnRemoveAdd.aspx /resource:Test/mainsoft/NunitWebResources/NoDoubleOnInitOnRemoveAdd.aspx.cs /resource:Test/mainsoft/NunitWebResources/LoginDisplayRememberMe.aspx /resource:Test/mainsoft/NunitWebResources/NoBindForMethodsWithBindInName.aspx /resource:Test/mainsoft/NunitWebResources/LinkInHeadWithEmbeddedExpression.aspx /resource:Test/mainsoft/NunitWebResources/ExpressionInListControl.aspx /resource:Test/mainsoft/NunitWebResources/ServerSideControlsInScriptBlock.aspx /resource:Test/mainsoft/NunitWebResources/ServerControlInClientSideComment.aspx /resource:Test/mainsoft/NunitWebResources/PreprocessorDirectivesInMarkup.aspx /resource:Test/mainsoft/NunitWebResources/UnquotedAngleBrackets.aspx /resource:Test/mainsoft/NunitWebResources/FullTagsInText.aspx /resource:Test/mainsoft/NunitWebResources/TagsExpressionsAndCommentsInText.aspx /resource:Test/mainsoft/NunitWebResources/NewlineInCodeExpression.aspx /resource:Test/mainsoft/NunitWebResources/DuplicateControlsInClientComment.aspx /resource:Test/mainsoft/NunitWebResources/TagsNestedInClientTag.aspx /resource:Test/mainsoft/NunitWebResources/ConditionalClientComments.aspx /resource:Test/mainsoft/NunitWebResources/OneLetterIdentifierInCodeRender.aspx /resource:Test/mainsoft/NunitWebResources/GlobalResourcesLocalization.aspx /resource:Test/mainsoft/NunitWebResources/TableSections_Bug551666.aspx /resource:Test/mainsoft/NunitWebResources/TableSections_Bug551666.aspx.cs /resource:Test/mainsoft/NunitWebResources/NestedParserFileText.aspx /resource:Test/mainsoft/NunitWebResources/StateFormatter_CorrectConverter.aspx /resource:Test/mainsoft/NunitWebResources/StateFormatter_CollectionConverter.aspx /resource:Test/mainsoft/NunitWebResources/StateFormatter_CollectionConverter.aspx.cs /resource:Test/mainsoft/NunitWebResources/ChangePasswordContainer_FindControl.aspx /resource:Test/mainsoft/NunitWebResources/TagWithExpressionWithinAttribute.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxList_Bug377703_1.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxList_Bug377703_2.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxList_Bug578770.aspx /resource:Test/mainsoft/NunitWebResources/EnumConverter_Bug578586.aspx /resource:Test/mainsoft/NunitWebResources/ButtonColor_Bug325489.aspx /resource:Test/mainsoft/NunitWebResources/SqlDataSource_OnInit_Bug572781.aspx /resource:Test/mainsoft/NunitWebResources/FormViewPagerVisibility.aspx /resource:Test/mainsoft/NunitWebResources/OverridenControlsPropertyAndPostBack_Bug594238.aspx /resource:Test/mainsoft/NunitWebResources/GlobalizationEncodingName.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_0.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_1.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_2.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_5.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_6.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_7.aspx /resource:Test/mainsoft/NunitWebResources/GridView_Bug595567.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxList_Bug600415.aspx /resource:Test/mainsoft/NunitWebResources/BoundField_Bug646505.aspx /resource:Test/mainsoft/NunitWebResources/BoundField_Bug646505.aspx.cs /resource:Test/mainsoft/NunitWebResources/HtmlTitleCodeRender_Bug662918.aspx /resource:Test/mainsoft/NunitWebResources/App_Code/EnumConverterControl.cs,App_Code/EnumConverterControl.cs /resource:Test/mainsoft/NunitWebResources/App_Code/MyContainer.cs,App_Code/MyContainer.cs /resource:Test/mainsoft/NunitWebResources/App_Code/CustomCheckBoxColumn.cs,App_Code/CustomCheckBoxColumn.cs /resource:Test/mainsoft/NunitWebResources/App_GlobalResources/Common.resx,App_GlobalResources/Common.resx /resource:Test/mainsoft/NunitWebResources/App_GlobalResources/Common.fr-FR.resx,App_GlobalResources/Common.fr-FR.resx /resource:Test/mainsoft/NunitWebResources/App_GlobalResources/Resource1.resx,App_GlobalResources/Resource1.resx -r:System.Web.Extensions.dll -d:TEST</flags>
       <output>System.Web_test_net_2_0.dll</output>
       <built_sources>System.Web/UplevelHelper.cs</built_sources>
       <library_output>System.Web_test_net_2_0.dll</library_output>
     <project dir="class/System.Runtime.Serialization.Formatters.Soap" library="System.Runtime.Serialization.Formatters.Soap-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig /r:mscorlib.dll /r:System.Xml.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig /r:mscorlib.dll /r:System.Xml.dll</flags>
       <output>System.Runtime.Serialization.Formatters.Soap.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_2_0/System.Runtime.Serialization.Formatters.Soap.dll</library_output>
     <project dir="class/System.Runtime.Serialization.Formatters.Soap" library="System.Runtime.Serialization.Formatters.Soap-tests-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -r:./../../class/lib/net_2_0/System.Runtime.Serialization.Formatters.Soap.dll /r:mscorlib.dll /r:System.Xml.dll -nowarn:0618 -nowarn:219 -nowarn:169</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_2_0/System.Runtime.Serialization.Formatters.Soap.dll /r:mscorlib.dll /r:System.Xml.dll -nowarn:0618 -nowarn:219 -nowarn:169</flags>
       <output>System.Runtime.Serialization.Formatters.Soap_test_net_2_0.dll</output>
       <built_sources></built_sources>
       <library_output>System.Runtime.Serialization.Formatters.Soap_test_net_2_0.dll</library_output>
     <project dir="class/System.Runtime.Remoting" library="System.Runtime.Remoting-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig /r:mscorlib.dll /r:System.dll /r:System.Web.dll /r:System.Xml.dll /r:System.Runtime.Serialization.Formatters.Soap.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig /r:mscorlib.dll /r:System.dll /r:System.Web.dll /r:System.Xml.dll /r:System.Runtime.Serialization.Formatters.Soap.dll</flags>
       <output>System.Runtime.Remoting.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_2_0/System.Runtime.Remoting.dll</library_output>
     <project dir="class/System.Runtime.Remoting" library="System.Runtime.Remoting-tests-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -r:./../../class/lib/net_2_0/System.Runtime.Remoting.dll /r:mscorlib.dll /r:System.dll /r:System.Web.dll /r:System.Xml.dll /r:System.Runtime.Serialization.Formatters.Soap.dll -nowarn:618 /r:System.Runtime.Remoting.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_2_0/System.Runtime.Remoting.dll /r:mscorlib.dll /r:System.dll /r:System.Web.dll /r:System.Xml.dll /r:System.Runtime.Serialization.Formatters.Soap.dll -nowarn:618 /r:System.Runtime.Remoting.dll</flags>
       <output>System.Runtime.Remoting_test_net_2_0.dll</output>
       <built_sources></built_sources>
       <library_output>System.Runtime.Remoting_test_net_2_0.dll</library_output>
     <project dir="class/System.Configuration.Install" library="System.Configuration.Install-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig /r:mscorlib.dll /r:System.dll /r:System.Xml.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig /r:mscorlib.dll /r:System.dll /r:System.Xml.dll</flags>
       <output>System.Configuration.Install.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_2_0/System.Configuration.Install.dll</library_output>
     <project dir="class/System.Management" library="System.Management-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig /r:mscorlib.dll /r:System.dll /r:System.Configuration.Install.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig /r:mscorlib.dll /r:System.dll /r:System.Configuration.Install.dll</flags>
       <output>System.Management.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_2_0/System.Management.dll</library_output>
     <project dir="class/System.Data.OracleClient" library="System.Data.OracleClient-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig /r:mscorlib.dll /r:System.dll /r:System.Xml.dll /r:System.Data.dll /r:System.EnterpriseServices.dll /r:System.Drawing.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig /r:mscorlib.dll /r:System.dll /r:System.Xml.dll /r:System.Data.dll /r:System.EnterpriseServices.dll /r:System.Drawing.dll</flags>
       <output>System.Data.OracleClient.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_2_0/System.Data.OracleClient.dll</library_output>
     <project dir="class/System.Data.OracleClient" library="System.Data.OracleClient-tests-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -r:./../../class/lib/net_2_0/System.Data.OracleClient.dll /r:mscorlib.dll /r:System.dll /r:System.Xml.dll /r:System.Data.dll /r:System.EnterpriseServices.dll /r:System.Drawing.dll /nowarn:618</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_2_0/System.Data.OracleClient.dll /r:mscorlib.dll /r:System.dll /r:System.Xml.dll /r:System.Data.dll /r:System.EnterpriseServices.dll /r:System.Drawing.dll /nowarn:618</flags>
       <output>System.Data.OracleClient_test_net_2_0.dll</output>
       <built_sources></built_sources>
       <library_output>System.Data.OracleClient_test_net_2_0.dll</library_output>
     <project dir="class/Microsoft.VisualC" library="Microsoft.VisualC-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig /r:mscorlib.dll /r:System.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig /r:mscorlib.dll /r:System.dll</flags>
       <output>Microsoft.VisualC.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_2_0/Microsoft.VisualC.dll</library_output>
     <project dir="class/Cscompmgd" library="Cscompmgd-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig /r:mscorlib.dll /r:System.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig /r:mscorlib.dll /r:System.dll</flags>
       <output>cscompmgd.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_2_0/cscompmgd.dll</library_output>
     <project dir="class/Cscompmgd" library="Cscompmgd-tests-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -r:./../../class/lib/net_2_0/cscompmgd.dll /r:mscorlib.dll /r:System.dll -nowarn:0618 -nowarn:219 -nowarn:169</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_2_0/cscompmgd.dll /r:mscorlib.dll /r:System.dll -nowarn:0618 -nowarn:219 -nowarn:169</flags>
       <output>Cscompmgd_test_net_2_0.dll</output>
       <built_sources></built_sources>
       <library_output>Cscompmgd_test_net_2_0.dll</library_output>
     <project dir="class/System.Design" library="System.Design-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig -r:mscorlib.dll -r:System.dll -r:System.Xml.dll -r:System.Web.dll -r:System.Windows.Forms.dll -r:System.Drawing.dll -r:Accessibility.dll -r:System.Data.dll -r:System.Configuration.dll -define:DRAWING_DESIGN_DEP -r:System.Drawing.Design.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig -r:mscorlib.dll -r:System.dll -r:System.Xml.dll -r:System.Web.dll -r:System.Windows.Forms.dll -r:System.Drawing.dll -r:Accessibility.dll -r:System.Data.dll -r:System.Configuration.dll -define:DRAWING_DESIGN_DEP -r:System.Drawing.Design.dll</flags>
       <output>System.Design.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_2_0/tmp/System.Design.dll</library_output>
     <project dir="class/System.Design" library="System.Design-tests-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -r:./../../class/lib/net_2_0/System.Design.dll /r:System.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_2_0/System.Design.dll /r:System.dll</flags>
       <output>System.Design_test_net_2_0.dll</output>
       <built_sources></built_sources>
       <library_output>System.Design_test_net_2_0.dll</library_output>
     <project dir="class/PEAPI" library="PEAPI-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig /r:mscorlib.dll /r:System.dll -nowarn:414,618</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig /r:mscorlib.dll /r:System.dll -nowarn:414,618</flags>
       <output>PEAPI.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_2_0/PEAPI.dll</library_output>
     <project dir="class/Npgsql" library="Npgsql-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig /r:mscorlib.dll /r:System.dll /r:System.Xml.dll /r:System.Data.dll /r:Mono.Security.dll -warn:1 @Npgsql.dll.resources</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig /r:mscorlib.dll /r:System.dll /r:System.Xml.dll /r:System.Data.dll /r:Mono.Security.dll -warn:1 @Npgsql.dll.resources</flags>
       <output>Npgsql.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_2_0/Npgsql.dll</library_output>
     <project dir="class/Npgsql" library="Npgsql-tests-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -r:./../../class/lib/net_2_0/Npgsql.dll /r:mscorlib.dll /r:System.dll /r:System.Xml.dll /r:System.Web.dll /r:System.Data.dll -nowarn:0618 -nowarn:219 -nowarn:169</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_2_0/Npgsql.dll /r:mscorlib.dll /r:System.dll /r:System.Xml.dll /r:System.Web.dll /r:System.Data.dll -nowarn:0618 -nowarn:219 -nowarn:169</flags>
       <output>Npgsql_test_net_2_0.dll</output>
       <built_sources></built_sources>
       <library_output>Npgsql_test_net_2_0.dll</library_output>
     <project dir="class/Commons.Xml.Relaxng" library="Commons.Xml.Relaxng-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig /r:mscorlib.dll /r:System.dll /r:System.Xml.dll /resource:resources/relaxng.rng,relaxng.rng</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig /r:mscorlib.dll /r:System.dll /r:System.Xml.dll /resource:resources/relaxng.rng,relaxng.rng</flags>
       <output>Commons.Xml.Relaxng.dll</output>
       <built_sources>Commons.Xml.Relaxng.Rnc/RncParser.cs</built_sources>
       <library_output>./../../class/lib/net_2_0/Commons.Xml.Relaxng.dll</library_output>
     <project dir="class/Commons.Xml.Relaxng" library="Commons.Xml.Relaxng-tests-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -r:./../../class/lib/net_2_0/Commons.Xml.Relaxng.dll /r:mscorlib.dll /r:System.dll /r:System.Xml.dll /resource:resources/relaxng.rng,relaxng.rng -nowarn:0618 -nowarn:219 -nowarn:169</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_2_0/Commons.Xml.Relaxng.dll /r:mscorlib.dll /r:System.dll /r:System.Xml.dll /resource:resources/relaxng.rng,relaxng.rng -nowarn:0618 -nowarn:219 -nowarn:169</flags>
       <output>Commons.Xml.Relaxng_test_net_2_0.dll</output>
       <built_sources>Commons.Xml.Relaxng.Rnc/RncParser.cs</built_sources>
       <library_output>Commons.Xml.Relaxng_test_net_2_0.dll</library_output>
     <project dir="class/Novell.Directory.Ldap" library="Novell.Directory.Ldap-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig -warn:1 -nowarn:612 -r:mscorlib.dll -r:System.dll -r:Mono.Security.dll /res:Novell.Directory.Ldap.Utilclass/ResultCodeMessages.resources</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig -warn:1 -nowarn:612 -r:mscorlib.dll -r:System.dll -r:Mono.Security.dll /res:Novell.Directory.Ldap.Utilclass/ResultCodeMessages.resources</flags>
       <output>Novell.Directory.Ldap.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_2_0/Novell.Directory.Ldap.dll</library_output>
     <project dir="class/Novell.Directory.Ldap" library="Novell.Directory.Ldap-tests-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -r:./../../class/lib/net_2_0/Novell.Directory.Ldap.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_2_0/Novell.Directory.Ldap.dll</flags>
       <output>Novell.Directory.Ldap_test_net_2_0.dll</output>
       <built_sources></built_sources>
       <library_output>Novell.Directory.Ldap_test_net_2_0.dll</library_output>
     <project dir="class/Mono.Security.Win32" library="Mono.Security.Win32-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig /unsafe</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig /unsafe</flags>
       <output>Mono.Security.Win32.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_2_0/Mono.Security.Win32.dll</library_output>
     <project dir="class/System.DirectoryServices" library="System.DirectoryServices-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig /r:mscorlib.dll /r:System.dll /r:Novell.Directory.Ldap.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig /r:mscorlib.dll /r:System.dll /r:Novell.Directory.Ldap.dll</flags>
       <output>System.DirectoryServices.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_2_0/System.DirectoryServices.dll</library_output>
     <project dir="class/System.DirectoryServices" library="System.DirectoryServices-tests-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -r:./../../class/lib/net_2_0/System.DirectoryServices.dll /r:mscorlib.dll /r:System.dll /r:Novell.Directory.Ldap.dll -nowarn:0618 -nowarn:219 -nowarn:169</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_2_0/System.DirectoryServices.dll /r:mscorlib.dll /r:System.dll /r:Novell.Directory.Ldap.dll -nowarn:0618 -nowarn:219 -nowarn:169</flags>
       <output>System.DirectoryServices_test_net_2_0.dll</output>
       <built_sources></built_sources>
       <library_output>System.DirectoryServices_test_net_2_0.dll</library_output>
     <project dir="class/RabbitMQ.Client/src/apigen" library="RabbitMQ.Client.Apigen-net_2_0">
       <boot></boot>
       <mcs>MONO_PATH=./../../../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 /r:System.dll /r:System.Xml.dll /main:RabbitMQ.Client.Apigen.Apigen -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig</flags>
+      <flags>/codepage:65001 /r:System.dll /r:System.Xml.dll /main:RabbitMQ.Client.Apigen.Apigen -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig</flags>
       <output>RabbitMQ.Client.Apigen.exe</output>
       <built_sources></built_sources>
       <library_output>./../../../../class/lib/net_2_0/RabbitMQ.Client.Apigen.exe</library_output>
     <project dir="class/RabbitMQ.Client/src/client" library="RabbitMQ.Client-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig -r:System.dll -r:System.Xml.dll -nowarn:618</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig -r:System.dll -r:System.Xml.dll -nowarn:618</flags>
       <output>RabbitMQ.Client.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../../class/lib/net_2_0/RabbitMQ.Client.dll</library_output>
     <project dir="class/Mono.Messaging" library="Mono.Messaging-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig /r:System.dll /r:System.Configuration</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig /r:System.dll /r:System.Configuration</flags>
       <output>Mono.Messaging.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_2_0/Mono.Messaging.dll</library_output>
     <project dir="class/Mono.Messaging" library="Mono.Messaging-tests-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -r:./../../class/lib/net_2_0/Mono.Messaging.dll /r:System.dll /r:System.Configuration -nowarn:0618 -nowarn:219 -nowarn:169 /r:System.Messaging.dll /r:nunit.mocks.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_2_0/Mono.Messaging.dll /r:System.dll /r:System.Configuration -nowarn:0618 -nowarn:219 -nowarn:169 /r:System.Messaging.dll /r:nunit.mocks.dll</flags>
       <output>Mono.Messaging_test_net_2_0.dll</output>
       <built_sources></built_sources>
       <library_output>Mono.Messaging_test_net_2_0.dll</library_output>
     <project dir="class/System.Messaging" library="System.Messaging-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig /resource:System.Messaging/MessageQueue.resx /r:System.dll /r:System.Configuration.Install.dll /r:System.Drawing.dll /r:System.Windows.Forms.dll /r:System.Xml /r:Mono.Messaging.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig /resource:System.Messaging/MessageQueue.resx /r:System.dll /r:System.Configuration.Install.dll /r:System.Drawing.dll /r:System.Windows.Forms.dll /r:System.Xml /r:Mono.Messaging.dll</flags>
       <output>System.Messaging.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_2_0/System.Messaging.dll</library_output>
     <project dir="class/System.Messaging" library="System.Messaging-tests-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -r:./../../class/lib/net_2_0/System.Messaging.dll /resource:System.Messaging/MessageQueue.resx /r:System.dll /r:System.Configuration.Install.dll /r:System.Drawing.dll /r:System.Windows.Forms.dll /r:System.Xml /r:Mono.Messaging.dll -nowarn:0618 -nowarn:219 -nowarn:169 /r:nunit.mocks.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_2_0/System.Messaging.dll /resource:System.Messaging/MessageQueue.resx /r:System.dll /r:System.Configuration.Install.dll /r:System.Drawing.dll /r:System.Windows.Forms.dll /r:System.Xml /r:Mono.Messaging.dll -nowarn:0618 -nowarn:219 -nowarn:169 /r:nunit.mocks.dll</flags>
       <output>System.Messaging_test_net_2_0.dll</output>
       <built_sources></built_sources>
       <library_output>System.Messaging_test_net_2_0.dll</library_output>
     <project dir="class/Mono.Messaging.RabbitMQ" library="Mono.Messaging.RabbitMQ-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig /r:System.dll /r:System.Messaging.dll /r:Mono.Messaging.dll /r:RabbitMQ.Client -nowarn:618</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig /r:System.dll /r:System.Messaging.dll /r:Mono.Messaging.dll /r:RabbitMQ.Client -nowarn:618</flags>
       <output>Mono.Messaging.RabbitMQ.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_2_0/Mono.Messaging.RabbitMQ.dll</library_output>
     <project dir="class/Mono.Messaging.RabbitMQ" library="Mono.Messaging.RabbitMQ-tests-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -r:./../../class/lib/net_2_0/Mono.Messaging.RabbitMQ.dll /r:System.dll /r:System.Messaging.dll /r:Mono.Messaging.dll /r:RabbitMQ.Client -nowarn:618 -nowarn:0618 -nowarn:219 -nowarn:169 /r:nunit.mocks.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_2_0/Mono.Messaging.RabbitMQ.dll /r:System.dll /r:System.Messaging.dll /r:Mono.Messaging.dll /r:RabbitMQ.Client -nowarn:618 -nowarn:0618 -nowarn:219 -nowarn:169 /r:nunit.mocks.dll</flags>
       <output>Mono.Messaging.RabbitMQ_test_net_2_0.dll</output>
       <built_sources></built_sources>
       <library_output>Mono.Messaging.RabbitMQ_test_net_2_0.dll</library_output>
     <project dir="class/System.ServiceProcess" library="System.ServiceProcess-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig /r:System.dll /r:System.Configuration.Install.dll /r:System.Windows.Forms.dll /nowarn:0618</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig /r:System.dll /r:System.Configuration.Install.dll /r:System.Windows.Forms.dll /nowarn:0618</flags>
       <output>System.ServiceProcess.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_2_0/System.ServiceProcess.dll</library_output>
     <project dir="class/System.ServiceProcess" library="System.ServiceProcess-tests-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -r:./../../class/lib/net_2_0/System.ServiceProcess.dll /r:System.dll /r:System.Configuration.Install.dll /r:System.Windows.Forms.dll /nowarn:0618</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_2_0/System.ServiceProcess.dll /r:System.dll /r:System.Configuration.Install.dll /r:System.Windows.Forms.dll /nowarn:0618</flags>
       <output>System.ServiceProcess_test_net_2_0.dll</output>
       <built_sources></built_sources>
       <library_output>System.ServiceProcess_test_net_2_0.dll</library_output>
     <project dir="class/System.Drawing.Design" library="System.Drawing.Design-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig /r:mscorlib.dll /r:System.dll /r:System.Drawing.dll /r:System.Windows.Forms.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig /r:mscorlib.dll /r:System.dll /r:System.Drawing.dll /r:System.Windows.Forms.dll</flags>
       <output>System.Drawing.Design.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_2_0/System.Drawing.Design.dll</library_output>
     <project dir="class/System.Design" library="System.Design-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig -r:mscorlib.dll -r:System.dll -r:System.Xml.dll -r:System.Web.dll -r:System.Windows.Forms.dll -r:System.Drawing.dll -r:Accessibility.dll -r:System.Data.dll -r:System.Configuration.dll -define:DRAWING_DESIGN_DEP -r:System.Drawing.Design.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig -r:mscorlib.dll -r:System.dll -r:System.Xml.dll -r:System.Web.dll -r:System.Windows.Forms.dll -r:System.Drawing.dll -r:Accessibility.dll -r:System.Data.dll -r:System.Configuration.dll -define:DRAWING_DESIGN_DEP -r:System.Drawing.Design.dll</flags>
       <output>System.Design.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_2_0/tmp/System.Design.dll</library_output>
     <project dir="class/System.Design" library="System.Design-tests-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -r:./../../class/lib/net_2_0/System.Design.dll /r:System.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_2_0/System.Design.dll /r:System.dll</flags>
       <output>System.Design_test_net_2_0.dll</output>
       <built_sources></built_sources>
       <library_output>System.Design_test_net_2_0.dll</library_output>
     <project dir="class/ICSharpCode.SharpZipLib" library="ICSharpCode.SharpZipLib-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig /r:mscorlib.dll /r:System.dll /r:System.Xml.dll -warn:1</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig /r:mscorlib.dll /r:System.dll /r:System.Xml.dll -warn:1</flags>
       <output>ICSharpCode.SharpZipLib.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_2_0/ICSharpCode.SharpZipLib.dll</library_output>
     <project dir="class/Mono.Http" library="Mono.Http-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig -r:mscorlib.dll -r:System.dll -r:System.Xml.dll -r:System.Web.dll -r:ICSharpCode.SharpZipLib.dll -r:Mono.Security.dll -nowarn:618</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig -r:mscorlib.dll -r:System.dll -r:System.Xml.dll -r:System.Web.dll -r:ICSharpCode.SharpZipLib.dll -r:Mono.Security.dll -nowarn:618</flags>
       <output>Mono.Http.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_2_0/Mono.Http.dll</library_output>
     <project dir="class/Mono.Cairo" library="Mono.Cairo-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig</flags>
       <output>Mono.Cairo.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_2_0/Mono.Cairo.dll</library_output>
     <project dir="class/IBM.Data.DB2" library="IBM.Data.DB2-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig /unsafe /r:mscorlib.dll /r:System.dll /r:System.Xml.dll /r:System.Data.dll -warn:1</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig /unsafe /r:mscorlib.dll /r:System.dll /r:System.Xml.dll /r:System.Data.dll -warn:1</flags>
       <output>IBM.Data.DB2.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_2_0/IBM.Data.DB2.dll</library_output>
     <project dir="class/CustomMarshalers" library="CustomMarshalers-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig /r:mscorlib.dll /r:System.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig /r:mscorlib.dll /r:System.dll</flags>
       <output>CustomMarshalers.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_2_0/CustomMarshalers.dll</library_output>
     <project dir="class/OpenSystem.C" library="OpenSystem.C-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig</flags>
       <output>OpenSystem.C.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_2_0/OpenSystem.C.dll</library_output>
     <project dir="class/Mono.Cecil" library="Mono.Cecil-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig /r:mscorlib.dll -keyfile:../mono.snk -r:System.Core.dll -d:NET_3_5</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig /r:mscorlib.dll -keyfile:../mono.snk -r:System.Core.dll -d:NET_3_5</flags>
       <output>Mono.Cecil.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_2_0/Mono.Cecil.dll</library_output>
     <project dir="class/Mono.Cecil.Mdb" library="Mono.Cecil.Mdb-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig /r:mscorlib.dll /r:System.dll /r:Mono.Cecil.dll /d:CECIL -keyfile:../mono.snk</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig /r:mscorlib.dll /r:System.dll /r:Mono.Cecil.dll /d:CECIL -keyfile:../mono.snk</flags>
       <output>Mono.Cecil.Mdb.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_2_0/Mono.Cecil.Mdb.dll</library_output>
     <project dir="class/Mono.Debugger.Soft" library="Mono.Debugger.Soft-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig /r:mscorlib.dll /r:System.dll /r:Mono.Cecil.dll /r:System.Core.dll /unsafe -D:MONO_DATACONVERTER_STATIC_METHODS -keyfile:../mono.snk</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig /r:mscorlib.dll /r:System.dll /r:Mono.Cecil.dll /r:System.Core.dll /unsafe -D:MONO_DATACONVERTER_STATIC_METHODS -keyfile:../mono.snk</flags>
       <output>Mono.Debugger.Soft.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_2_0/Mono.Debugger.Soft.dll</library_output>
     <project dir="class/Mono.Debugger.Soft" library="Mono.Debugger.Soft-tests-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -r:./../../class/lib/net_2_0/Mono.Debugger.Soft.dll /r:Mono.Cecil.dll /r:System.dll /r:System.Core.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_2_0/Mono.Debugger.Soft.dll /r:Mono.Cecil.dll /r:System.dll /r:System.Core.dll</flags>
       <output>Mono.Debugger.Soft_test_net_2_0.dll</output>
       <built_sources></built_sources>
       <library_output>Mono.Debugger.Soft_test_net_2_0.dll</library_output>
     <project dir="class/SystemWebTestShim" library="SystemWebTestShim-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig -r:System.Web.dll -r:System.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig -r:System.Web.dll -r:System.dll</flags>
       <output>SystemWebTestShim.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_2_0/SystemWebTestShim.dll</library_output>
     <project dir="class/Microsoft.Build.Framework" library="Microsoft.Build.Framework-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig /r:mscorlib.dll /r:System.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig /r:mscorlib.dll /r:System.dll</flags>
       <output>Microsoft.Build.Framework.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_2_0/Microsoft.Build.Framework.dll</library_output>
     <project dir="class/Microsoft.Build.Framework" library="Microsoft.Build.Framework-tests-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -r:./../../class/lib/net_2_0/Microsoft.Build.Framework.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_2_0/Microsoft.Build.Framework.dll</flags>
       <output>Microsoft.Build.Framework_test_net_2_0.dll</output>
       <built_sources></built_sources>
       <library_output>Microsoft.Build.Framework_test_net_2_0.dll</library_output>
     <project dir="class/Microsoft.Build.Utilities" library="Microsoft.Build.Utilities-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig /r:mscorlib.dll /r:System.dll /r:Microsoft.Build.Framework.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig /r:mscorlib.dll /r:System.dll /r:Microsoft.Build.Framework.dll</flags>
       <output>Microsoft.Build.Utilities.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_2_0/Microsoft.Build.Utilities.dll</library_output>
     <project dir="class/Microsoft.Build.Utilities" library="Microsoft.Build.Utilities-tests-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -r:./../../class/lib/net_2_0/Microsoft.Build.Utilities.dll /r:Microsoft.Build.Framework.dll -r:System.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_2_0/Microsoft.Build.Utilities.dll /r:Microsoft.Build.Framework.dll -r:System.dll</flags>
       <output>Microsoft.Build.Utilities_test_net_2_0.dll</output>
       <built_sources></built_sources>
       <library_output>Microsoft.Build.Utilities_test_net_2_0.dll</library_output>
     <project dir="class/Microsoft.Build.Engine" library="Microsoft.Build.Engine-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig /r:mscorlib.dll /r:System.dll /r:System.Core.dll /r:System.Xml.dll /r:Microsoft.Build.Framework.dll /r:Microsoft.Build.Utilities.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig /r:mscorlib.dll /r:System.dll /r:System.Core.dll /r:System.Xml.dll /r:Microsoft.Build.Framework.dll /r:Microsoft.Build.Utilities.dll</flags>
       <output>Microsoft.Build.Engine.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_2_0/Microsoft.Build.Engine.dll</library_output>
     <project dir="class/Microsoft.Build.Engine" library="Microsoft.Build.Engine-tests-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -r:./../../class/lib/net_2_0/Microsoft.Build.Engine.dll /r:Microsoft.Build.Framework.dll /r:Microsoft.Build.Utilities.dll /r:System.Xml.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_2_0/Microsoft.Build.Engine.dll /r:Microsoft.Build.Framework.dll /r:Microsoft.Build.Utilities.dll /r:System.Xml.dll</flags>
       <output>Microsoft.Build.Engine_test_net_2_0.dll</output>
       <built_sources></built_sources>
       <library_output>Microsoft.Build.Engine_test_net_2_0.dll</library_output>
     <project dir="class/Microsoft.Build.Tasks" library="Microsoft.Build.Tasks-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig /r:mscorlib.dll /r:System.dll /r:System.Core.dll /r:System.Xml.dll /r:System.Windows.Forms.dll /r:Microsoft.Build.Utilities.dll /r:Microsoft.Build.Framework.dll /r:Microsoft.Build.Engine.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig /r:mscorlib.dll /r:System.dll /r:System.Core.dll /r:System.Xml.dll /r:System.Windows.Forms.dll /r:Microsoft.Build.Utilities.dll /r:Microsoft.Build.Framework.dll /r:Microsoft.Build.Engine.dll</flags>
       <output>Microsoft.Build.Tasks.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_2_0/Microsoft.Build.Tasks.dll</library_output>
     <project dir="class/Microsoft.Build.Tasks" library="Microsoft.Build.Tasks-tests-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -r:./../../class/lib/net_2_0/Microsoft.Build.Tasks.dll /r:Microsoft.Build.Engine.dll /r:Microsoft.Build.Framework.dll /r:Microsoft.Build.Utilities.dll /r:System.Core.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_2_0/Microsoft.Build.Tasks.dll /r:Microsoft.Build.Engine.dll /r:Microsoft.Build.Framework.dll /r:Microsoft.Build.Utilities.dll /r:System.Core.dll</flags>
       <output>Microsoft.Build.Tasks_test_net_2_0.dll</output>
       <built_sources></built_sources>
       <library_output>Microsoft.Build.Tasks_test_net_2_0.dll</library_output>
     <project dir="class/System.Xml.Linq" library="System.Xml.Linq-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig -r:System.dll -r:System.Core.dll -r:System.Xml.dll -d:NET_3_5 -nowarn:1720</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig -r:System.dll -r:System.Core.dll -r:System.Xml.dll -d:NET_3_5 -nowarn:1720</flags>
       <output>System.Xml.Linq.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_2_0/System.Xml.Linq.dll</library_output>
     <project dir="class/System.Xml.Linq" library="System.Xml.Linq-tests-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -r:./../../class/lib/net_2_0/System.Xml.Linq.dll -r:System.dll -r:System.Core.dll -r:System.Xml.dll -d:NET_3_5 -nowarn:1720</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_2_0/System.Xml.Linq.dll -r:System.dll -r:System.Core.dll -r:System.Xml.dll -d:NET_3_5 -nowarn:1720</flags>
       <output>System.Xml.Linq_test_net_2_0.dll</output>
       <built_sources></built_sources>
       <library_output>System.Xml.Linq_test_net_2_0.dll</library_output>
     <project dir="class/System.Runtime.Serialization" library="System.Runtime.Serialization-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig /nowarn:168,169,219,414 /r:System.dll /r:System.Xml.dll /r:System.Core.dll /resource:resources/mstypes.schema /d:NET_3_0 /r:System.Data.dll /r:System.Configuration.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig /nowarn:168,169,219,414 /r:System.dll /r:System.Xml.dll /r:System.Core.dll /resource:resources/mstypes.schema /d:NET_3_0 /r:System.Data.dll /r:System.Configuration.dll</flags>
       <output>System.Runtime.Serialization.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_2_0/System.Runtime.Serialization.dll</library_output>
     <project dir="class/System.Runtime.Serialization" library="System.Runtime.Serialization-tests-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -r:./../../class/lib/net_2_0/System.Runtime.Serialization.dll /nowarn:168,169,219,414 /r:System.dll /r:System.Xml.dll /r:System.Core.dll /resource:resources/mstypes.schema /d:NET_3_0 /r:System.Data.dll /r:System.Configuration.dll /r:System.ServiceModel.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_2_0/System.Runtime.Serialization.dll /nowarn:168,169,219,414 /r:System.dll /r:System.Xml.dll /r:System.Core.dll /resource:resources/mstypes.schema /d:NET_3_0 /r:System.Data.dll /r:System.Configuration.dll /r:System.ServiceModel.dll</flags>
       <output>System.Runtime.Serialization_test_net_2_0.dll</output>
       <built_sources></built_sources>
       <library_output>System.Runtime.Serialization_test_net_2_0.dll</library_output>
     <project dir="class/System.Data.DataSetExtensions" library="System.Data.DataSetExtensions-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig -r:mscorlib.dll -r:System.Core.dll -r:System.dll -r:System.Data.dll -r:System.Xml.dll -r:System.Web.dll -d:NET_3_5 -nowarn:1720</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig -r:mscorlib.dll -r:System.Core.dll -r:System.dll -r:System.Data.dll -r:System.Xml.dll -r:System.Web.dll -d:NET_3_5 -nowarn:1720</flags>
       <output>System.Data.DataSetExtensions.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_2_0/System.Data.DataSetExtensions.dll</library_output>
     <project dir="class/System.Data.DataSetExtensions" library="System.Data.DataSetExtensions-tests-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -r:./../../class/lib/net_2_0/System.Data.DataSetExtensions.dll -r:mscorlib.dll -r:System.Core.dll -r:System.dll -r:System.Data.dll -r:System.Xml.dll -r:System.Web.dll -d:NET_3_5 -nowarn:1720 -doc:System.Data.DataSetExtensions_test_net_2_0.xml -nowarn:219 -nowarn:169</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_2_0/System.Data.DataSetExtensions.dll -r:mscorlib.dll -r:System.Core.dll -r:System.dll -r:System.Data.dll -r:System.Xml.dll -r:System.Web.dll -d:NET_3_5 -nowarn:1720 -doc:System.Data.DataSetExtensions_test_net_2_0.xml -nowarn:219 -nowarn:169</flags>
       <output>System.Data.DataSetExtensions_test_net_2_0.dll</output>
       <built_sources></built_sources>
       <library_output>System.Data.DataSetExtensions_test_net_2_0.dll</library_output>
     <project dir="class/System.Data.Linq" library="System.Data.Linq-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig /r:System.dll /r:System.Core.dll /r:System.Xml.dll /r:System.Data.dll /r:System.Runtime.Serialization.dll /resource:./src/DbLinq/Schema/Dbml/DbmlSchema.xsd,DbLinq.Schema.Dbml.DbmlSchema.xsd /d:MONO_STRICT /d:MONO_DEPLOY -warn:1 -d:NET_3_5 -nowarn:1720</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig /r:System.dll /r:System.Core.dll /r:System.Xml.dll /r:System.Data.dll /r:System.Runtime.Serialization.dll /resource:./src/DbLinq/Schema/Dbml/DbmlSchema.xsd,DbLinq.Schema.Dbml.DbmlSchema.xsd /d:MONO_STRICT /d:MONO_DEPLOY -warn:1 -d:NET_3_5 -nowarn:1720</flags>
       <output>System.Data.Linq.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_2_0/System.Data.Linq.dll</library_output>
     <project dir="class/System.Data.Linq" library="System.Data.Linq-tests-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -r:./../../class/lib/net_2_0/System.Data.Linq.dll /r:System.dll /r:System.Core.dll /r:System.Xml.dll /r:System.Data.dll /r:System.Runtime.Serialization.dll /resource:./src/DbLinq/Schema/Dbml/DbmlSchema.xsd,DbLinq.Schema.Dbml.DbmlSchema.xsd /d:MONO_STRICT /d:MONO_DEPLOY -warn:1 -d:NET_3_5 -nowarn:1720</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_2_0/System.Data.Linq.dll /r:System.dll /r:System.Core.dll /r:System.Xml.dll /r:System.Data.dll /r:System.Runtime.Serialization.dll /resource:./src/DbLinq/Schema/Dbml/DbmlSchema.xsd,DbLinq.Schema.Dbml.DbmlSchema.xsd /d:MONO_STRICT /d:MONO_DEPLOY -warn:1 -d:NET_3_5 -nowarn:1720</flags>
       <output>System.Data.Linq_test_net_2_0.dll</output>
       <built_sources></built_sources>
       <library_output>System.Data.Linq_test_net_2_0.dll</library_output>
     <project dir="class/System.Web" library="System.Web-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig -unsafe -nowarn:612,618 -r:mscorlib.dll -r:System.dll -r:System.Drawing.dll -r:System.Data.dll -r:System.Xml.dll -r:System.EnterpriseServices.dll -d:INSIDE_SYSTEM_WEB -nowarn:618 -r:System.Configuration.dll -r:Mono.Data.Sqlite.dll /resource:resources/TranslationResources.resources /resource:resources/WebUIValidation.js /resource:resources/folder.gif /resource:resources/file.gif /resource:resources/computer.gif /resource:resources/arrow_minus.gif /resource:resources/arrow_noexpand.gif /resource:resources/arrow_plus.gif /resource:resources/arrow_up.gif /resource:resources/arrow_down.gif /resource:resources/box_full.gif /resource:resources/box_empty.gif /resource:resources/box_minus.gif /resource:resources/box_noexpand.gif /resource:resources/box_plus.gif /resource:resources/contact.gif /resource:resources/dot_empty.gif /resource:resources/dot_full.gif /resource:resources/dots.gif /resource:resources/inbox.gif /resource:resources/star_empty.gif /resource:resources/star_full.gif /resource:resources/warning.gif /resource:resources/TreeView_noexpand.gif /resource:resources/TreeView_dash.gif /resource:resources/TreeView_dashminus.gif /resource:resources/TreeView_dashplus.gif /resource:resources/TreeView_i.gif /resource:resources/TreeView_l.gif /resource:resources/TreeView_lminus.gif /resource:resources/TreeView_lplus.gif /resource:resources/TreeView_minus.gif /resource:resources/TreeView_plus.gif /resource:resources/TreeView_r.gif /resource:resources/TreeView_rminus.gif /resource:resources/TreeView_rplus.gif /resource:resources/TreeView_t.gif /resource:resources/TreeView_tminus.gif /resource:resources/TreeView_tplus.gif /resource:resources/transparent.gif /resource:resources/webform.js /resource:resources/WebUIValidation_2.0.js /resource:resources/ErrorTemplateCommon_Top.html /resource:resources/DefaultErrorTemplate_CustomErrorDefault.html /resource:resources/ErrorTemplateCommon_Bottom.html /resource:resources/DefaultErrorTemplate_StandardPage.html /resource:resources/HtmlizedExceptionPage_Top.html /resource:resources/HtmlizedExceptionPage_FileLongSource.html /resource:resources/HtmlizedExceptionPage_FileShortSource.html /resource:resources/HtmlizedExceptionPage_CompilerOutput.html /resource:System.Web.UI.WebControls/GridView.js /resource:System.Web.UI.WebControls/DetailsView.js /resource:System.Web.UI.WebControls/TreeView.js /resource:System.Web.UI.WebControls/Menu.js -define:WEBSERVICES_DEP -r:System.Web.Services.dll -define:MONOWEB_DEP -r:Mono.Web.dll -define:SYSTEMCORE_DEP -r:System.Core.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig -unsafe -nowarn:612,618 -r:mscorlib.dll -r:System.dll -r:System.Drawing.dll -r:System.Data.dll -r:System.Xml.dll -r:System.EnterpriseServices.dll -d:INSIDE_SYSTEM_WEB -nowarn:618 -r:System.Configuration.dll -r:Mono.Data.Sqlite.dll /resource:resources/TranslationResources.resources /resource:resources/WebUIValidation.js /resource:resources/folder.gif /resource:resources/file.gif /resource:resources/computer.gif /resource:resources/arrow_minus.gif /resource:resources/arrow_noexpand.gif /resource:resources/arrow_plus.gif /resource:resources/arrow_up.gif /resource:resources/arrow_down.gif /resource:resources/box_full.gif /resource:resources/box_empty.gif /resource:resources/box_minus.gif /resource:resources/box_noexpand.gif /resource:resources/box_plus.gif /resource:resources/contact.gif /resource:resources/dot_empty.gif /resource:resources/dot_full.gif /resource:resources/dots.gif /resource:resources/inbox.gif /resource:resources/star_empty.gif /resource:resources/star_full.gif /resource:resources/warning.gif /resource:resources/TreeView_noexpand.gif /resource:resources/TreeView_dash.gif /resource:resources/TreeView_dashminus.gif /resource:resources/TreeView_dashplus.gif /resource:resources/TreeView_i.gif /resource:resources/TreeView_l.gif /resource:resources/TreeView_lminus.gif /resource:resources/TreeView_lplus.gif /resource:resources/TreeView_minus.gif /resource:resources/TreeView_plus.gif /resource:resources/TreeView_r.gif /resource:resources/TreeView_rminus.gif /resource:resources/TreeView_rplus.gif /resource:resources/TreeView_t.gif /resource:resources/TreeView_tminus.gif /resource:resources/TreeView_tplus.gif /resource:resources/transparent.gif /resource:resources/webform.js /resource:resources/WebUIValidation_2.0.js /resource:resources/ErrorTemplateCommon_Top.html /resource:resources/DefaultErrorTemplate_CustomErrorDefault.html /resource:resources/ErrorTemplateCommon_Bottom.html /resource:resources/DefaultErrorTemplate_StandardPage.html /resource:resources/HtmlizedExceptionPage_Top.html /resource:resources/HtmlizedExceptionPage_FileLongSource.html /resource:resources/HtmlizedExceptionPage_FileShortSource.html /resource:resources/HtmlizedExceptionPage_CompilerOutput.html /resource:System.Web.UI.WebControls/GridView.js /resource:System.Web.UI.WebControls/DetailsView.js /resource:System.Web.UI.WebControls/TreeView.js /resource:System.Web.UI.WebControls/Menu.js -define:WEBSERVICES_DEP -r:System.Web.Services.dll -define:MONOWEB_DEP -r:Mono.Web.dll -define:SYSTEMCORE_DEP -r:System.Core.dll</flags>
       <output>System.Web.dll</output>
       <built_sources>System.Web/UplevelHelper.cs</built_sources>
       <library_output>./../../class/lib/net_2_0/tmp/System.Web.dll</library_output>
     <project dir="class/System.Web" library="System.Web-tests-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -r:./../../class/lib/net_2_0/System.Web.dll -unsafe -nowarn:612,618 -r:mscorlib.dll -r:System.dll -r:System.Drawing.dll -r:System.Data.dll -r:System.Xml.dll -r:System.EnterpriseServices.dll -d:INSIDE_SYSTEM_WEB -nowarn:618 -r:System.Configuration.dll -r:Mono.Data.Sqlite.dll /resource:resources/TranslationResources.resources /resource:resources/WebUIValidation.js /resource:resources/folder.gif /resource:resources/file.gif /resource:resources/computer.gif /resource:resources/arrow_minus.gif /resource:resources/arrow_noexpand.gif /resource:resources/arrow_plus.gif /resource:resources/arrow_up.gif /resource:resources/arrow_down.gif /resource:resources/box_full.gif /resource:resources/box_empty.gif /resource:resources/box_minus.gif /resource:resources/box_noexpand.gif /resource:resources/box_plus.gif /resource:resources/contact.gif /resource:resources/dot_empty.gif /resource:resources/dot_full.gif /resource:resources/dots.gif /resource:resources/inbox.gif /resource:resources/star_empty.gif /resource:resources/star_full.gif /resource:resources/warning.gif /resource:resources/TreeView_noexpand.gif /resource:resources/TreeView_dash.gif /resource:resources/TreeView_dashminus.gif /resource:resources/TreeView_dashplus.gif /resource:resources/TreeView_i.gif /resource:resources/TreeView_l.gif /resource:resources/TreeView_lminus.gif /resource:resources/TreeView_lplus.gif /resource:resources/TreeView_minus.gif /resource:resources/TreeView_plus.gif /resource:resources/TreeView_r.gif /resource:resources/TreeView_rminus.gif /resource:resources/TreeView_rplus.gif /resource:resources/TreeView_t.gif /resource:resources/TreeView_tminus.gif /resource:resources/TreeView_tplus.gif /resource:resources/transparent.gif /resource:resources/webform.js /resource:resources/WebUIValidation_2.0.js /resource:resources/ErrorTemplateCommon_Top.html /resource:resources/DefaultErrorTemplate_CustomErrorDefault.html /resource:resources/ErrorTemplateCommon_Bottom.html /resource:resources/DefaultErrorTemplate_StandardPage.html /resource:resources/HtmlizedExceptionPage_Top.html /resource:resources/HtmlizedExceptionPage_FileLongSource.html /resource:resources/HtmlizedExceptionPage_FileShortSource.html /resource:resources/HtmlizedExceptionPage_CompilerOutput.html /resource:System.Web.UI.WebControls/GridView.js /resource:System.Web.UI.WebControls/DetailsView.js /resource:System.Web.UI.WebControls/TreeView.js /resource:System.Web.UI.WebControls/Menu.js -define:WEBSERVICES_DEP -r:System.Web.Services.dll -define:MONOWEB_DEP -r:Mono.Web.dll -define:SYSTEMCORE_DEP -r:System.Core.dll -doc:System.Web_test_net_2_0.xml -nowarn:219,169,1591 -r:SystemWebTestShim.dll /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/Global.asax /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/My.ashx /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/My.master /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/MyPage.aspx /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/MyPage.aspx.cs /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/MyPageWithMaster.aspx /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/Web.mono.config /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/Web.mono.config.4.0 /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/sub_map_01.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_01.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_02.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_03.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_04.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_05.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_06.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_07.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_08.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_09.sitemap /resource:Test/mainsoft/NunitWebResources/menuclass.aspx /resource:Test/mainsoft/NunitWebResources/FormView.aspx /resource:Test/mainsoft/NunitWebResources/PostBackMenuTest.aspx /resource:Test/mainsoft/NunitWebResources/PageWithStyleSheet.aspx /resource:Test/mainsoft/NunitWebResources/PageWithTheme.aspx /resource:Test/mainsoft/NunitWebResources/ResolveUrl.ascx /resource:Test/mainsoft/NunitWebResources/ResolveUrl.aspx /resource:Test/mainsoft/NunitWebResources/RunTimeSetTheme.aspx /resource:Test/mainsoft/NunitWebResources/ReadOnlyPropertyBind.aspx /resource:Test/mainsoft/NunitWebResources/ReadOnlyPropertyControl.ascx /resource:Test/mainsoft/NunitWebResources/Theme1.skin /resource:Test/mainsoft/NunitWebResources/Theme2.skin /resource:Test/mainsoft/NunitWebResources/UrlProperty.aspx /resource:Test/mainsoft/NunitWebResources/UrlProperty.ascx /resource:Test/mainsoft/NunitWebResources/UrlProperty.ascx.cs /resource:Test/mainsoft/NunitWebResources/Web.sitemap /resource:Test/mainsoft/NunitWebResources/WizardTest.skin /resource:Test/mainsoft/NunitWebResources/FooterTemplateTest.aspx /resource:Test/mainsoft/NunitWebResources/DataGrid.aspx /resource:Test/mainsoft/NunitWebResources/DetailsViewTemplates.aspx /resource:Test/mainsoft/NunitWebResources/DetailsViewTemplates_2.aspx /resource:Test/mainsoft/NunitWebResources/DetailsViewTemplates_3.aspx /resource:Test/mainsoft/NunitWebResources/DetailsViewDataActions.aspx /resource:Test/mainsoft/NunitWebResources/DetailsViewProperties1.aspx /resource:Test/mainsoft/NunitWebResources/Bluehills.jpg /resource:Test/mainsoft/NunitWebResources/FormViewTest1.aspx /resource:Test/mainsoft/NunitWebResources/FormViewTest1_2.aspx /resource:Test/mainsoft/NunitWebResources/FormViewTest1_3.aspx /resource:Test/mainsoft/NunitWebResources/FormViewTest1_4.aspx /resource:Test/mainsoft/NunitWebResources/FormViewInsertEditDelete.aspx /resource:Test/mainsoft/NunitWebResources/GridViewUpdate.aspx /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest.xml /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest.xsl /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest1.aspx /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest2.aspx /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest3.aspx /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest4.aspx /resource:Test/mainsoft/NunitWebResources/LoginViewTest1.aspx /resource:Test/mainsoft/NunitWebResources/WebControl.config /resource:Test/mainsoft/NunitWebResources/WebLogin.config /resource:Test/mainsoft/NunitWebResources/CallbackTest1.aspx /resource:Test/mainsoft/NunitWebResources/CallbackTest2.aspx /resource:Test/mainsoft/NunitWebResources/EventValidationTest2.aspx /resource:Test/mainsoft/NunitWebResources/EventValidationTest1.aspx /resource:Test/mainsoft/NunitWebResources/ClientScript.js /resource:Test/mainsoft/NunitWebResources/EvalTest.aspx /resource:Test/mainsoft/NunitWebResources/TemplateUserControl.ascx /resource:Test/mainsoft/NunitWebResources/WebMapping.config /resource:Test/mainsoft/NunitWebResources/Mapping.aspx /resource:Test/mainsoft/NunitWebResources/Mapping1.aspx /resource:Test/mainsoft/NunitWebResources/CrossPagePosting1.aspx /resource:Test/mainsoft/NunitWebResources/CrossPagePosting2.aspx /resource:Test/mainsoft/NunitWebResources/MyDerived.master /resource:Test/mainsoft/NunitWebResources/MyPageWithDerivedMaster.aspx /resource:Test/mainsoft/NunitWebResources/MasterTypeTest1.aspx /resource:Test/mainsoft/NunitWebResources/MasterTypeTest2.aspx /resource:Test/mainsoft/NunitWebResources/PageLifecycleTest.aspx /resource:Test/mainsoft/NunitWebResources/PageValidationTest.aspx /resource:Test/mainsoft/NunitWebResources/AsyncPage.aspx /resource:Test/mainsoft/NunitWebResources/PageCultureTest.aspx /resource:Test/mainsoft/NunitWebResources/adapters.browser /resource:Test/mainsoft/NunitWebResources/NoEventValidation.aspx /resource:Test/mainsoft/NunitWebResources/ListControlPage.aspx /resource:Test/mainsoft/NunitWebResources/TextBoxTestlPage.aspx /resource:Test/mainsoft/NunitWebResources/ClearErrorOnError.aspx /resource:Test/mainsoft/NunitWebResources/RedirectOnError.aspx /resource:Test/mainsoft/NunitWebResources/TestCapability.browser /resource:Test/mainsoft/NunitWebResources/PageWithAdapter.aspx /resource:Test/mainsoft/NunitWebResources/InvalidPropertyBind1.aspx /resource:Test/mainsoft/NunitWebResources/InvalidPropertyBind2.aspx /resource:Test/mainsoft/NunitWebResources/InvalidPropertyBind3.aspx /resource:Test/mainsoft/NunitWebResources/InvalidPropertyBind4.aspx /resource:Test/mainsoft/NunitWebResources/ValidPropertyBind1.aspx /resource:Test/mainsoft/NunitWebResources/ValidPropertyBind2.aspx /resource:Test/mainsoft/NunitWebResources/ValidPropertyBind3.aspx /resource:Test/mainsoft/NunitWebResources/ValidPropertyBind4.aspx /resource:Test/mainsoft/NunitWebResources/ValidPropertyBind5.aspx /resource:Test/mainsoft/NunitWebResources/ReadWritePropertyControl.ascx /resource:Test/mainsoft/MainsoftWebTest/nunitweb_config.xml /resource:Test/mainsoft/NunitWebResources/TemplateControlParsingTest.aspx /resource:Test/mainsoft/NunitWebResources/ContentPlaceHolderInTemplate.aspx /resource:Test/mainsoft/NunitWebResources/ContentPlaceHolderInTemplate.master /resource:Test/mainsoft/NunitWebResources/MissingMasterFile.aspx /resource:Test/mainsoft/NunitWebResources/CustomSectionEmptyCollection.aspx /resource:Test/mainsoft/NunitWebResources/NoDoubleOnInitOnRemoveAdd.aspx /resource:Test/mainsoft/NunitWebResources/NoDoubleOnInitOnRemoveAdd.aspx.cs /resource:Test/mainsoft/NunitWebResources/LoginDisplayRememberMe.aspx /resource:Test/mainsoft/NunitWebResources/NoBindForMethodsWithBindInName.aspx /resource:Test/mainsoft/NunitWebResources/LinkInHeadWithEmbeddedExpression.aspx /resource:Test/mainsoft/NunitWebResources/ExpressionInListControl.aspx /resource:Test/mainsoft/NunitWebResources/ServerSideControlsInScriptBlock.aspx /resource:Test/mainsoft/NunitWebResources/ServerControlInClientSideComment.aspx /resource:Test/mainsoft/NunitWebResources/PreprocessorDirectivesInMarkup.aspx /resource:Test/mainsoft/NunitWebResources/UnquotedAngleBrackets.aspx /resource:Test/mainsoft/NunitWebResources/FullTagsInText.aspx /resource:Test/mainsoft/NunitWebResources/TagsExpressionsAndCommentsInText.aspx /resource:Test/mainsoft/NunitWebResources/NewlineInCodeExpression.aspx /resource:Test/mainsoft/NunitWebResources/DuplicateControlsInClientComment.aspx /resource:Test/mainsoft/NunitWebResources/TagsNestedInClientTag.aspx /resource:Test/mainsoft/NunitWebResources/ConditionalClientComments.aspx /resource:Test/mainsoft/NunitWebResources/OneLetterIdentifierInCodeRender.aspx /resource:Test/mainsoft/NunitWebResources/GlobalResourcesLocalization.aspx /resource:Test/mainsoft/NunitWebResources/TableSections_Bug551666.aspx /resource:Test/mainsoft/NunitWebResources/TableSections_Bug551666.aspx.cs /resource:Test/mainsoft/NunitWebResources/NestedParserFileText.aspx /resource:Test/mainsoft/NunitWebResources/StateFormatter_CorrectConverter.aspx /resource:Test/mainsoft/NunitWebResources/StateFormatter_CollectionConverter.aspx /resource:Test/mainsoft/NunitWebResources/StateFormatter_CollectionConverter.aspx.cs /resource:Test/mainsoft/NunitWebResources/ChangePasswordContainer_FindControl.aspx /resource:Test/mainsoft/NunitWebResources/TagWithExpressionWithinAttribute.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxList_Bug377703_1.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxList_Bug377703_2.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxList_Bug578770.aspx /resource:Test/mainsoft/NunitWebResources/EnumConverter_Bug578586.aspx /resource:Test/mainsoft/NunitWebResources/ButtonColor_Bug325489.aspx /resource:Test/mainsoft/NunitWebResources/SqlDataSource_OnInit_Bug572781.aspx /resource:Test/mainsoft/NunitWebResources/FormViewPagerVisibility.aspx /resource:Test/mainsoft/NunitWebResources/OverridenControlsPropertyAndPostBack_Bug594238.aspx /resource:Test/mainsoft/NunitWebResources/GlobalizationEncodingName.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_0.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_1.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_2.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_5.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_6.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_7.aspx /resource:Test/mainsoft/NunitWebResources/GridView_Bug595567.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxList_Bug600415.aspx /resource:Test/mainsoft/NunitWebResources/BoundField_Bug646505.aspx /resource:Test/mainsoft/NunitWebResources/BoundField_Bug646505.aspx.cs /resource:Test/mainsoft/NunitWebResources/HtmlTitleCodeRender_Bug662918.aspx /resource:Test/mainsoft/NunitWebResources/App_Code/EnumConverterControl.cs,App_Code/EnumConverterControl.cs /resource:Test/mainsoft/NunitWebResources/App_Code/MyContainer.cs,App_Code/MyContainer.cs /resource:Test/mainsoft/NunitWebResources/App_Code/CustomCheckBoxColumn.cs,App_Code/CustomCheckBoxColumn.cs /resource:Test/mainsoft/NunitWebResources/App_GlobalResources/Common.resx,App_GlobalResources/Common.resx /resource:Test/mainsoft/NunitWebResources/App_GlobalResources/Common.fr-FR.resx,App_GlobalResources/Common.fr-FR.resx /resource:Test/mainsoft/NunitWebResources/App_GlobalResources/Resource1.resx,App_GlobalResources/Resource1.resx -r:System.Web.Extensions.dll -d:TEST</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_2_0/System.Web.dll -unsafe -nowarn:612,618 -r:mscorlib.dll -r:System.dll -r:System.Drawing.dll -r:System.Data.dll -r:System.Xml.dll -r:System.EnterpriseServices.dll -d:INSIDE_SYSTEM_WEB -nowarn:618 -r:System.Configuration.dll -r:Mono.Data.Sqlite.dll /resource:resources/TranslationResources.resources /resource:resources/WebUIValidation.js /resource:resources/folder.gif /resource:resources/file.gif /resource:resources/computer.gif /resource:resources/arrow_minus.gif /resource:resources/arrow_noexpand.gif /resource:resources/arrow_plus.gif /resource:resources/arrow_up.gif /resource:resources/arrow_down.gif /resource:resources/box_full.gif /resource:resources/box_empty.gif /resource:resources/box_minus.gif /resource:resources/box_noexpand.gif /resource:resources/box_plus.gif /resource:resources/contact.gif /resource:resources/dot_empty.gif /resource:resources/dot_full.gif /resource:resources/dots.gif /resource:resources/inbox.gif /resource:resources/star_empty.gif /resource:resources/star_full.gif /resource:resources/warning.gif /resource:resources/TreeView_noexpand.gif /resource:resources/TreeView_dash.gif /resource:resources/TreeView_dashminus.gif /resource:resources/TreeView_dashplus.gif /resource:resources/TreeView_i.gif /resource:resources/TreeView_l.gif /resource:resources/TreeView_lminus.gif /resource:resources/TreeView_lplus.gif /resource:resources/TreeView_minus.gif /resource:resources/TreeView_plus.gif /resource:resources/TreeView_r.gif /resource:resources/TreeView_rminus.gif /resource:resources/TreeView_rplus.gif /resource:resources/TreeView_t.gif /resource:resources/TreeView_tminus.gif /resource:resources/TreeView_tplus.gif /resource:resources/transparent.gif /resource:resources/webform.js /resource:resources/WebUIValidation_2.0.js /resource:resources/ErrorTemplateCommon_Top.html /resource:resources/DefaultErrorTemplate_CustomErrorDefault.html /resource:resources/ErrorTemplateCommon_Bottom.html /resource:resources/DefaultErrorTemplate_StandardPage.html /resource:resources/HtmlizedExceptionPage_Top.html /resource:resources/HtmlizedExceptionPage_FileLongSource.html /resource:resources/HtmlizedExceptionPage_FileShortSource.html /resource:resources/HtmlizedExceptionPage_CompilerOutput.html /resource:System.Web.UI.WebControls/GridView.js /resource:System.Web.UI.WebControls/DetailsView.js /resource:System.Web.UI.WebControls/TreeView.js /resource:System.Web.UI.WebControls/Menu.js -define:WEBSERVICES_DEP -r:System.Web.Services.dll -define:MONOWEB_DEP -r:Mono.Web.dll -define:SYSTEMCORE_DEP -r:System.Core.dll -doc:System.Web_test_net_2_0.xml -nowarn:219,169,1591 -r:SystemWebTestShim.dll /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/Global.asax /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/My.ashx /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/My.master /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/MyPage.aspx /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/MyPage.aspx.cs /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/MyPageWithMaster.aspx /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/Web.mono.config /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/Web.mono.config.4.0 /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/sub_map_01.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_01.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_02.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_03.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_04.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_05.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_06.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_07.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_08.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_09.sitemap /resource:Test/mainsoft/NunitWebResources/menuclass.aspx /resource:Test/mainsoft/NunitWebResources/FormView.aspx /resource:Test/mainsoft/NunitWebResources/PostBackMenuTest.aspx /resource:Test/mainsoft/NunitWebResources/PageWithStyleSheet.aspx /resource:Test/mainsoft/NunitWebResources/PageWithTheme.aspx /resource:Test/mainsoft/NunitWebResources/ResolveUrl.ascx /resource:Test/mainsoft/NunitWebResources/ResolveUrl.aspx /resource:Test/mainsoft/NunitWebResources/RunTimeSetTheme.aspx /resource:Test/mainsoft/NunitWebResources/ReadOnlyPropertyBind.aspx /resource:Test/mainsoft/NunitWebResources/ReadOnlyPropertyControl.ascx /resource:Test/mainsoft/NunitWebResources/Theme1.skin /resource:Test/mainsoft/NunitWebResources/Theme2.skin /resource:Test/mainsoft/NunitWebResources/UrlProperty.aspx /resource:Test/mainsoft/NunitWebResources/UrlProperty.ascx /resource:Test/mainsoft/NunitWebResources/UrlProperty.ascx.cs /resource:Test/mainsoft/NunitWebResources/Web.sitemap /resource:Test/mainsoft/NunitWebResources/WizardTest.skin /resource:Test/mainsoft/NunitWebResources/FooterTemplateTest.aspx /resource:Test/mainsoft/NunitWebResources/DataGrid.aspx /resource:Test/mainsoft/NunitWebResources/DetailsViewTemplates.aspx /resource:Test/mainsoft/NunitWebResources/DetailsViewTemplates_2.aspx /resource:Test/mainsoft/NunitWebResources/DetailsViewTemplates_3.aspx /resource:Test/mainsoft/NunitWebResources/DetailsViewDataActions.aspx /resource:Test/mainsoft/NunitWebResources/DetailsViewProperties1.aspx /resource:Test/mainsoft/NunitWebResources/Bluehills.jpg /resource:Test/mainsoft/NunitWebResources/FormViewTest1.aspx /resource:Test/mainsoft/NunitWebResources/FormViewTest1_2.aspx /resource:Test/mainsoft/NunitWebResources/FormViewTest1_3.aspx /resource:Test/mainsoft/NunitWebResources/FormViewTest1_4.aspx /resource:Test/mainsoft/NunitWebResources/FormViewInsertEditDelete.aspx /resource:Test/mainsoft/NunitWebResources/GridViewUpdate.aspx /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest.xml /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest.xsl /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest1.aspx /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest2.aspx /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest3.aspx /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest4.aspx /resource:Test/mainsoft/NunitWebResources/LoginViewTest1.aspx /resource:Test/mainsoft/NunitWebResources/WebControl.config /resource:Test/mainsoft/NunitWebResources/WebLogin.config /resource:Test/mainsoft/NunitWebResources/CallbackTest1.aspx /resource:Test/mainsoft/NunitWebResources/CallbackTest2.aspx /resource:Test/mainsoft/NunitWebResources/EventValidationTest2.aspx /resource:Test/mainsoft/NunitWebResources/EventValidationTest1.aspx /resource:Test/mainsoft/NunitWebResources/ClientScript.js /resource:Test/mainsoft/NunitWebResources/EvalTest.aspx /resource:Test/mainsoft/NunitWebResources/TemplateUserControl.ascx /resource:Test/mainsoft/NunitWebResources/WebMapping.config /resource:Test/mainsoft/NunitWebResources/Mapping.aspx /resource:Test/mainsoft/NunitWebResources/Mapping1.aspx /resource:Test/mainsoft/NunitWebResources/CrossPagePosting1.aspx /resource:Test/mainsoft/NunitWebResources/CrossPagePosting2.aspx /resource:Test/mainsoft/NunitWebResources/MyDerived.master /resource:Test/mainsoft/NunitWebResources/MyPageWithDerivedMaster.aspx /resource:Test/mainsoft/NunitWebResources/MasterTypeTest1.aspx /resource:Test/mainsoft/NunitWebResources/MasterTypeTest2.aspx /resource:Test/mainsoft/NunitWebResources/PageLifecycleTest.aspx /resource:Test/mainsoft/NunitWebResources/PageValidationTest.aspx /resource:Test/mainsoft/NunitWebResources/AsyncPage.aspx /resource:Test/mainsoft/NunitWebResources/PageCultureTest.aspx /resource:Test/mainsoft/NunitWebResources/adapters.browser /resource:Test/mainsoft/NunitWebResources/NoEventValidation.aspx /resource:Test/mainsoft/NunitWebResources/ListControlPage.aspx /resource:Test/mainsoft/NunitWebResources/TextBoxTestlPage.aspx /resource:Test/mainsoft/NunitWebResources/ClearErrorOnError.aspx /resource:Test/mainsoft/NunitWebResources/RedirectOnError.aspx /resource:Test/mainsoft/NunitWebResources/TestCapability.browser /resource:Test/mainsoft/NunitWebResources/PageWithAdapter.aspx /resource:Test/mainsoft/NunitWebResources/InvalidPropertyBind1.aspx /resource:Test/mainsoft/NunitWebResources/InvalidPropertyBind2.aspx /resource:Test/mainsoft/NunitWebResources/InvalidPropertyBind3.aspx /resource:Test/mainsoft/NunitWebResources/InvalidPropertyBind4.aspx /resource:Test/mainsoft/NunitWebResources/ValidPropertyBind1.aspx /resource:Test/mainsoft/NunitWebResources/ValidPropertyBind2.aspx /resource:Test/mainsoft/NunitWebResources/ValidPropertyBind3.aspx /resource:Test/mainsoft/NunitWebResources/ValidPropertyBind4.aspx /resource:Test/mainsoft/NunitWebResources/ValidPropertyBind5.aspx /resource:Test/mainsoft/NunitWebResources/ReadWritePropertyControl.ascx /resource:Test/mainsoft/MainsoftWebTest/nunitweb_config.xml /resource:Test/mainsoft/NunitWebResources/TemplateControlParsingTest.aspx /resource:Test/mainsoft/NunitWebResources/ContentPlaceHolderInTemplate.aspx /resource:Test/mainsoft/NunitWebResources/ContentPlaceHolderInTemplate.master /resource:Test/mainsoft/NunitWebResources/MissingMasterFile.aspx /resource:Test/mainsoft/NunitWebResources/CustomSectionEmptyCollection.aspx /resource:Test/mainsoft/NunitWebResources/NoDoubleOnInitOnRemoveAdd.aspx /resource:Test/mainsoft/NunitWebResources/NoDoubleOnInitOnRemoveAdd.aspx.cs /resource:Test/mainsoft/NunitWebResources/LoginDisplayRememberMe.aspx /resource:Test/mainsoft/NunitWebResources/NoBindForMethodsWithBindInName.aspx /resource:Test/mainsoft/NunitWebResources/LinkInHeadWithEmbeddedExpression.aspx /resource:Test/mainsoft/NunitWebResources/ExpressionInListControl.aspx /resource:Test/mainsoft/NunitWebResources/ServerSideControlsInScriptBlock.aspx /resource:Test/mainsoft/NunitWebResources/ServerControlInClientSideComment.aspx /resource:Test/mainsoft/NunitWebResources/PreprocessorDirectivesInMarkup.aspx /resource:Test/mainsoft/NunitWebResources/UnquotedAngleBrackets.aspx /resource:Test/mainsoft/NunitWebResources/FullTagsInText.aspx /resource:Test/mainsoft/NunitWebResources/TagsExpressionsAndCommentsInText.aspx /resource:Test/mainsoft/NunitWebResources/NewlineInCodeExpression.aspx /resource:Test/mainsoft/NunitWebResources/DuplicateControlsInClientComment.aspx /resource:Test/mainsoft/NunitWebResources/TagsNestedInClientTag.aspx /resource:Test/mainsoft/NunitWebResources/ConditionalClientComments.aspx /resource:Test/mainsoft/NunitWebResources/OneLetterIdentifierInCodeRender.aspx /resource:Test/mainsoft/NunitWebResources/GlobalResourcesLocalization.aspx /resource:Test/mainsoft/NunitWebResources/TableSections_Bug551666.aspx /resource:Test/mainsoft/NunitWebResources/TableSections_Bug551666.aspx.cs /resource:Test/mainsoft/NunitWebResources/NestedParserFileText.aspx /resource:Test/mainsoft/NunitWebResources/StateFormatter_CorrectConverter.aspx /resource:Test/mainsoft/NunitWebResources/StateFormatter_CollectionConverter.aspx /resource:Test/mainsoft/NunitWebResources/StateFormatter_CollectionConverter.aspx.cs /resource:Test/mainsoft/NunitWebResources/ChangePasswordContainer_FindControl.aspx /resource:Test/mainsoft/NunitWebResources/TagWithExpressionWithinAttribute.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxList_Bug377703_1.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxList_Bug377703_2.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxList_Bug578770.aspx /resource:Test/mainsoft/NunitWebResources/EnumConverter_Bug578586.aspx /resource:Test/mainsoft/NunitWebResources/ButtonColor_Bug325489.aspx /resource:Test/mainsoft/NunitWebResources/SqlDataSource_OnInit_Bug572781.aspx /resource:Test/mainsoft/NunitWebResources/FormViewPagerVisibility.aspx /resource:Test/mainsoft/NunitWebResources/OverridenControlsPropertyAndPostBack_Bug594238.aspx /resource:Test/mainsoft/NunitWebResources/GlobalizationEncodingName.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_0.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_1.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_2.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_5.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_6.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_7.aspx /resource:Test/mainsoft/NunitWebResources/GridView_Bug595567.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxList_Bug600415.aspx /resource:Test/mainsoft/NunitWebResources/BoundField_Bug646505.aspx /resource:Test/mainsoft/NunitWebResources/BoundField_Bug646505.aspx.cs /resource:Test/mainsoft/NunitWebResources/HtmlTitleCodeRender_Bug662918.aspx /resource:Test/mainsoft/NunitWebResources/App_Code/EnumConverterControl.cs,App_Code/EnumConverterControl.cs /resource:Test/mainsoft/NunitWebResources/App_Code/MyContainer.cs,App_Code/MyContainer.cs /resource:Test/mainsoft/NunitWebResources/App_Code/CustomCheckBoxColumn.cs,App_Code/CustomCheckBoxColumn.cs /resource:Test/mainsoft/NunitWebResources/App_GlobalResources/Common.resx,App_GlobalResources/Common.resx /resource:Test/mainsoft/NunitWebResources/App_GlobalResources/Common.fr-FR.resx,App_GlobalResources/Common.fr-FR.resx /resource:Test/mainsoft/NunitWebResources/App_GlobalResources/Resource1.resx,App_GlobalResources/Resource1.resx -r:System.Web.Extensions.dll -d:TEST</flags>
       <output>System.Web_test_net_2_0.dll</output>
       <built_sources>System.Web/UplevelHelper.cs</built_sources>
       <library_output>System.Web_test_net_2_0.dll</library_output>
     <project dir="class/System.Web.Abstractions" library="System.Web.Abstractions-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig /r:System.dll /r:System.Core.dll /r:System.Web.dll -d:NET_3_5</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig /r:System.dll /r:System.Core.dll /r:System.Web.dll -d:NET_3_5</flags>
       <output>System.Web.Abstractions.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_2_0/System.Web.Abstractions.dll</library_output>
     <project dir="class/System.Web.Abstractions" library="System.Web.Abstractions-tests-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -r:./../../class/lib/net_2_0/System.Web.Abstractions.dll /r:System.dll /r:System.Core.dll /r:System.Web.dll -d:NET_3_5</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_2_0/System.Web.Abstractions.dll /r:System.dll /r:System.Core.dll /r:System.Web.dll -d:NET_3_5</flags>
       <output>System.Web.Abstractions_test_net_2_0.dll</output>
       <built_sources></built_sources>
       <library_output>System.Web.Abstractions_test_net_2_0.dll</library_output>
     <project dir="class/System.Web.Routing" library="System.Web.Routing-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig /r:System.dll /r:System.Core.dll /r:System.Web.dll /r:System.Web.Abstractions.dll -d:NET_3_5 -d:SYSTEMCORE_DEP</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig /r:System.dll /r:System.Core.dll /r:System.Web.dll /r:System.Web.Abstractions.dll -d:NET_3_5 -d:SYSTEMCORE_DEP</flags>
       <output>System.Web.Routing.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_2_0/System.Web.Routing.dll</library_output>
     <project dir="class/System.Web.Routing" library="System.Web.Routing-tests-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -r:./../../class/lib/net_2_0/System.Web.Routing.dll /r:System.dll /r:System.Core.dll /r:System.Web.dll /r:System.Web.Abstractions.dll -d:NET_3_5 -d:SYSTEMCORE_DEP</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_2_0/System.Web.Routing.dll /r:System.dll /r:System.Core.dll /r:System.Web.dll /r:System.Web.Abstractions.dll -d:NET_3_5 -d:SYSTEMCORE_DEP</flags>
       <output>System.Web.Routing_test_net_2_0.dll</output>
       <built_sources></built_sources>
       <library_output>System.Web.Routing_test_net_2_0.dll</library_output>
     <project dir="class/System.IdentityModel" library="System.IdentityModel-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig /d:NET_3_0 /r:System.dll /r:System.Xml.dll /r:System.Security.dll /r:System.Web.dll /r:System.Configuration.dll /r:Mono.Security.dll /r:System.Runtime.Serialization.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig /d:NET_3_0 /r:System.dll /r:System.Xml.dll /r:System.Security.dll /r:System.Web.dll /r:System.Configuration.dll /r:Mono.Security.dll /r:System.Runtime.Serialization.dll</flags>
       <output>System.IdentityModel.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_2_0/System.IdentityModel.dll</library_output>
     <project dir="class/System.IdentityModel" library="System.IdentityModel-tests-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -r:./../../class/lib/net_2_0/System.IdentityModel.dll /d:NET_3_0 /r:System.dll /r:System.Xml.dll /r:System.Security.dll /r:System.Web.dll /r:System.Configuration.dll /r:Mono.Security.dll /r:System.Runtime.Serialization.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_2_0/System.IdentityModel.dll /d:NET_3_0 /r:System.dll /r:System.Xml.dll /r:System.Security.dll /r:System.Web.dll /r:System.Configuration.dll /r:Mono.Security.dll /r:System.Runtime.Serialization.dll</flags>
       <output>System.IdentityModel_test_net_2_0.dll</output>
       <built_sources></built_sources>
       <library_output>System.IdentityModel_test_net_2_0.dll</library_output>
     <project dir="class/System.IdentityModel.Selectors" library="System.IdentityModel.Selectors-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig /d:NET_3_0 /r:System.dll /r:System.Xml.dll /r:System.Security.dll /r:System.Runtime.Serialization.dll /r:System.IdentityModel.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig /d:NET_3_0 /r:System.dll /r:System.Xml.dll /r:System.Security.dll /r:System.Runtime.Serialization.dll /r:System.IdentityModel.dll</flags>
       <output>System.IdentityModel.Selectors.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_2_0/System.IdentityModel.Selectors.dll</library_output>
     <project dir="class/System.ServiceModel" library="System.ServiceModel-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig /nowarn:414,169,67,3005,436,219,618 /unsafe /d:TRACE /r:System.dll /r:System.Xml.dll /r:System.Core.dll /r:System.Runtime.Serialization.dll /resource:resources/WS-Addressing.schema /resource:resources/ws-addr.xsd /d:NET_3_0 /r:System.Configuration.dll /r:System.Data.dll /r:System.Security.dll /r:System.IdentityModel.dll /r:System.IdentityModel.Selectors.dll /r:System.Transactions.dll /r:System.Messaging.dll /r:System.Web.dll /r:System.Web.Services.dll /r:Mono.Security.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig /nowarn:414,169,67,3005,436,219,618 /unsafe /d:TRACE /r:System.dll /r:System.Xml.dll /r:System.Core.dll /r:System.Runtime.Serialization.dll /resource:resources/WS-Addressing.schema /resource:resources/ws-addr.xsd /d:NET_3_0 /r:System.Configuration.dll /r:System.Data.dll /r:System.Security.dll /r:System.IdentityModel.dll /r:System.IdentityModel.Selectors.dll /r:System.Transactions.dll /r:System.Messaging.dll /r:System.Web.dll /r:System.Web.Services.dll /r:Mono.Security.dll</flags>
       <output>System.ServiceModel.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_2_0/System.ServiceModel.dll</library_output>
     <project dir="class/System.ServiceModel" library="System.ServiceModel-tests-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -r:./../../class/lib/net_2_0/System.ServiceModel.dll /nowarn:414,169,67,3005,436,219,618 /unsafe /d:TRACE /r:System.dll /r:System.Xml.dll /r:System.Core.dll /r:System.Runtime.Serialization.dll /resource:resources/WS-Addressing.schema /resource:resources/ws-addr.xsd /d:NET_3_0 /r:System.Configuration.dll /r:System.Data.dll /r:System.Security.dll /r:System.IdentityModel.dll /r:System.IdentityModel.Selectors.dll /r:System.Transactions.dll /r:System.Messaging.dll /r:System.Web.dll /r:System.Web.Services.dll /r:Mono.Security.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_2_0/System.ServiceModel.dll /nowarn:414,169,67,3005,436,219,618 /unsafe /d:TRACE /r:System.dll /r:System.Xml.dll /r:System.Core.dll /r:System.Runtime.Serialization.dll /resource:resources/WS-Addressing.schema /resource:resources/ws-addr.xsd /d:NET_3_0 /r:System.Configuration.dll /r:System.Data.dll /r:System.Security.dll /r:System.IdentityModel.dll /r:System.IdentityModel.Selectors.dll /r:System.Transactions.dll /r:System.Messaging.dll /r:System.Web.dll /r:System.Web.Services.dll /r:Mono.Security.dll</flags>
       <output>System.ServiceModel_test_net_2_0.dll</output>
       <built_sources></built_sources>
       <library_output>System.ServiceModel_test_net_2_0.dll</library_output>
     <project dir="class/System.Web.Extensions" library="System.Web.Extensions-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig -unsafe -define:NET_3_5 -define:SYSTEM_WEB_EXTENSIONS -r:mscorlib.dll -r:System.dll -r:System.Core.dll -r:System.Drawing.dll -r:System.Data.dll -r:System.Data.Linq.dll -r:System.Xml.dll -r:System.Web.dll -r:System.Web.Services.dll -r:System.Configuration.dll -r:System.EnterpriseServices.dll -r:System.ServiceModel.dll /resource:../MicrosoftAjaxLibrary/System.Web.Extensions/3.5.0.0/3.5.21022.8/MicrosoftAjax.debug.js /resource:../MicrosoftAjaxLibrary/System.Web.Extensions/3.5.0.0/3.5.21022.8/MicrosoftAjax.js /resource:../MicrosoftAjaxLibrary/System.Web.Extensions/3.5.0.0/3.5.21022.8/MicrosoftAjaxTimer.debug.js /resource:../MicrosoftAjaxLibrary/System.Web.Extensions/3.5.0.0/3.5.21022.8/MicrosoftAjaxTimer.js /resource:../MicrosoftAjaxLibrary/System.Web.Extensions/3.5.0.0/3.5.21022.8/MicrosoftAjaxWebForms.debug.js /resource:../MicrosoftAjaxLibrary/System.Web.Extensions/3.5.0.0/3.5.21022.8/MicrosoftAjaxWebForms.js</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig -unsafe -define:NET_3_5 -define:SYSTEM_WEB_EXTENSIONS -r:mscorlib.dll -r:System.dll -r:System.Core.dll -r:System.Drawing.dll -r:System.Data.dll -r:System.Data.Linq.dll -r:System.Xml.dll -r:System.Web.dll -r:System.Web.Services.dll -r:System.Configuration.dll -r:System.EnterpriseServices.dll -r:System.ServiceModel.dll /resource:../MicrosoftAjaxLibrary/System.Web.Extensions/3.5.0.0/3.5.21022.8/MicrosoftAjax.debug.js /resource:../MicrosoftAjaxLibrary/System.Web.Extensions/3.5.0.0/3.5.21022.8/MicrosoftAjax.js /resource:../MicrosoftAjaxLibrary/System.Web.Extensions/3.5.0.0/3.5.21022.8/MicrosoftAjaxTimer.debug.js /resource:../MicrosoftAjaxLibrary/System.Web.Extensions/3.5.0.0/3.5.21022.8/MicrosoftAjaxTimer.js /resource:../MicrosoftAjaxLibrary/System.Web.Extensions/3.5.0.0/3.5.21022.8/MicrosoftAjaxWebForms.debug.js /resource:../MicrosoftAjaxLibrary/System.Web.Extensions/3.5.0.0/3.5.21022.8/MicrosoftAjaxWebForms.js</flags>
       <output>System.Web.Extensions.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_2_0/System.Web.Extensions.dll</library_output>
     <project dir="class/System.Web.Extensions" library="System.Web.Extensions-tests-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -r:./../../class/lib/net_2_0/System.Web.Extensions.dll -unsafe -define:NET_3_5 -define:SYSTEM_WEB_EXTENSIONS -r:mscorlib.dll -r:System.dll -r:System.Core.dll -r:System.Drawing.dll -r:System.Data.dll -r:System.Data.Linq.dll -r:System.Xml.dll -r:System.Web.dll -r:System.Web.Services.dll -r:System.Configuration.dll -r:System.EnterpriseServices.dll -r:System.ServiceModel.dll /resource:../MicrosoftAjaxLibrary/System.Web.Extensions/3.5.0.0/3.5.21022.8/MicrosoftAjax.debug.js /resource:../MicrosoftAjaxLibrary/System.Web.Extensions/3.5.0.0/3.5.21022.8/MicrosoftAjax.js /resource:../MicrosoftAjaxLibrary/System.Web.Extensions/3.5.0.0/3.5.21022.8/MicrosoftAjaxTimer.debug.js /resource:../MicrosoftAjaxLibrary/System.Web.Extensions/3.5.0.0/3.5.21022.8/MicrosoftAjaxTimer.js /resource:../MicrosoftAjaxLibrary/System.Web.Extensions/3.5.0.0/3.5.21022.8/MicrosoftAjaxWebForms.debug.js /resource:../MicrosoftAjaxLibrary/System.Web.Extensions/3.5.0.0/3.5.21022.8/MicrosoftAjaxWebForms.js -doc:System.Web.Extensions_test_net_2_0.xml -nowarn:219,169,1591 /resource:Test/resources/Web.mono.config /resource:Test/resources/profile.config.4.5 /resource:Test/resources/profile.config.4.0 /resource:Test/resources/profile.config.2.0 /resource:Test/resources/ListViewSort.aspx /resource:Test/resources/ListViewTest.aspx /resource:Test/resources/ListViewTotalRowCount_Bug535701_1.aspx /resource:Test/resources/ListViewTotalRowCount_Bug535701_2.aspx /resource:Test/resources/ListViewTotalRowCount_Bug604053.aspx /resource:../System.Web/Test/mainsoft/NunitWeb/NunitWeb/Resources/MyPage.aspx.cs /resource:../System.Web/Test/mainsoft/NunitWeb/NunitWeb/Resources/Global.asax /resource:../System.Web/Test/mainsoft/NunitWeb/NunitWeb/Resources/My.ashx /resource:../System.Web/Test/mainsoft/NunitWeb/NunitWeb/Resources/MyPage.aspx /resource:../System.Web/Test/mainsoft/NunitWeb/NunitWeb/Resources/MyPageWithDerivedMaster.aspx /resource:../System.Web/Test/mainsoft/NunitWeb/NunitWeb/Resources/MyPageWithMaster.aspx /resource:../System.Web/Test/mainsoft/NunitWeb/NunitWeb/Resources/MyPageWithMasterInvalidPlaceHolder.aspx /resource:../System.Web/Test/mainsoft/NunitWeb/NunitWeb/Resources/MyDerived.master /resource:../System.Web/Test/mainsoft/NunitWeb/NunitWeb/Resources/My.master -r:SystemWebTestShim.dll -define:SYSTEM_WEB_EXTENSIONS</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_2_0/System.Web.Extensions.dll -unsafe -define:NET_3_5 -define:SYSTEM_WEB_EXTENSIONS -r:mscorlib.dll -r:System.dll -r:System.Core.dll -r:System.Drawing.dll -r:System.Data.dll -r:System.Data.Linq.dll -r:System.Xml.dll -r:System.Web.dll -r:System.Web.Services.dll -r:System.Configuration.dll -r:System.EnterpriseServices.dll -r:System.ServiceModel.dll /resource:../MicrosoftAjaxLibrary/System.Web.Extensions/3.5.0.0/3.5.21022.8/MicrosoftAjax.debug.js /resource:../MicrosoftAjaxLibrary/System.Web.Extensions/3.5.0.0/3.5.21022.8/MicrosoftAjax.js /resource:../MicrosoftAjaxLibrary/System.Web.Extensions/3.5.0.0/3.5.21022.8/MicrosoftAjaxTimer.debug.js /resource:../MicrosoftAjaxLibrary/System.Web.Extensions/3.5.0.0/3.5.21022.8/MicrosoftAjaxTimer.js /resource:../MicrosoftAjaxLibrary/System.Web.Extensions/3.5.0.0/3.5.21022.8/MicrosoftAjaxWebForms.debug.js /resource:../MicrosoftAjaxLibrary/System.Web.Extensions/3.5.0.0/3.5.21022.8/MicrosoftAjaxWebForms.js -doc:System.Web.Extensions_test_net_2_0.xml -nowarn:219,169,1591 /resource:Test/resources/Web.mono.config /resource:Test/resources/profile.config.4.5 /resource:Test/resources/profile.config.4.0 /resource:Test/resources/profile.config.2.0 /resource:Test/resources/ListViewSort.aspx /resource:Test/resources/ListViewTest.aspx /resource:Test/resources/ListViewTotalRowCount_Bug535701_1.aspx /resource:Test/resources/ListViewTotalRowCount_Bug535701_2.aspx /resource:Test/resources/ListViewTotalRowCount_Bug604053.aspx /resource:../System.Web/Test/mainsoft/NunitWeb/NunitWeb/Resources/MyPage.aspx.cs /resource:../System.Web/Test/mainsoft/NunitWeb/NunitWeb/Resources/Global.asax /resource:../System.Web/Test/mainsoft/NunitWeb/NunitWeb/Resources/My.ashx /resource:../System.Web/Test/mainsoft/NunitWeb/NunitWeb/Resources/MyPage.aspx /resource:../System.Web/Test/mainsoft/NunitWeb/NunitWeb/Resources/MyPageWithDerivedMaster.aspx /resource:../System.Web/Test/mainsoft/NunitWeb/NunitWeb/Resources/MyPageWithMaster.aspx /resource:../System.Web/Test/mainsoft/NunitWeb/NunitWeb/Resources/MyPageWithMasterInvalidPlaceHolder.aspx /resource:../System.Web/Test/mainsoft/NunitWeb/NunitWeb/Resources/MyDerived.master /resource:../System.Web/Test/mainsoft/NunitWeb/NunitWeb/Resources/My.master -r:SystemWebTestShim.dll -define:SYSTEM_WEB_EXTENSIONS</flags>
       <output>System.Web.Extensions_test_net_2_0.dll</output>
       <built_sources></built_sources>
       <library_output>System.Web.Extensions_test_net_2_0.dll</library_output>
     <project dir="class/System.Web.Extensions.Design" library="System.Web.Extensions.Design-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig -define:NET_3_5 -r:System.dll -r:System.Design.dll -r:System.Drawing.dll -r:System.Windows.Forms.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig -define:NET_3_5 -r:System.dll -r:System.Design.dll -r:System.Drawing.dll -r:System.Windows.Forms.dll</flags>
       <output>System.Web.Extensions.Design.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_2_0/System.Web.Extensions.Design.dll</library_output>
     <project dir="class/System.ComponentModel.DataAnnotations" library="System.ComponentModel.DataAnnotations-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig /r:System.dll /r:System.Core.dll /r:System.Data.dll /r:System.Xml.dll -d:NET_3_5</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig /r:System.dll /r:System.Core.dll /r:System.Data.dll /r:System.Xml.dll -d:NET_3_5</flags>
       <output>System.ComponentModel.DataAnnotations.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_2_0/System.ComponentModel.DataAnnotations.dll</library_output>
     <project dir="class/System.ComponentModel.DataAnnotations" library="System.ComponentModel.DataAnnotations-tests-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -r:./../../class/lib/net_2_0/System.ComponentModel.DataAnnotations.dll /r:System.dll /r:System.Core.dll /r:System.Data.dll /r:System.Xml.dll -d:NET_3_5</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_2_0/System.ComponentModel.DataAnnotations.dll /r:System.dll /r:System.Core.dll /r:System.Data.dll /r:System.Xml.dll -d:NET_3_5</flags>
       <output>System.ComponentModel.DataAnnotations_test_net_2_0.dll</output>
       <built_sources></built_sources>
       <library_output>System.ComponentModel.DataAnnotations_test_net_2_0.dll</library_output>
     <project dir="class/System.Web.DynamicData" library="System.Web.DynamicData-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig /r:System.dll /r:System.Core.dll /r:System.ComponentModel.DataAnnotations.dll /r:System.Data.dll /r:System.Data.Linq.dll /r:System.Drawing.dll /r:System.Web.dll /r:System.Web.Extensions.dll /r:System.Web.Abstractions.dll /r:System.Web.Routing.dll -d:NET_3_5</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig /r:System.dll /r:System.Core.dll /r:System.ComponentModel.DataAnnotations.dll /r:System.Data.dll /r:System.Data.Linq.dll /r:System.Drawing.dll /r:System.Web.dll /r:System.Web.Extensions.dll /r:System.Web.Abstractions.dll /r:System.Web.Routing.dll -d:NET_3_5</flags>
       <output>System.Web.DynamicData.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_2_0/System.Web.DynamicData.dll</library_output>
     <project dir="class/System.Web.DynamicData" library="System.Web.DynamicData-tests-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -r:./../../class/lib/net_2_0/System.Web.DynamicData.dll /r:System.dll /r:System.Core.dll /r:System.ComponentModel.DataAnnotations.dll /r:System.Data.dll /r:System.Data.Linq.dll /r:System.Drawing.dll /r:System.Web.dll /r:System.Web.Extensions.dll /r:System.Web.Abstractions.dll /r:System.Web.Routing.dll -d:NET_3_5 -r:System.ComponentModel.DataAnnotations.dll -r:System.Configuration.dll /resource:Test/WebPages/DynamicData/Content/FilterUserControl.ascx,MonoTests.WebPages.DynamicData.Content.FilterUserControl.ascx /resource:Test/WebPages/DynamicData/Content/FilterUserControl.ascx.cs,MonoTests.WebPages.DynamicData.Content.FilterUserControl.ascx.cs /resource:Test/WebPages/DynamicData/Content/GridViewPager.ascx,MonoTests.WebPages.DynamicData.Content.GridViewPager.ascx /resource:Test/WebPages/DynamicData/Content/GridViewPager.ascx.cs,MonoTests.WebPages.DynamicData.Content.GridViewPager.ascx.cs /resource:Test/WebPages/DynamicData/Content/Images/Back.gif,MonoTests.WebPages.DynamicData.Content.Images.Back.gif /resource:Test/WebPages/DynamicData/Content/Images/header_back.gif,MonoTests.WebPages.DynamicData.Content.Images.header_back.gif /resource:Test/WebPages/DynamicData/Content/Images/PgFirst.gif,MonoTests.WebPages.DynamicData.Content.Images.PgFirst.gif /resource:Test/WebPages/DynamicData/Content/Images/PgLast.gif,MonoTests.WebPages.DynamicData.Content.Images.PgLast.gif /resource:Test/WebPages/DynamicData/Content/Images/PgNext.gif,MonoTests.WebPages.DynamicData.Content.Images.PgNext.gif /resource:Test/WebPages/DynamicData/Content/Images/PgPrev.gif,MonoTests.WebPages.DynamicData.Content.Images.PgPrev.gif /resource:Test/WebPages/DynamicData/Content/Images/plus.gif,MonoTests.WebPages.DynamicData.Content.Images.plus.gif /resource:Test/WebPages/DynamicData/FieldTemplates/Boolean.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.Boolean.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/Boolean.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.Boolean.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates/Boolean_Edit.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.Boolean_Edit.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/Boolean_Edit.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.Boolean_Edit.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates/Children.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.Children.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/Children.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.Children.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates/CustomColor.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.CustomColor.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/CustomColor.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.CustomColor.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates/CustomFieldTemplate.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.CustomFieldTemplate.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/CustomFieldTemplate.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.CustomFieldTemplate.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates/DateTime.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.DateTime.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/DateTime.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.DateTime.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates/DateTime_Edit.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.DateTime_Edit.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/DateTime_Edit.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.DateTime_Edit.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates/Decimal_Edit.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.Decimal_Edit.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/Decimal_Edit.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.Decimal_Edit.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates/ForeignKey.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.ForeignKey.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/ForeignKey.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.ForeignKey.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates/ForeignKey_Edit.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.ForeignKey_Edit.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/ForeignKey_Edit.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.ForeignKey_Edit.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates/Integer_Edit.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.Integer_Edit.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/Integer_Edit.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.Integer_Edit.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates/MultilineText_Edit.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.MultilineText_Edit.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/MultilineText_Edit.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.MultilineText_Edit.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates/MyCustomUIHintTemplate_Text.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.MyCustomUIHintTemplate_Text.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/MyCustomUIHintTemplate_Text.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.MyCustomUIHintTemplate_Text.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Boolean.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Boolean.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Boolean.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Boolean.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Byte.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Byte.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Byte[].ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Byte[].ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Byte.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Byte.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Byte[].ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Byte[].ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Char.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Char.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Char.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Char.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/FooEmpty.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.FooEmpty.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/FooEmpty.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.FooEmpty.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/ICollection.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.ICollection.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/ICollection.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.ICollection.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Int16.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Int16.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Int16.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Int16.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Int32.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Int32.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Int32.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Int32.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Int64.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Int64.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Int64.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Int64.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/MonoTests.Common.FooEmpty.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.MonoTests.Common.FooEmpty.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/MonoTests.Common.FooEmpty.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.MonoTests.Common.FooEmpty.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Object.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Object.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Object.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Object.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/SByte.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.SByte.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/SByte.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.SByte.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/String.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.String.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/String.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.String.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Boolean.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Boolean.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Boolean.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Boolean.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Byte.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Byte.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Byte[].ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Byte[].ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Byte.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Byte.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Byte[].ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Byte[].ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Char.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Char.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Char.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Char.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Collections.Generic.List`1[System.String].ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Collections.Generic.List`1[System.String].ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Collections.Generic.List`1[System.String].ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Collections.Generic.List`1[System.String].ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Collections.ICollection.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Collections.ICollection.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Collections.ICollection.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Collections.ICollection.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Int16.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Int16.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Int16.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Int16.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Int32.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Int32.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Int32.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Int32.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Int64.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Int64.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Int64.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Int64.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Object.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Object.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Object.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Object.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.SByte.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.SByte.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.SByte.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.SByte.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.String.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.String.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.String.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.String.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.UInt16.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.UInt16.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.UInt16.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.UInt16.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.UInt32.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.UInt32.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.UInt32.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.UInt32.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.UInt64.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.UInt64.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.UInt64.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.UInt64.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/UInt16.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.UInt16.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/UInt16.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.UInt16.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/UInt32.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.UInt32.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/UInt32.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.UInt32.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/UInt64.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.UInt64.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/UInt64.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.UInt64.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates/PlainControlTemplate.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.PlainControlTemplate.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/PlainControlTemplate.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.PlainControlTemplate.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates/Text.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.Text.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/Text.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.Text.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates/Text_Edit.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.Text_Edit.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/Text_Edit.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.Text_Edit.ascx.cs /resource:Test/WebPages/DynamicData/PageTemplates/Details.aspx,MonoTests.WebPages.DynamicData.PageTemplates.Details.aspx /resource:Test/WebPages/DynamicData/PageTemplates/Details.aspx.cs,MonoTests.WebPages.DynamicData.PageTemplates.Details.aspx.cs /resource:Test/WebPages/DynamicData/PageTemplates/Edit.aspx,MonoTests.WebPages.DynamicData.PageTemplates.Edit.aspx /resource:Test/WebPages/DynamicData/PageTemplates/Edit.aspx.cs,MonoTests.WebPages.DynamicData.PageTemplates.Edit.aspx.cs /resource:Test/WebPages/DynamicData/PageTemplates/Insert.aspx,MonoTests.WebPages.DynamicData.PageTemplates.Insert.aspx /resource:Test/WebPages/DynamicData/PageTemplates/Insert.aspx.cs,MonoTests.WebPages.DynamicData.PageTemplates.Insert.aspx.cs /resource:Test/WebPages/DynamicData/PageTemplates/List.aspx,MonoTests.WebPages.DynamicData.PageTemplates.List.aspx /resource:Test/WebPages/DynamicData/PageTemplates/List.aspx.cs,MonoTests.WebPages.DynamicData.PageTemplates.List.aspx.cs /resource:Test/WebPages/DynamicData/PageTemplates/ListDetails.aspx,MonoTests.WebPages.DynamicData.PageTemplates.ListDetails.aspx /resource:Test/WebPages/DynamicData/PageTemplates/ListDetails.aspx.cs,MonoTests.WebPages.DynamicData.PageTemplates.ListDetails.aspx.cs /resource:Test/WebPages/DynamicData/web.config,MonoTests.WebPages.DynamicData.web.config /resource:Test/WebPages/Global.asax,MonoTests.WebPages.Global.asax /resource:Test/WebPages/ListView_DynamicControl_01.aspx,MonoTests.WebPages.ListView_DynamicControl_01.aspx /resource:Test/WebPages/ListView_DynamicControl_01.aspx.cs,MonoTests.WebPages.ListView_DynamicControl_01.aspx.cs /resource:Test/WebPages/ListView_DynamicControl_02.aspx,MonoTests.WebPages.ListView_DynamicControl_02.aspx /resource:Test/WebPages/ListView_DynamicControl_02.aspx.cs,MonoTests.WebPages.ListView_DynamicControl_02.aspx.cs /resource:Test/WebPages/ListView_DynamicControl_03.aspx,MonoTests.WebPages.ListView_DynamicControl_03.aspx /resource:Test/WebPages/ListView_DynamicControl_03.aspx.cs,MonoTests.WebPages.ListView_DynamicControl_03.aspx.cs /resource:Test/WebPages/ListView_DynamicControl_04.aspx,MonoTests.WebPages.ListView_DynamicControl_04.aspx /resource:Test/WebPages/ListView_DynamicControl_04.aspx.cs,MonoTests.WebPages.ListView_DynamicControl_04.aspx.cs /resource:Test/WebPages/ListView_DynamicControl_05.aspx,MonoTests.WebPages.ListView_DynamicControl_05.aspx /resource:Test/WebPages/ListView_DynamicControl_05.aspx.cs,MonoTests.WebPages.ListView_DynamicControl_05.aspx.cs /resource:Test/WebPages/ListView_DynamicControl_06.aspx,MonoTests.WebPages.ListView_DynamicControl_06.aspx /resource:Test/WebPages/ListView_DynamicControl_06.aspx.cs,MonoTests.WebPages.ListView_DynamicControl_06.aspx.cs /resource:Test/WebPages/ListView_DynamicControl_07.aspx,MonoTests.WebPages.ListView_DynamicControl_07.aspx /resource:Test/WebPages/ListView_DynamicControl_07.aspx.cs,MonoTests.WebPages.ListView_DynamicControl_07.aspx.cs /resource:Test/WebPages/ListView_DynamicControl_08.aspx,MonoTests.WebPages.ListView_DynamicControl_08.aspx /resource:Test/WebPages/ListView_DynamicControl_08.aspx.cs,MonoTests.WebPages.ListView_DynamicControl_08.aspx.cs /resource:Test/WebPages/ListView_DynamicControl_09.aspx,MonoTests.WebPages.ListView_DynamicControl_09.aspx /resource:Test/WebPages/ListView_DynamicControl_09.aspx.cs,MonoTests.WebPages.ListView_DynamicControl_09.aspx.cs /resource:Test/WebPages/ListView_DynamicControl_10.aspx,MonoTests.WebPages.ListView_DynamicControl_10.aspx /resource:Test/WebPages/ListView_DynamicControl_10.aspx.cs,MonoTests.WebPages.ListView_DynamicControl_10.aspx.cs /resource:Test/WebPages/DynamicValidator_01.aspx,MonoTests.WebPages.DynamicValidator_01.aspx /resource:Test/WebPages/DynamicValidator_01.aspx.cs,MonoTests.WebPages.DynamicValidator_01.aspx.cs /resource:Test/WebPages/DynamicValidator_02.aspx,MonoTests.WebPages.DynamicValidator_02.aspx /resource:Test/WebPages/DynamicValidator_02.aspx.cs,MonoTests.WebPages.DynamicValidator_02.aspx.cs /resource:Test/WebPages/Site.css,MonoTests.WebPages.Site.css /resource:Test/WebPages/Site.master,MonoTests.WebPages.Site.master /resource:Test/WebPages/Site.master.cs,MonoTests.WebPages.Site.master.cs /resource:Test/WebPages/web.config.2.0,MonoTests.WebPages.web.config.2.0 /resource:Test/WebPages/web.config.4.0,MonoTests.WebPages.web.config.4.0 /resource:Test/WebPages/web.config.4.5,MonoTests.WebPages.web.config.4.5 -r:SystemWebTestShim.dll -r:System.Xml.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_2_0/System.Web.DynamicData.dll /r:System.dll /r:System.Core.dll /r:System.ComponentModel.DataAnnotations.dll /r:System.Data.dll /r:System.Data.Linq.dll /r:System.Drawing.dll /r:System.Web.dll /r:System.Web.Extensions.dll /r:System.Web.Abstractions.dll /r:System.Web.Routing.dll -d:NET_3_5 -r:System.ComponentModel.DataAnnotations.dll -r:System.Configuration.dll /resource:Test/WebPages/DynamicData/Content/FilterUserControl.ascx,MonoTests.WebPages.DynamicData.Content.FilterUserControl.ascx /resource:Test/WebPages/DynamicData/Content/FilterUserControl.ascx.cs,MonoTests.WebPages.DynamicData.Content.FilterUserControl.ascx.cs /resource:Test/WebPages/DynamicData/Content/GridViewPager.ascx,MonoTests.WebPages.DynamicData.Content.GridViewPager.ascx /resource:Test/WebPages/DynamicData/Content/GridViewPager.ascx.cs,MonoTests.WebPages.DynamicData.Content.GridViewPager.ascx.cs /resource:Test/WebPages/DynamicData/Content/Images/Back.gif,MonoTests.WebPages.DynamicData.Content.Images.Back.gif /resource:Test/WebPages/DynamicData/Content/Images/header_back.gif,MonoTests.WebPages.DynamicData.Content.Images.header_back.gif /resource:Test/WebPages/DynamicData/Content/Images/PgFirst.gif,MonoTests.WebPages.DynamicData.Content.Images.PgFirst.gif /resource:Test/WebPages/DynamicData/Content/Images/PgLast.gif,MonoTests.WebPages.DynamicData.Content.Images.PgLast.gif /resource:Test/WebPages/DynamicData/Content/Images/PgNext.gif,MonoTests.WebPages.DynamicData.Content.Images.PgNext.gif /resource:Test/WebPages/DynamicData/Content/Images/PgPrev.gif,MonoTests.WebPages.DynamicData.Content.Images.PgPrev.gif /resource:Test/WebPages/DynamicData/Content/Images/plus.gif,MonoTests.WebPages.DynamicData.Content.Images.plus.gif /resource:Test/WebPages/DynamicData/FieldTemplates/Boolean.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.Boolean.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/Boolean.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.Boolean.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates/Boolean_Edit.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.Boolean_Edit.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/Boolean_Edit.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.Boolean_Edit.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates/Children.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.Children.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/Children.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.Children.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates/CustomColor.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.CustomColor.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/CustomColor.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.CustomColor.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates/CustomFieldTemplate.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.CustomFieldTemplate.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/CustomFieldTemplate.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.CustomFieldTemplate.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates/DateTime.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.DateTime.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/DateTime.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.DateTime.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates/DateTime_Edit.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.DateTime_Edit.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/DateTime_Edit.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.DateTime_Edit.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates/Decimal_Edit.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.Decimal_Edit.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/Decimal_Edit.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.Decimal_Edit.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates/ForeignKey.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.ForeignKey.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/ForeignKey.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.ForeignKey.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates/ForeignKey_Edit.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.ForeignKey_Edit.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/ForeignKey_Edit.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.ForeignKey_Edit.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates/Integer_Edit.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.Integer_Edit.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/Integer_Edit.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.Integer_Edit.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates/MultilineText_Edit.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.MultilineText_Edit.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/MultilineText_Edit.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.MultilineText_Edit.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates/MyCustomUIHintTemplate_Text.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.MyCustomUIHintTemplate_Text.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/MyCustomUIHintTemplate_Text.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.MyCustomUIHintTemplate_Text.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Boolean.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Boolean.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Boolean.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Boolean.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Byte.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Byte.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Byte[].ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Byte[].ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Byte.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Byte.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Byte[].ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Byte[].ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Char.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Char.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Char.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Char.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/FooEmpty.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.FooEmpty.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/FooEmpty.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.FooEmpty.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/ICollection.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.ICollection.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/ICollection.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.ICollection.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Int16.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Int16.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Int16.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Int16.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Int32.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Int32.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Int32.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Int32.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Int64.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Int64.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Int64.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Int64.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/MonoTests.Common.FooEmpty.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.MonoTests.Common.FooEmpty.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/MonoTests.Common.FooEmpty.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.MonoTests.Common.FooEmpty.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Object.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Object.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Object.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Object.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/SByte.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.SByte.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/SByte.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.SByte.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/String.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.String.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/String.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.String.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Boolean.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Boolean.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Boolean.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Boolean.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Byte.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Byte.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Byte[].ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Byte[].ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Byte.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Byte.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Byte[].ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Byte[].ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Char.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Char.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Char.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Char.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Collections.Generic.List`1[System.String].ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Collections.Generic.List`1[System.String].ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Collections.Generic.List`1[System.String].ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Collections.Generic.List`1[System.String].ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Collections.ICollection.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Collections.ICollection.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Collections.ICollection.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Collections.ICollection.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Int16.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Int16.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Int16.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Int16.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Int32.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Int32.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Int32.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Int32.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Int64.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Int64.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Int64.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Int64.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Object.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Object.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Object.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Object.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.SByte.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.SByte.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.SByte.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.SByte.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.String.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.String.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.String.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.String.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.UInt16.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.UInt16.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.UInt16.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.UInt16.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.UInt32.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.UInt32.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.UInt32.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.UInt32.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.UInt64.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.UInt64.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.UInt64.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.UInt64.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/UInt16.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.UInt16.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/UInt16.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.UInt16.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/UInt32.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.UInt32.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/UInt32.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.UInt32.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/UInt64.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.UInt64.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/UInt64.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.UInt64.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates/PlainControlTemplate.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.PlainControlTemplate.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/PlainControlTemplate.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.PlainControlTemplate.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates/Text.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.Text.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/Text.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.Text.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates/Text_Edit.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.Text_Edit.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/Text_Edit.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.Text_Edit.ascx.cs /resource:Test/WebPages/DynamicData/PageTemplates/Details.aspx,MonoTests.WebPages.DynamicData.PageTemplates.Details.aspx /resource:Test/WebPages/DynamicData/PageTemplates/Details.aspx.cs,MonoTests.WebPages.DynamicData.PageTemplates.Details.aspx.cs /resource:Test/WebPages/DynamicData/PageTemplates/Edit.aspx,MonoTests.WebPages.DynamicData.PageTemplates.Edit.aspx /resource:Test/WebPages/DynamicData/PageTemplates/Edit.aspx.cs,MonoTests.WebPages.DynamicData.PageTemplates.Edit.aspx.cs /resource:Test/WebPages/DynamicData/PageTemplates/Insert.aspx,MonoTests.WebPages.DynamicData.PageTemplates.Insert.aspx /resource:Test/WebPages/DynamicData/PageTemplates/Insert.aspx.cs,MonoTests.WebPages.DynamicData.PageTemplates.Insert.aspx.cs /resource:Test/WebPages/DynamicData/PageTemplates/List.aspx,MonoTests.WebPages.DynamicData.PageTemplates.List.aspx /resource:Test/WebPages/DynamicData/PageTemplates/List.aspx.cs,MonoTests.WebPages.DynamicData.PageTemplates.List.aspx.cs /resource:Test/WebPages/DynamicData/PageTemplates/ListDetails.aspx,MonoTests.WebPages.DynamicData.PageTemplates.ListDetails.aspx /resource:Test/WebPages/DynamicData/PageTemplates/ListDetails.aspx.cs,MonoTests.WebPages.DynamicData.PageTemplates.ListDetails.aspx.cs /resource:Test/WebPages/DynamicData/web.config,MonoTests.WebPages.DynamicData.web.config /resource:Test/WebPages/Global.asax,MonoTests.WebPages.Global.asax /resource:Test/WebPages/ListView_DynamicControl_01.aspx,MonoTests.WebPages.ListView_DynamicControl_01.aspx /resource:Test/WebPages/ListView_DynamicControl_01.aspx.cs,MonoTests.WebPages.ListView_DynamicControl_01.aspx.cs /resource:Test/WebPages/ListView_DynamicControl_02.aspx,MonoTests.WebPages.ListView_DynamicControl_02.aspx /resource:Test/WebPages/ListView_DynamicControl_02.aspx.cs,MonoTests.WebPages.ListView_DynamicControl_02.aspx.cs /resource:Test/WebPages/ListView_DynamicControl_03.aspx,MonoTests.WebPages.ListView_DynamicControl_03.aspx /resource:Test/WebPages/ListView_DynamicControl_03.aspx.cs,MonoTests.WebPages.ListView_DynamicControl_03.aspx.cs /resource:Test/WebPages/ListView_DynamicControl_04.aspx,MonoTests.WebPages.ListView_DynamicControl_04.aspx /resource:Test/WebPages/ListView_DynamicControl_04.aspx.cs,MonoTests.WebPages.ListView_DynamicControl_04.aspx.cs /resource:Test/WebPages/ListView_DynamicControl_05.aspx,MonoTests.WebPages.ListView_DynamicControl_05.aspx /resource:Test/WebPages/ListView_DynamicControl_05.aspx.cs,MonoTests.WebPages.ListView_DynamicControl_05.aspx.cs /resource:Test/WebPages/ListView_DynamicControl_06.aspx,MonoTests.WebPages.ListView_DynamicControl_06.aspx /resource:Test/WebPages/ListView_DynamicControl_06.aspx.cs,MonoTests.WebPages.ListView_DynamicControl_06.aspx.cs /resource:Test/WebPages/ListView_DynamicControl_07.aspx,MonoTests.WebPages.ListView_DynamicControl_07.aspx /resource:Test/WebPages/ListView_DynamicControl_07.aspx.cs,MonoTests.WebPages.ListView_DynamicControl_07.aspx.cs /resource:Test/WebPages/ListView_DynamicControl_08.aspx,MonoTests.WebPages.ListView_DynamicControl_08.aspx /resource:Test/WebPages/ListView_DynamicControl_08.aspx.cs,MonoTests.WebPages.ListView_DynamicControl_08.aspx.cs /resource:Test/WebPages/ListView_DynamicControl_09.aspx,MonoTests.WebPages.ListView_DynamicControl_09.aspx /resource:Test/WebPages/ListView_DynamicControl_09.aspx.cs,MonoTests.WebPages.ListView_DynamicControl_09.aspx.cs /resource:Test/WebPages/ListView_DynamicControl_10.aspx,MonoTests.WebPages.ListView_DynamicControl_10.aspx /resource:Test/WebPages/ListView_DynamicControl_10.aspx.cs,MonoTests.WebPages.ListView_DynamicControl_10.aspx.cs /resource:Test/WebPages/DynamicValidator_01.aspx,MonoTests.WebPages.DynamicValidator_01.aspx /resource:Test/WebPages/DynamicValidator_01.aspx.cs,MonoTests.WebPages.DynamicValidator_01.aspx.cs /resource:Test/WebPages/DynamicValidator_02.aspx,MonoTests.WebPages.DynamicValidator_02.aspx /resource:Test/WebPages/DynamicValidator_02.aspx.cs,MonoTests.WebPages.DynamicValidator_02.aspx.cs /resource:Test/WebPages/Site.css,MonoTests.WebPages.Site.css /resource:Test/WebPages/Site.master,MonoTests.WebPages.Site.master /resource:Test/WebPages/Site.master.cs,MonoTests.WebPages.Site.master.cs /resource:Test/WebPages/web.config.2.0,MonoTests.WebPages.web.config.2.0 /resource:Test/WebPages/web.config.4.0,MonoTests.WebPages.web.config.4.0 /resource:Test/WebPages/web.config.4.5,MonoTests.WebPages.web.config.4.5 -r:SystemWebTestShim.dll -r:System.Xml.dll</flags>
       <output>System.Web.DynamicData_test_net_2_0.dll</output>
       <built_sources></built_sources>
       <library_output>System.Web.DynamicData_test_net_2_0.dll</library_output>
     <project dir="class/System.ServiceModel.Web" library="System.ServiceModel.Web-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig -r:System.dll -r:System.Xml.dll -r:System.Runtime.Serialization.dll -r:System.ServiceModel.dll -r:System.Core.dll -d:NET_3_5 -d:NET_3_0 -r:System.Configuration.dll -r:System.Web.Extensions.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig -r:System.dll -r:System.Xml.dll -r:System.Runtime.Serialization.dll -r:System.ServiceModel.dll -r:System.Core.dll -d:NET_3_5 -d:NET_3_0 -r:System.Configuration.dll -r:System.Web.Extensions.dll</flags>
       <output>System.ServiceModel.Web.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_2_0/System.ServiceModel.Web.dll</library_output>
     <project dir="class/System.ServiceModel.Web" library="System.ServiceModel.Web-tests-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -r:./../../class/lib/net_2_0/System.ServiceModel.Web.dll -r:System.dll -r:System.Xml.dll -r:System.Runtime.Serialization.dll -r:System.ServiceModel.dll -r:System.Core.dll -d:NET_3_5 -d:NET_3_0 -r:System.Configuration.dll -r:System.Web.Extensions.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_2_0/System.ServiceModel.Web.dll -r:System.dll -r:System.Xml.dll -r:System.Runtime.Serialization.dll -r:System.ServiceModel.dll -r:System.Core.dll -d:NET_3_5 -d:NET_3_0 -r:System.Configuration.dll -r:System.Web.Extensions.dll</flags>
       <output>System.ServiceModel.Web_test_net_2_0.dll</output>
       <built_sources></built_sources>
       <library_output>System.ServiceModel.Web_test_net_2_0.dll</library_output>
     <project dir="class/System.Web.Mvc2" library="System.Web.Mvc2-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig /warn:1 /keyfile:../winfx.pub /r:System.dll /r:System.Core.dll /r:System.Configuration.dll /r:System.Data.dll /r:System.Xml.dll /r:System.Web.dll /r:System.Web.Abstractions.dll /r:System.Web.Routing.dll /r:System.Web.Extensions.dll /r:System.ComponentModel.DataAnnotations.dll /r:System.Data.Linq.dll /resource:System.Web.Mvc/Resources/MvcResources.resources,System.Web.Mvc.Resources.MvcResources.resources -d:NET_3_5 -d:MONO</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig /warn:1 /keyfile:../winfx.pub /r:System.dll /r:System.Core.dll /r:System.Configuration.dll /r:System.Data.dll /r:System.Xml.dll /r:System.Web.dll /r:System.Web.Abstractions.dll /r:System.Web.Routing.dll /r:System.Web.Extensions.dll /r:System.ComponentModel.DataAnnotations.dll /r:System.Data.Linq.dll /resource:System.Web.Mvc/Resources/MvcResources.resources,System.Web.Mvc.Resources.MvcResources.resources -d:NET_3_5 -d:MONO</flags>
       <output>System.Web.Mvc.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_2_0/tmp/System.Web.Mvc.dll</library_output>
     <project dir="class/Mono.C5" library="Mono.C5-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig /r:mscorlib.dll /r:System.dll -nowarn:169,219,414,1030,3001,3005,3006</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig /r:mscorlib.dll /r:System.dll -nowarn:169,219,414,1030,3001,3005,3006</flags>
       <output>Mono.C5.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_2_0/Mono.C5.dll</library_output>
     <project dir="class/Mono.C5" library="Mono.C5-tests-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -r:./../../class/lib/net_2_0/Mono.C5.dll /r:mscorlib.dll /r:System.dll -nowarn:169,219,414,1030,3001,3005,3006 -nowarn:0618 -nowarn:219 -nowarn:169</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_2_0/Mono.C5.dll /r:mscorlib.dll /r:System.dll -nowarn:169,219,414,1030,3001,3005,3006 -nowarn:0618 -nowarn:219 -nowarn:169</flags>
       <output>Mono.C5_test_net_2_0.dll</output>
       <built_sources></built_sources>
       <library_output>Mono.C5_test_net_2_0.dll</library_output>
     <project dir="class/Mono.Management" library="Mono.Management-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig /r:mscorlib.dll /r:System.dll /r:Mono.Posix.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig /r:mscorlib.dll /r:System.dll /r:Mono.Posix.dll</flags>
       <output>Mono.Management.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_2_0/tmp/Mono.Management.dll</library_output>
     <project dir="class/Mono.Options" library="Mono.Options-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig /r:mscorlib.dll /r:System.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig /r:mscorlib.dll /r:System.dll</flags>
       <output>Mono.Options.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_2_0/Mono.Options.dll</library_output>
     <project dir="class/Mono.Options" library="Mono.Options-tests-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -r:./../../class/lib/net_2_0/Mono.Options.dll /r:Mono.Posix.dll /r:System.dll /r:System.Core.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_2_0/Mono.Options.dll /r:Mono.Posix.dll /r:System.dll /r:System.Core.dll</flags>
       <output>Mono.Options_test_net_2_0.dll</output>
       <built_sources></built_sources>
       <library_output>Mono.Options_test_net_2_0.dll</library_output>
     <project dir="class/Mono.Simd" library="Mono.Simd-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig -r:mscorlib.dll -r:System.Core.dll /unsafe</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig -r:mscorlib.dll -r:System.Core.dll /unsafe</flags>
       <output>Mono.Simd.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_2_0/Mono.Simd.dll</library_output>
     <project dir="class/Mono.Tasklets" library="Mono.Tasklets-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig</flags>
       <output>Mono.Tasklets.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_2_0/Mono.Tasklets.dll</library_output>
     <project dir="class/Mono.CSharp" library="Mono.CSharp-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig -r:System.Core.dll -r:System.Xml.dll -r:System.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig -r:System.Core.dll -r:System.Xml.dll -r:System.dll</flags>
       <output>Mono.CSharp.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_2_0/Mono.CSharp.dll</library_output>
     <project dir="class/Mono.CSharp" library="Mono.CSharp-tests-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -r:./../../class/lib/net_2_0/Mono.CSharp.dll -r:System.Core.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_2_0/Mono.CSharp.dll -r:System.Core.dll</flags>
       <output>Mono.CSharp_test_net_2_0.dll</output>
       <built_sources></built_sources>
       <library_output>Mono.CSharp_test_net_2_0.dll</library_output>
     <project dir="class/Moonlight.Build.Tasks" library="Moonlight.Build.Tasks-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig /r:mscorlib.dll /r:System.dll /r:System.Xml.dll /r:Microsoft.Build.Engine.dll /r:Microsoft.Build.Framework.dll /r:Microsoft.Build.Utilities.dll /r:Microsoft.Build.Tasks.dll /r:ICSharpCode.SharpZipLib.dll -resource:Moonlight.Build.Tasks/PreviewTemplate.html</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig /r:mscorlib.dll /r:System.dll /r:System.Xml.dll /r:Microsoft.Build.Engine.dll /r:Microsoft.Build.Framework.dll /r:Microsoft.Build.Utilities.dll /r:Microsoft.Build.Tasks.dll /r:ICSharpCode.SharpZipLib.dll -resource:Moonlight.Build.Tasks/PreviewTemplate.html</flags>
       <output>Moonlight.Build.Tasks.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_2_0/Moonlight.Build.Tasks.dll</library_output>
     <project dir="class/System.Net" library="System.Net-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig -unsafe -r:System.dll -r:System.Core.dll -r:System.Xml.dll -d:NET_2_1 -d:NET_2_0 -d:NET_1_1 -d:NET_3_5 -nowarn:1720</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig -unsafe -r:System.dll -r:System.Core.dll -r:System.Xml.dll -d:NET_2_1 -d:NET_2_0 -d:NET_1_1 -d:NET_3_5 -nowarn:1720</flags>
       <output>System.Net.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_2_0/System.Net.dll</library_output>
     <project dir="class/System.Web.Extensions_1.0" library="System.Web.Extensions_1.0-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig -unsafe -define:SYSTEM_WEB_EXTENSIONS -r:mscorlib.dll -r:System.dll -r:System.Core.dll -r:System.Drawing.dll -r:System.Data.dll -r:System.Xml.dll -r:System.Web.dll -r:System.Web.Services.dll -r:System.Configuration.dll -r:System.EnterpriseServices.dll /resource:../MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/MicrosoftAjax.debug.js /resource:../MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/MicrosoftAjax.js /resource:../MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/MicrosoftAjaxTimer.debug.js /resource:../MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/MicrosoftAjaxTimer.js /resource:../MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/MicrosoftAjaxWebForms.debug.js /resource:../MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/MicrosoftAjaxWebForms.js</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig -unsafe -define:SYSTEM_WEB_EXTENSIONS -r:mscorlib.dll -r:System.dll -r:System.Core.dll -r:System.Drawing.dll -r:System.Data.dll -r:System.Xml.dll -r:System.Web.dll -r:System.Web.Services.dll -r:System.Configuration.dll -r:System.EnterpriseServices.dll /resource:../MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/MicrosoftAjax.debug.js /resource:../MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/MicrosoftAjax.js /resource:../MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/MicrosoftAjaxTimer.debug.js /resource:../MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/MicrosoftAjaxTimer.js /resource:../MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/MicrosoftAjaxWebForms.debug.js /resource:../MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/MicrosoftAjaxWebForms.js</flags>
       <output>System.Web.Extensions.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/compat/net_2_0/System.Web.Extensions.dll</library_output>
     <project dir="class/System.Web.Extensions.Design_1.0" library="System.Web.Extensions.Design_1.0-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig -r:System.dll -r:System.Design.dll -r:System.Drawing.dll -r:System.Windows.Forms.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig -r:System.dll -r:System.Design.dll -r:System.Drawing.dll -r:System.Windows.Forms.dll</flags>
       <output>System.Web.Extensions.Design.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/compat/net_2_0/System.Web.Extensions.Design.dll</library_output>
     <project dir="class/Compat.ICSharpCode.SharpZipLib" library="Compat.ICSharpCode.SharpZipLib-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig -r:mscorlib.dll -r:System.dll -r:System.Xml.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig -r:mscorlib.dll -r:System.dll -r:System.Xml.dll</flags>
       <output>ICSharpCode.SharpZipLib.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/compat/net_2_0/ICSharpCode.SharpZipLib.dll</library_output>
     <project dir="class/WindowsBase" library="WindowsBase-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig -unsafe -r:System.dll -r:System.Xml.dll -d:NET_3_0</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig -unsafe -r:System.dll -r:System.Xml.dll -d:NET_3_0</flags>
       <output>WindowsBase.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_2_0/WindowsBase.dll</library_output>
     <project dir="class/WindowsBase" library="WindowsBase-tests-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -r:./../../class/lib/net_2_0/WindowsBase.dll -unsafe -r:WindowsBase.dll -r:System.dll -r:System.Xml.dll -r:System.Core.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_2_0/WindowsBase.dll -unsafe -r:WindowsBase.dll -r:System.dll -r:System.Xml.dll -r:System.Core.dll</flags>
       <output>WindowsBase_test_net_2_0.dll</output>
       <built_sources></built_sources>
       <library_output>WindowsBase_test_net_2_0.dll</library_output>
     <project dir="class/System.Data.Services.Client" library="System.Data.Services.Client-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig -d:NET_3_5 -r:System.dll -r:System.Core.dll -r:System.Xml.Linq.dll -r:System.Data.dll -r:System.Xml.dll -resource:Client/System.Data.Services.Client.resources -warn:2 -r:WindowsBase</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig -d:NET_3_5 -r:System.dll -r:System.Core.dll -r:System.Xml.Linq.dll -r:System.Data.dll -r:System.Xml.dll -resource:Client/System.Data.Services.Client.resources -warn:2 -r:WindowsBase</flags>
       <output>System.Data.Services.Client.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_2_0/System.Data.Services.Client.dll</library_output>
     <project dir="class/System.Data.Services" library="System.Data.Services-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig -d:NET_3_5 -r:System.dll -r:System.Core.dll -r:System.ServiceModel.dll -r:System.ServiceModel.Web.dll -r:System.Data.Services.Client.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig -d:NET_3_5 -r:System.dll -r:System.Core.dll -r:System.ServiceModel.dll -r:System.ServiceModel.Web.dll -r:System.Data.Services.Client.dll</flags>
       <output>System.Data.Services.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_2_0/System.Data.Services.dll</library_output>
     <project dir="class/System.Data.Services" library="System.Data.Services-tests-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -r:./../../class/lib/net_2_0/System.Data.Services.dll -r:System.ServiceModel.dll -r:System.Core.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_2_0/System.Data.Services.dll -r:System.ServiceModel.dll -r:System.Core.dll</flags>
       <output>System.Data.Services_test_net_2_0.dll</output>
       <built_sources></built_sources>
       <library_output>System.Data.Services_test_net_2_0.dll</library_output>
     <project dir="class/System.Web.Mvc" library="System.Web.Mvc-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig /r:System.dll /r:System.Core.dll /r:System.Configuration.dll /r:System.Data.dll /r:System.Xml.dll /r:System.Web.dll /r:System.Web.Abstractions.dll /r:System.Web.Routing.dll /r:System.Web.Extensions.dll /resource:System.Web.Mvc/Resources/MvcResources.resources,System.Web.Mvc.Resources.MvcResources.resources -d:NET_3_5 -d:MONO</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig /r:System.dll /r:System.Core.dll /r:System.Configuration.dll /r:System.Data.dll /r:System.Xml.dll /r:System.Web.dll /r:System.Web.Abstractions.dll /r:System.Web.Routing.dll /r:System.Web.Extensions.dll /resource:System.Web.Mvc/Resources/MvcResources.resources,System.Web.Mvc.Resources.MvcResources.resources -d:NET_3_5 -d:MONO</flags>
       <output>System.Web.Mvc.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/compat/net_2_0/tmp/System.Web.Mvc.dll</library_output>
     <project dir="nunit24/NUnit.Framework/framework" library="NUnit.Framework-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig /r:System.Xml.dll /r:System.dll /d:StronglyNamedAssembly -warn:1</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig /r:System.Xml.dll /r:System.dll /d:StronglyNamedAssembly -warn:1</flags>
       <output>nunit.framework.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_2_0/nunit.framework.dll</library_output>
     <project dir="nunit24/NUnitCore/interfaces" library="nunit.core.interfaces-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -debug -r:nunit.framework.dll -r:System.dll /d:StronglyNamedAssembly -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig</flags>
+      <flags>/codepage:65001 -debug -r:nunit.framework.dll -r:System.dll /d:StronglyNamedAssembly -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig</flags>
       <output>nunit.core.interfaces.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_2_0/nunit.core.interfaces.dll</library_output>
     <project dir="nunit20/NUnitCore/core" library="nunit.core-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -r:nunit.framework.dll -r:nunit.core.interfaces.dll -r:System.dll /d:StronglyNamedAssembly -warn:1 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig</flags>
+      <flags>/codepage:65001 -r:nunit.framework.dll -r:nunit.core.interfaces.dll -r:System.dll /d:StronglyNamedAssembly -warn:1 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig</flags>
       <output>nunit.core.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_2_0/nunit.core.dll</library_output>
     <project dir="nunit24/ClientUtilities/util" library="nunit.util-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 /resource:Transform.resources,NUnit.Util.Transform.resources -r:nunit.core.dll -r:nunit.core.interfaces.dll -r:System.dll -r:System.Xml.dll -r:System.Runtime.Remoting.dll /d:MONO /d:StronglyNamedAssembly -warn:1 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig</flags>
+      <flags>/codepage:65001 /resource:Transform.resources,NUnit.Util.Transform.resources -r:nunit.core.dll -r:nunit.core.interfaces.dll -r:System.dll -r:System.Xml.dll -r:System.Runtime.Remoting.dll /d:MONO /d:StronglyNamedAssembly -warn:1 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig</flags>
       <output>nunit.util.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_2_0/nunit.util.dll</library_output>
     <project dir="nunit24/NUnitMocks/mocks" library="nunit.mocks-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -debug -r:nunit.framework.dll -r:System.dll /d:StronglyNamedAssembly -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig</flags>
+      <flags>/codepage:65001 -debug -r:nunit.framework.dll -r:System.dll /d:StronglyNamedAssembly -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig</flags>
       <output>nunit.mocks.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_2_0/nunit.mocks.dll</library_output>
     <project dir="nunit24/NUnitExtensions/framework" library="nunit.framework.extensions-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig -debug /r:System.Xml.dll /r:System.dll /d:StronglyNamedAssembly</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig -debug /r:System.Xml.dll /r:System.dll /d:StronglyNamedAssembly</flags>
       <output>nunit.framework.extensions.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_2_0/nunit.framework.extensions.dll</library_output>
     <project dir="nunit24/NUnitExtensions/core" library="nunit.core.extensions-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig -debug /r:nunit.core.dll /r:nunit.core.interfaces.dll /r:System.Xml.dll /r:System.dll /d:StronglyNamedAssembly</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig -debug /r:nunit.core.dll /r:nunit.core.interfaces.dll /r:System.Xml.dll /r:System.dll /d:StronglyNamedAssembly</flags>
       <output>nunit.core.extensions.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_2_0/nunit.core.extensions.dll</library_output>
     <project dir="nunit24/ConsoleRunner/nunit-console" library="nunit-console-runner-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -r:nunit.core.dll -r:nunit.core.interfaces.dll -r:nunit.util.dll -r:System.dll -r:System.Xml.dll /d:MONO /d:StronglyNamedAssembly -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig</flags>
+      <flags>/codepage:65001 -r:nunit.core.dll -r:nunit.core.interfaces.dll -r:nunit.util.dll -r:System.dll -r:System.Xml.dll /d:MONO /d:StronglyNamedAssembly -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig</flags>
       <output>nunit-console-runner.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_2_0/nunit-console-runner.dll</library_output>
     <project dir="nunit24/ConsoleRunner/nunit-console-exe" library="nunit-console-net_2_0">
       <boot></boot>
       <mcs>MONO_PATH=./../../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 /r:nunit.framework.dll /r:nunit.util.dll /r:nunit.core.dll /r:nunit-console-runner.dll -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig</flags>
+      <flags>/codepage:65001 /r:nunit.framework.dll /r:nunit.util.dll /r:nunit.core.dll /r:nunit-console-runner.dll -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig</flags>
       <output>nunit-console.exe</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_2_0/nunit-console.exe</library_output>
     <project dir="ilasm" library="ilasm-net_2_0">
       <boot></boot>
       <mcs>MONO_PATH=./../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 /lib:../class/lib/net_2_0 /r:../class/lib/net_2_0/PEAPI.dll /r:Mono.CompilerServices.SymbolWriter.dll /r:Mono.Security.dll -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig</flags>
+      <flags>/codepage:65001 /lib:../class/lib/net_2_0 /r:../class/lib/net_2_0/PEAPI.dll /r:Mono.CompilerServices.SymbolWriter.dll /r:Mono.Security.dll -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig</flags>
       <output>ilasm.exe</output>
       <built_sources></built_sources>
       <library_output>./../class/lib/net_2_0/ilasm.exe</library_output>
     <project dir="tools/al" library="al-net_2_0">
       <boot></boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -r:Mono.Security.dll -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig</flags>
+      <flags>/codepage:65001 -r:Mono.Security.dll -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig</flags>
       <output>al.exe</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_2_0/al.exe</library_output>
     <project dir="tools/linker" library="monolinker-net_2_0">
       <boot></boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 /r:./../../class/lib/net_2_0/Mono.Cecil.dll /r:System.Xml.dll -keyfile:../../class/mono.snk -resource:Descriptors/mscorlib.xml -resource:Descriptors/System.xml -resource:Descriptors/System.Drawing.xml -resource:Descriptors/System.Web.xml -resource:Descriptors/Mono.Posix.xml -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig</flags>
+      <flags>/codepage:65001 /r:./../../class/lib/net_2_0/Mono.Cecil.dll /r:System.Xml.dll -keyfile:../../class/mono.snk -resource:Descriptors/mscorlib.xml -resource:Descriptors/System.xml -resource:Descriptors/System.Drawing.xml -resource:Descriptors/System.Web.xml -resource:Descriptors/Mono.Posix.xml -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig</flags>
       <output>monolinker.exe</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_2_0/monolinker.exe</library_output>
     <project dir="tools/tuner" library="Mono.Tuner-net_2_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -r:System.dll -r:System.Core.dll -r:System.Xml.dll -r:./../../class/lib/net_2_0/monolinker.exe -r:./../../class/lib/net_2_0/Mono.Cecil.dll -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig</flags>
+      <flags>/codepage:65001 -r:System.dll -r:System.Core.dll -r:System.Xml.dll -r:./../../class/lib/net_2_0/monolinker.exe -r:./../../class/lib/net_2_0/Mono.Cecil.dll -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig</flags>
       <output>Mono.Tuner.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_2_0/Mono.Tuner.dll</library_output>
     <project dir="tools/culevel" library="culevel-net_2_0">
       <boot></boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig</flags>
       <output>culevel.exe</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_2_0/culevel.exe</library_output>
     <project dir="tools/genxs" library="genxs-net_2_0">
       <boot></boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -r:System.Xml.dll -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig</flags>
+      <flags>/codepage:65001 -r:System.Xml.dll -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig</flags>
       <output>genxs.exe</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_2_0/genxs.exe</library_output>
     <project dir="tools/mkbundle" library="mkbundle-net_2_0">
       <boot></boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -r:Mono.Posix.dll -r:ICSharpCode.SharpZipLib.dll -resource:template.c -resource:template_z.c -resource:template_main.c -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig</flags>
+      <flags>/codepage:65001 -r:Mono.Posix.dll -r:ICSharpCode.SharpZipLib.dll -resource:template.c -resource:template_z.c -resource:template_main.c -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig</flags>
       <output>mkbundle.exe</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_2_0/mkbundle.exe</library_output>
     <project dir="tools/monop" library="monop-net_2_0">
       <boot></boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig</flags>
       <output>monop.exe</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_2_0/monop.exe</library_output>
     <project dir="tools/mono-service" library="mono-service-net_2_0">
       <boot></boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -r:System.ServiceProcess.dll -r:Mono.Posix.dll -unsafe -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig</flags>
+      <flags>/codepage:65001 -r:System.ServiceProcess.dll -r:Mono.Posix.dll -unsafe -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig</flags>
       <output>mono-service.exe</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_2_0/mono-service.exe</library_output>
     <project dir="tools/mono-xsd" library="xsd-net_2_0">
       <boot></boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -r:System.Xml.dll -r:System.Data.dll -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig</flags>
+      <flags>/codepage:65001 -r:System.Xml.dll -r:System.Data.dll -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig</flags>
       <output>xsd.exe</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_2_0/xsd.exe</library_output>
     <project dir="tools/resgen" library="resgen-net_2_0">
       <boot></boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig</flags>
       <output>resgen.exe</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_2_0/resgen.exe</library_output>
     <project dir="tools/gacutil" library="gacutil-net_2_0">
       <boot></boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -r:Mono.Security.dll -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig</flags>
+      <flags>/codepage:65001 -r:Mono.Security.dll -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig</flags>
       <output>gacutil.exe</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_2_0/gacutil.exe</library_output>
     <project dir="tools/wsdl" library="wsdl-net_2_0">
       <boot></boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -r:System.Xml.dll -r:System.Web.Services.dll -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig</flags>
+      <flags>/codepage:65001 -r:System.Xml.dll -r:System.Web.Services.dll -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig</flags>
       <output>wsdl.exe</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_2_0/wsdl.exe</library_output>
     <project dir="tools/xbuild" library="xbuild-net_2_0">
       <boot></boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -r:Microsoft.Build.Framework.dll -r:Microsoft.Build.Utilities.dll -r:Microsoft.Build.Engine.dll -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig</flags>
+      <flags>/codepage:65001 -r:Microsoft.Build.Framework.dll -r:Microsoft.Build.Utilities.dll -r:Microsoft.Build.Engine.dll -d:NET_1_1 -d:NET_2_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig</flags>
       <output>xbuild.exe</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_2_0/xbuild.exe</library_output>
     <project dir="class/Microsoft.Build.Framework" library="Microsoft.Build.Framework-net_3_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_3_5 -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig /r:mscorlib.dll /r:System.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_3_5 -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig /r:mscorlib.dll /r:System.dll</flags>
       <output>Microsoft.Build.Framework.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_3_5/Microsoft.Build.Framework.dll</library_output>
     <project dir="class/Microsoft.Build.Framework" library="Microsoft.Build.Framework-tests-net_3_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_3_5 -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -r:./../../class/lib/net_3_5/Microsoft.Build.Framework.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_3_5 -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_3_5/Microsoft.Build.Framework.dll</flags>
       <output>Microsoft.Build.Framework_test_net_3_5.dll</output>
       <built_sources></built_sources>
       <library_output>Microsoft.Build.Framework_test_net_3_5.dll</library_output>
     <project dir="class/Microsoft.Build.Utilities" library="Microsoft.Build.Utilities-net_3_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_3_5 -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig /r:mscorlib.dll /r:System.dll /r:./../../class/lib/net_3_5/Microsoft.Build.Framework.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_3_5 -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig /r:mscorlib.dll /r:System.dll /r:./../../class/lib/net_3_5/Microsoft.Build.Framework.dll</flags>
       <output>Microsoft.Build.Utilities.v3.5.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_3_5/Microsoft.Build.Utilities.v3.5.dll</library_output>
     <project dir="class/Microsoft.Build.Utilities" library="Microsoft.Build.Utilities-tests-net_3_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_3_5 -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -r:./../../class/lib/net_3_5/Microsoft.Build.Utilities.v3.5.dll /r:./../../class/lib/net_3_5/Microsoft.Build.Framework.dll -r:System.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_3_5 -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_3_5/Microsoft.Build.Utilities.v3.5.dll /r:./../../class/lib/net_3_5/Microsoft.Build.Framework.dll -r:System.dll</flags>
       <output>Microsoft.Build.Utilities_test_net_3_5.dll</output>
       <built_sources></built_sources>
       <library_output>Microsoft.Build.Utilities_test_net_3_5.dll</library_output>
     <project dir="class/Microsoft.Build.Engine" library="Microsoft.Build.Engine-net_3_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_3_5 -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig /r:mscorlib.dll /r:System.dll /r:System.Core.dll /r:System.Xml.dll /r:./../../class/lib/net_3_5/Microsoft.Build.Framework.dll /r:Microsoft.Build.Utilities.v3.5.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_3_5 -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig /r:mscorlib.dll /r:System.dll /r:System.Core.dll /r:System.Xml.dll /r:./../../class/lib/net_3_5/Microsoft.Build.Framework.dll /r:Microsoft.Build.Utilities.v3.5.dll</flags>
       <output>Microsoft.Build.Engine.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_3_5/Microsoft.Build.Engine.dll</library_output>
     <project dir="class/Microsoft.Build.Engine" library="Microsoft.Build.Engine-tests-net_3_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_3_5 -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -r:./../../class/lib/net_3_5/Microsoft.Build.Engine.dll /r:./../../class/lib/net_3_5/Microsoft.Build.Framework.dll /r:Microsoft.Build.Utilities.v3.5.dll /r:System.Xml.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_3_5 -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_3_5/Microsoft.Build.Engine.dll /r:./../../class/lib/net_3_5/Microsoft.Build.Framework.dll /r:Microsoft.Build.Utilities.v3.5.dll /r:System.Xml.dll</flags>
       <output>Microsoft.Build.Engine_test_net_3_5.dll</output>
       <built_sources></built_sources>
       <library_output>Microsoft.Build.Engine_test_net_3_5.dll</library_output>
     <project dir="class/Microsoft.Build.Tasks" library="Microsoft.Build.Tasks-net_3_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_3_5 -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig /r:mscorlib.dll /r:System.dll /r:System.Core.dll /r:System.Xml.dll /r:System.Windows.Forms.dll /r:Microsoft.Build.Utilities.v3.5.dll /r:./../../class/lib/net_3_5/Microsoft.Build.Framework.dll /r:./../../class/lib/net_3_5/Microsoft.Build.Engine.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_3_5 -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig /r:mscorlib.dll /r:System.dll /r:System.Core.dll /r:System.Xml.dll /r:System.Windows.Forms.dll /r:Microsoft.Build.Utilities.v3.5.dll /r:./../../class/lib/net_3_5/Microsoft.Build.Framework.dll /r:./../../class/lib/net_3_5/Microsoft.Build.Engine.dll</flags>
       <output>Microsoft.Build.Tasks.v3.5.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_3_5/Microsoft.Build.Tasks.v3.5.dll</library_output>
     <project dir="class/Microsoft.Build.Tasks" library="Microsoft.Build.Tasks-tests-net_3_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_3_5 -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -r:./../../class/lib/net_3_5/Microsoft.Build.Tasks.v3.5.dll /r:./../../class/lib/net_3_5/Microsoft.Build.Engine.dll /r:./../../class/lib/net_3_5/Microsoft.Build.Framework.dll /r:Microsoft.Build.Utilities.v3.5.dll /r:System.Core.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_3_5 -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_3_5/Microsoft.Build.Tasks.v3.5.dll /r:./../../class/lib/net_3_5/Microsoft.Build.Engine.dll /r:./../../class/lib/net_3_5/Microsoft.Build.Framework.dll /r:Microsoft.Build.Utilities.v3.5.dll /r:System.Core.dll</flags>
       <output>Microsoft.Build.Tasks_test_net_3_5.dll</output>
       <built_sources></built_sources>
       <library_output>Microsoft.Build.Tasks_test_net_3_5.dll</library_output>
     <project dir="tools/xbuild" library="xbuild-net_3_5">
       <boot></boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -r:./../../class/lib/net_3_5/Microsoft.Build.Framework.dll -r:Microsoft.Build.Utilities.v3.5.dll -r:./../../class/lib/net_3_5/Microsoft.Build.Engine.dll -d:NET_1_1 -d:NET_2_0 -d:NET_3_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_3_5 -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug /noconfig</flags>
+      <flags>/codepage:65001 -r:./../../class/lib/net_3_5/Microsoft.Build.Framework.dll -r:Microsoft.Build.Utilities.v3.5.dll -r:./../../class/lib/net_3_5/Microsoft.Build.Engine.dll -d:NET_1_1 -d:NET_2_0 -d:NET_3_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_3_5 -lib:./../../class/lib/net_2_0 -r:mscorlib.dll -debug -optimize /noconfig</flags>
       <output>xbuild.exe</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_3_5/xbuild.exe</library_output>
     <project dir="class/corlib" library="corlib-net_4_0">
       <boot>true</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -unsafe -nostdlib -nowarn:612,618 -d:INSIDE_CORLIB -d:LIBC -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 /noconfig -resource:resources/collation.core.bin -resource:resources/collation.tailoring.bin -resource:resources/collation.cjkCHS.bin -resource:resources/collation.cjkCHT.bin -resource:resources/collation.cjkJA.bin -resource:resources/collation.cjkKO.bin -resource:resources/collation.cjkKOlv2.bin --runtime:v4</flags>
+      <flags>/codepage:65001 -unsafe -nostdlib -nowarn:612,618 -d:INSIDE_CORLIB -d:LIBC -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -optimize /noconfig -resource:resources/collation.core.bin -resource:resources/collation.tailoring.bin -resource:resources/collation.cjkCHS.bin -resource:resources/collation.cjkCHT.bin -resource:resources/collation.cjkJA.bin -resource:resources/collation.cjkKO.bin -resource:resources/collation.cjkKOlv2.bin --runtime:v4</flags>
       <output>mscorlib.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_0/tmp/mscorlib.dll</library_output>
     <project dir="class/corlib" library="corlib-tests-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -unsafe -nostdlib -nowarn:612,618 -d:INSIDE_CORLIB -d:LIBC -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:./../../class/lib/net_4_0/mscorlib.dll -debug+ -debug:full -nowarn:168,219,618,672 -unsafe -r:Mono.Posix.dll -r:System.Core.dll -define:MONO_DATACONVERTER_STATIC_METHODS</flags>
+      <flags>/codepage:65001 -unsafe -nostdlib -nowarn:612,618 -d:INSIDE_CORLIB -d:LIBC -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -optimize -r:./../../class/lib/net_4_0/mscorlib.dll -debug+ -debug:full -nowarn:168,219,618,672 -unsafe -r:Mono.Posix.dll -r:System.Core.dll -define:MONO_DATACONVERTER_STATIC_METHODS</flags>
       <output>corlib_test_net_4_0.dll</output>
       <built_sources></built_sources>
       <library_output>corlib_test_net_4_0.dll</library_output>
     <project dir="class/System" library="System-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll /noconfig -nowarn:618 -d:CONFIGURATION_2_0 -unsafe -resource:resources/Asterisk.wav -resource:resources/Beep.wav -resource:resources/Exclamation.wav -resource:resources/Hand.wav -resource:resources/Question.wav -r:PrebuiltSystem=../lib/net_4_0/System.dll -d:XML_DEP -r:System.Xml.dll -d:SECURITY_DEP -r:Mono.Security.dll -d:CONFIGURATION_DEP -r:System.Configuration.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize /noconfig -nowarn:618 -d:CONFIGURATION_2_0 -unsafe -resource:resources/Asterisk.wav -resource:resources/Beep.wav -resource:resources/Exclamation.wav -resource:resources/Hand.wav -resource:resources/Question.wav -r:PrebuiltSystem=../lib/net_4_0/System.dll -d:XML_DEP -r:System.Xml.dll -d:SECURITY_DEP -r:Mono.Security.dll -d:CONFIGURATION_DEP -r:System.Configuration.dll</flags>
       <output>System.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_0/tmp/System.dll</library_output>
     <project dir="class/System" library="System-tests-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -r:./../../class/lib/net_4_0/System.dll -r:System.Drawing.dll -r:Mono.Security.dll -r:System.Data -r:System.Xml.dll -r:System.Core.dll -nowarn:0618 -nowarn:219 -nowarn:67 -nowarn:169 -nowarn:612 -resource:Test/System/test-uri-props.txt,test-uri-props.txt -resource:Test/System/test-uri-props-manual.txt,test-uri-props-manual.txt -resource:Test/System/test-uri-relative-props.txt,test-uri-relative-props.txt -r:System.Configuration</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize -r:./../../class/lib/net_4_0/System.dll -r:System.Drawing.dll -r:Mono.Security.dll -r:System.Data -r:System.Xml.dll -r:System.Core.dll -nowarn:0618 -nowarn:219 -nowarn:67 -nowarn:169 -nowarn:612 -resource:Test/System/test-uri-props.txt,test-uri-props.txt -resource:Test/System/test-uri-props-manual.txt,test-uri-props-manual.txt -resource:Test/System/test-uri-relative-props.txt,test-uri-relative-props.txt -r:System.Configuration</flags>
       <output>System_test_net_4_0.dll</output>
       <built_sources></built_sources>
       <library_output>System_test_net_4_0.dll</library_output>
     <project dir="class/System.XML" library="System.Xml-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll /noconfig -r:mscorlib.dll -r:System.dll -nowarn:0618,0612,0642</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize /noconfig -r:mscorlib.dll -r:System.dll -nowarn:0618,0612,0642</flags>
       <output>System.Xml.dll</output>
       <built_sources>System.Xml.XPath/Parser.cs Mono.Xml.Xsl/PatternParser.cs Mono.Xml.Xsl/PatternTokenizer.cs</built_sources>
       <library_output>./../../class/lib/net_4_0/tmp/System.Xml.dll</library_output>
     <project dir="class/System.XML" library="System.Xml-tests-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -r:./../../class/lib/net_4_0/System.Xml.dll -r:mscorlib.dll -r:System.dll -nowarn:0618,0612,0642 -nowarn:0618 -nowarn:219 -nowarn:169 -r:System.Data.dll -r:System.Core.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize -r:./../../class/lib/net_4_0/System.Xml.dll -r:mscorlib.dll -r:System.dll -nowarn:0618,0612,0642 -nowarn:0618 -nowarn:219 -nowarn:169 -r:System.Data.dll -r:System.Core.dll</flags>
       <output>System.Xml_test_net_4_0.dll</output>
       <built_sources>System.Xml.XPath/Parser.cs Mono.Xml.Xsl/PatternParser.cs Mono.Xml.Xsl/PatternTokenizer.cs</built_sources>
       <library_output>System.Xml_test_net_4_0.dll</library_output>
     <project dir="class/Mono.CompilerServices.SymbolWriter" library="Mono.CompilerServices.SymbolWriter-net_4_0">
       <boot>true</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll /noconfig /r:System.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize /noconfig /r:System.dll</flags>
       <output>Mono.CompilerServices.SymbolWriter.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_0/tmp/Mono.CompilerServices.SymbolWriter.dll</library_output>
     <project dir="class/Mono.Posix" library="Mono.Posix-net_4_0">
       <boot>true</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll /noconfig /unsafe /r:mscorlib.dll /r:System.dll /nowarn:0618,612</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize /noconfig /unsafe /r:mscorlib.dll /r:System.dll /nowarn:0618,612</flags>
       <output>Mono.Posix.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_0/Mono.Posix.dll</library_output>
     <project dir="class/Mono.Posix" library="Mono.Posix-tests-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -r:./../../class/lib/net_4_0/Mono.Posix.dll /r:Mono.Posix.dll /r:System.dll /nowarn:0219,0618</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize -r:./../../class/lib/net_4_0/Mono.Posix.dll /r:Mono.Posix.dll /r:System.dll /nowarn:0219,0618</flags>
       <output>Mono.Posix_test_net_4_0.dll</output>
       <built_sources></built_sources>
       <library_output>Mono.Posix_test_net_4_0.dll</library_output>
     <project dir="class/System.Core" library="System.Core-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll /noconfig -d:INSIDE_SYSCORE -d:LIBC /r:mscorlib.dll /r:System.dll -unsafe -d:NET_3_5 -nowarn:1720 -d:FEATURE_CORE_DLR,FEATURE_REFEMIT,FEATURE_PDBEMIT -r:Mono.Posix.dll -unsafe</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize /noconfig -d:INSIDE_SYSCORE -d:LIBC /r:mscorlib.dll /r:System.dll -unsafe -d:NET_3_5 -nowarn:1720 -d:FEATURE_CORE_DLR,FEATURE_REFEMIT,FEATURE_PDBEMIT -r:Mono.Posix.dll -unsafe</flags>
       <output>System.Core.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_0/System.Core.dll</library_output>
     <project dir="class/System.Core" library="System.Core-tests-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -r:./../../class/lib/net_4_0/System.Core.dll -d:INSIDE_SYSCORE -d:LIBC /r:mscorlib.dll /r:System.dll -unsafe -d:NET_3_5 -nowarn:1720 -d:FEATURE_CORE_DLR,FEATURE_REFEMIT,FEATURE_PDBEMIT -r:Mono.Posix.dll -unsafe</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize -r:./../../class/lib/net_4_0/System.Core.dll -d:INSIDE_SYSCORE -d:LIBC /r:mscorlib.dll /r:System.dll -unsafe -d:NET_3_5 -nowarn:1720 -d:FEATURE_CORE_DLR,FEATURE_REFEMIT,FEATURE_PDBEMIT -r:Mono.Posix.dll -unsafe</flags>
       <output>System.Core_test_net_4_0.dll</output>
       <built_sources></built_sources>
       <library_output>System.Core_test_net_4_0.dll</library_output>
     <project dir="class/Mono.Security" library="Mono.Security-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll /noconfig -r:System.dll -unsafe -nowarn:1030</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize /noconfig -r:System.dll -unsafe -nowarn:1030</flags>
       <output>Mono.Security.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_0/tmp/Mono.Security.dll</library_output>
     <project dir="class/Mono.Security" library="Mono.Security-tests-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -r:./../../class/lib/net_4_0/Mono.Security.dll -r:System.dll -unsafe -nowarn:1030 -nowarn:169,219,618,672</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize -r:./../../class/lib/net_4_0/Mono.Security.dll -r:System.dll -unsafe -nowarn:1030 -nowarn:169,219,618,672</flags>
       <output>Mono.Security_test_net_4_0.dll</output>
       <built_sources></built_sources>
       <library_output>Mono.Security_test_net_4_0.dll</library_output>
     <project dir="class/System" library="System-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll /noconfig -nowarn:618 -d:CONFIGURATION_2_0 -unsafe -resource:resources/Asterisk.wav -resource:resources/Beep.wav -resource:resources/Exclamation.wav -resource:resources/Hand.wav -resource:resources/Question.wav -r:PrebuiltSystem=../lib/net_4_0/System.dll -d:XML_DEP -r:System.Xml.dll -d:SECURITY_DEP -r:Mono.Security.dll -d:CONFIGURATION_DEP -r:System.Configuration.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize /noconfig -nowarn:618 -d:CONFIGURATION_2_0 -unsafe -resource:resources/Asterisk.wav -resource:resources/Beep.wav -resource:resources/Exclamation.wav -resource:resources/Hand.wav -resource:resources/Question.wav -r:PrebuiltSystem=../lib/net_4_0/System.dll -d:XML_DEP -r:System.Xml.dll -d:SECURITY_DEP -r:Mono.Security.dll -d:CONFIGURATION_DEP -r:System.Configuration.dll</flags>
       <output>System.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_0/tmp/System.dll</library_output>
     <project dir="class/System" library="System-tests-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -r:./../../class/lib/net_4_0/System.dll -r:System.Drawing.dll -r:Mono.Security.dll -r:System.Data -r:System.Xml.dll -r:System.Core.dll -nowarn:0618 -nowarn:219 -nowarn:67 -nowarn:169 -nowarn:612 -resource:Test/System/test-uri-props.txt,test-uri-props.txt -resource:Test/System/test-uri-props-manual.txt,test-uri-props-manual.txt -resource:Test/System/test-uri-relative-props.txt,test-uri-relative-props.txt -r:System.Configuration</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize -r:./../../class/lib/net_4_0/System.dll -r:System.Drawing.dll -r:Mono.Security.dll -r:System.Data -r:System.Xml.dll -r:System.Core.dll -nowarn:0618 -nowarn:219 -nowarn:67 -nowarn:169 -nowarn:612 -resource:Test/System/test-uri-props.txt,test-uri-props.txt -resource:Test/System/test-uri-props-manual.txt,test-uri-props-manual.txt -resource:Test/System/test-uri-relative-props.txt,test-uri-relative-props.txt -r:System.Configuration</flags>
       <output>System_test_net_4_0.dll</output>
       <built_sources></built_sources>
       <library_output>System_test_net_4_0.dll</library_output>
     <project dir="class/System.Security" library="System.Security-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll /noconfig -nowarn:618 -r:mscorlib.dll -r:System.dll -r:System.Xml.dll -r:Mono.Security.dll -nowarn:414 -d:SECURITY_DEP</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize /noconfig -nowarn:618 -r:mscorlib.dll -r:System.dll -r:System.Xml.dll -r:Mono.Security.dll -nowarn:414 -d:SECURITY_DEP</flags>
       <output>System.Security.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_0/System.Security.dll</library_output>
     <project dir="class/System.Security" library="System.Security-tests-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -r:./../../class/lib/net_4_0/System.Security.dll -nowarn:618 -r:mscorlib.dll -r:System.dll -r:System.Xml.dll -r:Mono.Security.dll -nowarn:414 -d:SECURITY_DEP -nowarn:169,219,1595 -nowarn:168,183,414</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize -r:./../../class/lib/net_4_0/System.Security.dll -nowarn:618 -r:mscorlib.dll -r:System.dll -r:System.Xml.dll -r:Mono.Security.dll -nowarn:414 -d:SECURITY_DEP -nowarn:169,219,1595 -nowarn:168,183,414</flags>
       <output>System.Security_test_net_4_0.dll</output>
       <built_sources></built_sources>
       <library_output>System.Security_test_net_4_0.dll</library_output>
     <project dir="class/System.Configuration" library="System.Configuration-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll /noconfig -r:mscorlib.dll -r:System.dll -r:System.Xml.dll -r:System.Security.dll -nowarn:618</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize /noconfig -r:mscorlib.dll -r:System.dll -r:System.Xml.dll -r:System.Security.dll -nowarn:618</flags>
       <output>System.Configuration.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_0/tmp/System.Configuration.dll</library_output>
     <project dir="class/System.Configuration" library="System.Configuration-tests-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -r:./../../class/lib/net_4_0/System.Configuration.dll -r:mscorlib.dll -r:System.dll -r:System.Xml.dll -r:System.Security.dll -nowarn:618</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize -r:./../../class/lib/net_4_0/System.Configuration.dll -r:mscorlib.dll -r:System.dll -r:System.Xml.dll -r:System.Security.dll -nowarn:618</flags>
       <output>System.Configuration_test_net_4_0.dll</output>
       <built_sources></built_sources>
       <library_output>System.Configuration_test_net_4_0.dll</library_output>
     <project dir="class/System" library="System-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll /noconfig -nowarn:618 -d:CONFIGURATION_2_0 -unsafe -resource:resources/Asterisk.wav -resource:resources/Beep.wav -resource:resources/Exclamation.wav -resource:resources/Hand.wav -resource:resources/Question.wav -r:PrebuiltSystem=../lib/net_4_0/System.dll -d:XML_DEP -r:System.Xml.dll -d:SECURITY_DEP -r:Mono.Security.dll -d:CONFIGURATION_DEP -r:System.Configuration.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize /noconfig -nowarn:618 -d:CONFIGURATION_2_0 -unsafe -resource:resources/Asterisk.wav -resource:resources/Beep.wav -resource:resources/Exclamation.wav -resource:resources/Hand.wav -resource:resources/Question.wav -r:PrebuiltSystem=../lib/net_4_0/System.dll -d:XML_DEP -r:System.Xml.dll -d:SECURITY_DEP -r:Mono.Security.dll -d:CONFIGURATION_DEP -r:System.Configuration.dll</flags>
       <output>System.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_0/tmp/System.dll</library_output>
     <project dir="class/System" library="System-tests-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -r:./../../class/lib/net_4_0/System.dll -r:System.Drawing.dll -r:Mono.Security.dll -r:System.Data -r:System.Xml.dll -r:System.Core.dll -nowarn:0618 -nowarn:219 -nowarn:67 -nowarn:169 -nowarn:612 -resource:Test/System/test-uri-props.txt,test-uri-props.txt -resource:Test/System/test-uri-props-manual.txt,test-uri-props-manual.txt -resource:Test/System/test-uri-relative-props.txt,test-uri-relative-props.txt -r:System.Configuration</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize -r:./../../class/lib/net_4_0/System.dll -r:System.Drawing.dll -r:Mono.Security.dll -r:System.Data -r:System.Xml.dll -r:System.Core.dll -nowarn:0618 -nowarn:219 -nowarn:67 -nowarn:169 -nowarn:612 -resource:Test/System/test-uri-props.txt,test-uri-props.txt -resource:Test/System/test-uri-props-manual.txt,test-uri-props-manual.txt -resource:Test/System/test-uri-relative-props.txt,test-uri-relative-props.txt -r:System.Configuration</flags>
       <output>System_test_net_4_0.dll</output>
       <built_sources></built_sources>
       <library_output>System_test_net_4_0.dll</library_output>
     <project dir="class/System.XML" library="System.Xml-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll /noconfig -r:mscorlib.dll -r:System.dll -nowarn:0618,0612,0642</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize /noconfig -r:mscorlib.dll -r:System.dll -nowarn:0618,0612,0642</flags>
       <output>System.Xml.dll</output>
       <built_sources>System.Xml.XPath/Parser.cs Mono.Xml.Xsl/PatternParser.cs Mono.Xml.Xsl/PatternTokenizer.cs</built_sources>
       <library_output>./../../class/lib/net_4_0/tmp/System.Xml.dll</library_output>
     <project dir="class/System.XML" library="System.Xml-tests-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -r:./../../class/lib/net_4_0/System.Xml.dll -r:mscorlib.dll -r:System.dll -nowarn:0618,0612,0642 -nowarn:0618 -nowarn:219 -nowarn:169 -r:System.Data.dll -r:System.Core.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize -r:./../../class/lib/net_4_0/System.Xml.dll -r:mscorlib.dll -r:System.dll -nowarn:0618,0612,0642 -nowarn:0618 -nowarn:219 -nowarn:169 -r:System.Data.dll -r:System.Core.dll</flags>
       <output>System.Xml_test_net_4_0.dll</output>
       <built_sources>System.Xml.XPath/Parser.cs Mono.Xml.Xsl/PatternParser.cs Mono.Xml.Xsl/PatternTokenizer.cs</built_sources>
       <library_output>System.Xml_test_net_4_0.dll</library_output>
     <project dir="class/I18N/Common" library="I18N-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 /r:mscorlib.dll /unsafe /define:DISABLE_UNSAFE -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_0 -r:mscorlib.dll /noconfig</flags>
+      <flags>/codepage:65001 /r:mscorlib.dll /unsafe /define:DISABLE_UNSAFE -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_0 -r:mscorlib.dll -optimize /noconfig</flags>
       <output>I18N.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_0/tmp/I18N.dll</library_output>
     <project dir="class/I18N/West" library="I18N.West-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 /r:mscorlib.dll /r:I18N.dll /unsafe -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_0 -r:mscorlib.dll /noconfig</flags>
+      <flags>/codepage:65001 /r:mscorlib.dll /r:I18N.dll /unsafe -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_0 -r:mscorlib.dll -optimize /noconfig</flags>
       <output>I18N.West.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_0/tmp/I18N.West.dll</library_output>
     <project dir="class/I18N/West" library="I18N.West-tests-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 /r:mscorlib.dll /r:I18N.dll /unsafe -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_0 -r:mscorlib.dll -r:./../../../class/lib/net_4_0/I18N.West.dll</flags>
+      <flags>/codepage:65001 /r:mscorlib.dll /r:I18N.dll /unsafe -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_0 -r:mscorlib.dll -optimize -r:./../../../class/lib/net_4_0/I18N.West.dll</flags>
       <output>I18N.West_test_net_4_0.dll</output>
       <built_sources></built_sources>
       <library_output>I18N.West_test_net_4_0.dll</library_output>
     <project dir="class/I18N/MidEast" library="I18N.MidEast-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 /r:mscorlib.dll /r:I18N.dll /unsafe -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_0 -r:mscorlib.dll /noconfig</flags>
+      <flags>/codepage:65001 /r:mscorlib.dll /r:I18N.dll /unsafe -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_0 -r:mscorlib.dll -optimize /noconfig</flags>
       <output>I18N.MidEast.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_0/tmp/I18N.MidEast.dll</library_output>
     <project dir="class/I18N/Other" library="I18N.Other-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 /r:mscorlib.dll /r:I18N.dll /unsafe -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_0 -r:mscorlib.dll /noconfig</flags>
+      <flags>/codepage:65001 /r:mscorlib.dll /r:I18N.dll /unsafe -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_0 -r:mscorlib.dll -optimize /noconfig</flags>
       <output>I18N.Other.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_0/tmp/I18N.Other.dll</library_output>
     <project dir="class/I18N/Rare" library="I18N.Rare-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 /r:mscorlib.dll /r:I18N.dll /unsafe -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_0 -r:mscorlib.dll /noconfig</flags>
+      <flags>/codepage:65001 /r:mscorlib.dll /r:I18N.dll /unsafe -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_0 -r:mscorlib.dll -optimize /noconfig</flags>
       <output>I18N.Rare.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_0/tmp/I18N.Rare.dll</library_output>
     <project dir="class/I18N/CJK" library="I18N.CJK-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 /unsafe /resource:big5.table /resource:gb2312.table /resource:jis.table /resource:ks.table /resource:gb18030.table /r:mscorlib.dll /r:I18N.dll /define:DISABLE_UNSAFE -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_0 -r:mscorlib.dll /noconfig</flags>
+      <flags>/codepage:65001 /unsafe /resource:big5.table /resource:gb2312.table /resource:jis.table /resource:ks.table /resource:gb18030.table /r:mscorlib.dll /r:I18N.dll /define:DISABLE_UNSAFE -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_0 -r:mscorlib.dll -optimize /noconfig</flags>
       <output>I18N.CJK.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_0/tmp/I18N.CJK.dll</library_output>
     <project dir="class/I18N/CJK" library="I18N.CJK-tests-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 /unsafe /resource:big5.table /resource:gb2312.table /resource:jis.table /resource:ks.table /resource:gb18030.table /r:mscorlib.dll /r:I18N.dll /define:DISABLE_UNSAFE -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_0 -r:mscorlib.dll -r:./../../../class/lib/net_4_0/I18N.CJK.dll</flags>
+      <flags>/codepage:65001 /unsafe /resource:big5.table /resource:gb2312.table /resource:jis.table /resource:ks.table /resource:gb18030.table /r:mscorlib.dll /r:I18N.dll /define:DISABLE_UNSAFE -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_0 -r:mscorlib.dll -optimize -r:./../../../class/lib/net_4_0/I18N.CJK.dll</flags>
       <output>I18N.CJK_test_net_4_0.dll</output>
       <built_sources></built_sources>
       <library_output>I18N.CJK_test_net_4_0.dll</library_output>
     <project dir="tools/resgen" library="resgen-net_4_0">
       <boot></boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll /noconfig</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize /noconfig</flags>
       <output>resgen.exe</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_0/resgen.exe</library_output>
     <project dir="class/System.Drawing" library="System.Drawing-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll /noconfig /unsafe /r:mscorlib.dll /r:System.dll -resource:Assembly/Mono.ico,Mono.ico -resource:Assembly/Information.ico,Information.ico -resource:Assembly/Error.ico,Error.ico -resource:Assembly/Warning.ico,Warning.ico -resource:Assembly/Question.ico,Question.ico</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize /noconfig /unsafe /r:mscorlib.dll /r:System.dll -resource:Assembly/Mono.ico,Mono.ico -resource:Assembly/Information.ico,Information.ico -resource:Assembly/Error.ico,Error.ico -resource:Assembly/Warning.ico,Warning.ico -resource:Assembly/Question.ico,Question.ico</flags>
       <output>System.Drawing.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_0/System.Drawing.dll</library_output>
     <project dir="class/System.Drawing" library="System.Drawing-tests-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -r:./../../class/lib/net_4_0/System.Drawing.dll /unsafe /r:mscorlib.dll /r:System.dll -resource:Assembly/Mono.ico,Mono.ico -resource:Assembly/Information.ico,Information.ico -resource:Assembly/Error.ico,Error.ico -resource:Assembly/Warning.ico,Warning.ico -resource:Assembly/Question.ico,Question.ico -define:TEST -resource:Test/resources/indexed.png,indexed.png -r:System.Drawing.dll -r:System.Runtime.Serialization.Formatters.Soap.dll -r:System.Xml.dll -nowarn:0618 -nowarn:219 -nowarn:169 -nowarn:1595</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize -r:./../../class/lib/net_4_0/System.Drawing.dll /unsafe /r:mscorlib.dll /r:System.dll -resource:Assembly/Mono.ico,Mono.ico -resource:Assembly/Information.ico,Information.ico -resource:Assembly/Error.ico,Error.ico -resource:Assembly/Warning.ico,Warning.ico -resource:Assembly/Question.ico,Question.ico -define:TEST -resource:Test/resources/indexed.png,indexed.png -r:System.Drawing.dll -r:System.Runtime.Serialization.Formatters.Soap.dll -r:System.Xml.dll -nowarn:0618 -nowarn:219 -nowarn:169 -nowarn:1595</flags>
       <output>System.Drawing_test_net_4_0.dll</output>
       <built_sources></built_sources>
       <library_output>System.Drawing_test_net_4_0.dll</library_output>
     <project dir="class/System.Transactions" library="System.Transactions-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll /noconfig /r:mscorlib.dll /r:System.dll /r:System.Configuration.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize /noconfig /r:mscorlib.dll /r:System.dll /r:System.Configuration.dll</flags>
       <output>System.Transactions.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_0/System.Transactions.dll</library_output>
     <project dir="class/System.Transactions" library="System.Transactions-tests-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -r:./../../class/lib/net_4_0/System.Transactions.dll /nowarn:1595 /r:mscorlib.dll /r:System.dll /r:System.Configuration.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize -r:./../../class/lib/net_4_0/System.Transactions.dll /nowarn:1595 /r:mscorlib.dll /r:System.dll /r:System.Configuration.dll</flags>
       <output>System.Transactions_test_net_4_0.dll</output>
       <built_sources></built_sources>
       <library_output>System.Transactions_test_net_4_0.dll</library_output>
     <project dir="class/System.EnterpriseServices" library="System.EnterpriseServices-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll /noconfig /nowarn:0168 /nowarn:0162 /r:mscorlib.dll /r:System.Transactions.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize /noconfig /nowarn:0168 /nowarn:0162 /r:mscorlib.dll /r:System.Transactions.dll</flags>
       <output>System.EnterpriseServices.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_0/System.EnterpriseServices.dll</library_output>
     <project dir="class/Mono.Data.Tds" library="Mono.Data.Tds-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll /noconfig /r:mscorlib.dll /r:System.dll /r:System.Xml.dll /r:Mono.Security.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize /noconfig /r:mscorlib.dll /r:System.dll /r:System.Xml.dll /r:Mono.Security.dll</flags>
       <output>Mono.Data.Tds.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_0/Mono.Data.Tds.dll</library_output>
     <project dir="class/Mono.Data.Tds" library="Mono.Data.Tds-tests-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -r:./../../class/lib/net_4_0/Mono.Data.Tds.dll /r:System.dll /r:System.Net.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize -r:./../../class/lib/net_4_0/Mono.Data.Tds.dll /r:System.dll /r:System.Net.dll</flags>
       <output>Mono.Data.Tds_test_net_4_0.dll</output>
       <built_sources></built_sources>
       <library_output>Mono.Data.Tds_test_net_4_0.dll</library_output>
     <project dir="class/System.Data" library="System.Data-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll /noconfig -nowarn:649 -unsafe -r:mscorlib.dll -r:./../../class/lib/net_4_0/System.dll -r:System.Xml.dll -r:System.EnterpriseServices.dll -r:Mono.Data.Tds.dll -r:System.Configuration.dll -r:System.Transactions.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize /noconfig -nowarn:649 -unsafe -r:mscorlib.dll -r:./../../class/lib/net_4_0/System.dll -r:System.Xml.dll -r:System.EnterpriseServices.dll -r:Mono.Data.Tds.dll -r:System.Configuration.dll -r:System.Transactions.dll</flags>
       <output>System.Data.dll</output>
       <built_sources>Mono.Data.SqlExpressions/Parser.cs</built_sources>
       <library_output>./../../class/lib/net_4_0/System.Data.dll</library_output>
     <project dir="class/System.Data" library="System.Data-tests-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -r:./../../class/lib/net_4_0/System.Data.dll -nowarn:649 -unsafe -r:mscorlib.dll -r:./../../class/lib/net_4_0/System.dll -r:System.Xml.dll -r:System.EnterpriseServices.dll -r:Mono.Data.Tds.dll -r:System.Configuration.dll -r:System.Transactions.dll -r:System.Core.dll -r:Mono.Data.Sqlite.dll -nowarn:618,169,612,219,168</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize -r:./../../class/lib/net_4_0/System.Data.dll -nowarn:649 -unsafe -r:mscorlib.dll -r:./../../class/lib/net_4_0/System.dll -r:System.Xml.dll -r:System.EnterpriseServices.dll -r:Mono.Data.Tds.dll -r:System.Configuration.dll -r:System.Transactions.dll -r:System.Core.dll -r:Mono.Data.Sqlite.dll -nowarn:618,169,612,219,168</flags>
       <output>System.Data_test_net_4_0.dll</output>
       <built_sources>Mono.Data.SqlExpressions/Parser.cs</built_sources>
       <library_output>System.Data_test_net_4_0.dll</library_output>
     <project dir="class/Accessibility" library="Accessibility-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll /noconfig /r:mscorlib.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize /noconfig /r:mscorlib.dll</flags>
       <output>Accessibility.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_0/Accessibility.dll</library_output>
     <project dir="class/Mono.WebBrowser" library="Mono.WebBrowser-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll /noconfig -r:System.dll -warn:1</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize /noconfig -r:System.dll -warn:1</flags>
       <output>Mono.WebBrowser.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_0/Mono.WebBrowser.dll</library_output>
     <project dir="class/Managed.Windows.Forms" library="System.Windows.Forms-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll /noconfig /unsafe /r:mscorlib.dll /r:System.dll /r:System.Xml.dll /r:System.Drawing.dll /r:Accessibility.dll /r:System.Data.dll /r:Mono.Posix.dll /r:Mono.WebBrowser /r:System.Configuration.dll @System.Windows.Forms.dll.resources -nowarn:618,612,809</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize /noconfig /unsafe /r:mscorlib.dll /r:System.dll /r:System.Xml.dll /r:System.Drawing.dll /r:Accessibility.dll /r:System.Data.dll /r:Mono.Posix.dll /r:Mono.WebBrowser /r:System.Configuration.dll @System.Windows.Forms.dll.resources -nowarn:618,612,809</flags>
       <output>System.Windows.Forms.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_0/System.Windows.Forms.dll</library_output>
     <project dir="class/Managed.Windows.Forms" library="System.Windows.Forms-tests-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -r:./../../class/lib/net_4_0/System.Windows.Forms.dll /r:System.Data.dll /r:System.Drawing.dll /r:Accessibility.dll -r:System.dll -r:System.Xml.dll -resource:Test/resources/a.cur,a.cur -resource:Test/resources/32x32.ico,32x32.ico -nowarn:618,612</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize -r:./../../class/lib/net_4_0/System.Windows.Forms.dll /r:System.Data.dll /r:System.Drawing.dll /r:Accessibility.dll -r:System.dll -r:System.Xml.dll -resource:Test/resources/a.cur,a.cur -resource:Test/resources/32x32.ico,32x32.ico -nowarn:618,612</flags>
       <output>System.Windows.Forms_test_net_4_0.dll</output>
       <built_sources></built_sources>
       <library_output>System.Windows.Forms_test_net_4_0.dll</library_output>
     <project dir="class/Mono.Data.Sqlite" library="Mono.Data.Sqlite-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll /noconfig /unsafe /r:System.dll /r:System.Data.dll /r:System.Transactions.dll /r:System.Xml.dll -resource:resources/SR.resources -resource:resources/SQLiteCommand.bmp -resource:resources/SQLiteConnection.bmp -resource:resources/SQLiteDataAdapter.bmp -d:SQLITE_STANDARD</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize /noconfig /unsafe /r:System.dll /r:System.Data.dll /r:System.Transactions.dll /r:System.Xml.dll -resource:resources/SR.resources -resource:resources/SQLiteCommand.bmp -resource:resources/SQLiteConnection.bmp -resource:resources/SQLiteDataAdapter.bmp -d:SQLITE_STANDARD</flags>
       <output>Mono.Data.Sqlite.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_0/Mono.Data.Sqlite.dll</library_output>
     <project dir="class/Mono.Data.Sqlite" library="Mono.Data.Sqlite-tests-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -r:./../../class/lib/net_4_0/Mono.Data.Sqlite.dll /unsafe /r:System.dll /r:System.Data.dll /r:System.Transactions.dll /r:System.Xml.dll -resource:resources/SR.resources -resource:resources/SQLiteCommand.bmp -resource:resources/SQLiteConnection.bmp -resource:resources/SQLiteDataAdapter.bmp -d:SQLITE_STANDARD /nowarn:618</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize -r:./../../class/lib/net_4_0/Mono.Data.Sqlite.dll /unsafe /r:System.dll /r:System.Data.dll /r:System.Transactions.dll /r:System.Xml.dll -resource:resources/SR.resources -resource:resources/SQLiteCommand.bmp -resource:resources/SQLiteConnection.bmp -resource:resources/SQLiteDataAdapter.bmp -d:SQLITE_STANDARD /nowarn:618</flags>
       <output>Mono.Data.Sqlite_test_net_4_0.dll</output>
       <built_sources></built_sources>
       <library_output>Mono.Data.Sqlite_test_net_4_0.dll</library_output>
     <project dir="class/System.Web.ApplicationServices" library="System.Web.ApplicationServices-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll /noconfig -r:System.dll -r:System.Configuration.dll -d:SYSTEM_WEB_APPLICATIONSERVICES</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize /noconfig -r:System.dll -r:System.Configuration.dll -d:SYSTEM_WEB_APPLICATIONSERVICES</flags>
       <output>System.Web.ApplicationServices.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_0/System.Web.ApplicationServices.dll</library_output>
     <project dir="class/System.Web" library="System.Web-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll /noconfig -unsafe -nowarn:612,618 -r:mscorlib.dll -r:System.dll -r:System.Drawing.dll -r:System.Data.dll -r:System.Xml.dll -r:System.EnterpriseServices.dll -d:INSIDE_SYSTEM_WEB -nowarn:618 -r:System.Configuration.dll -r:Mono.Data.Sqlite.dll -r:System.Web.ApplicationServices.dll /resource:resources/TranslationResources.resources /resource:resources/WebUIValidation.js /resource:resources/folder.gif /resource:resources/file.gif /resource:resources/computer.gif /resource:resources/arrow_minus.gif /resource:resources/arrow_noexpand.gif /resource:resources/arrow_plus.gif /resource:resources/arrow_up.gif /resource:resources/arrow_down.gif /resource:resources/box_full.gif /resource:resources/box_empty.gif /resource:resources/box_minus.gif /resource:resources/box_noexpand.gif /resource:resources/box_plus.gif /resource:resources/contact.gif /resource:resources/dot_empty.gif /resource:resources/dot_full.gif /resource:resources/dots.gif /resource:resources/inbox.gif /resource:resources/star_empty.gif /resource:resources/star_full.gif /resource:resources/warning.gif /resource:resources/TreeView_noexpand.gif /resource:resources/TreeView_dash.gif /resource:resources/TreeView_dashminus.gif /resource:resources/TreeView_dashplus.gif /resource:resources/TreeView_i.gif /resource:resources/TreeView_l.gif /resource:resources/TreeView_lminus.gif /resource:resources/TreeView_lplus.gif /resource:resources/TreeView_minus.gif /resource:resources/TreeView_plus.gif /resource:resources/TreeView_r.gif /resource:resources/TreeView_rminus.gif /resource:resources/TreeView_rplus.gif /resource:resources/TreeView_t.gif /resource:resources/TreeView_tminus.gif /resource:resources/TreeView_tplus.gif /resource:resources/transparent.gif /resource:resources/webform.js /resource:resources/WebUIValidation_2.0.js /resource:resources/ErrorTemplateCommon_Top.html /resource:resources/DefaultErrorTemplate_CustomErrorDefault.html /resource:resources/ErrorTemplateCommon_Bottom.html /resource:resources/DefaultErrorTemplate_StandardPage.html /resource:resources/HtmlizedExceptionPage_Top.html /resource:resources/HtmlizedExceptionPage_FileLongSource.html /resource:resources/HtmlizedExceptionPage_FileShortSource.html /resource:resources/HtmlizedExceptionPage_CompilerOutput.html /resource:System.Web.UI.WebControls/GridView.js /resource:System.Web.UI.WebControls/DetailsView.js /resource:System.Web.UI.WebControls/TreeView.js /resource:System.Web.UI.WebControls/Menu.js /resource:System.Web.UI.WebControls/MenuModern.js -define:WEBSERVICES_DEP -r:System.Web.Services.dll -define:MONOWEB_DEP -r:Mono.Web.dll -define:SYSTEMCORE_DEP -r:System.Core.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize /noconfig -unsafe -nowarn:612,618 -r:mscorlib.dll -r:System.dll -r:System.Drawing.dll -r:System.Data.dll -r:System.Xml.dll -r:System.EnterpriseServices.dll -d:INSIDE_SYSTEM_WEB -nowarn:618 -r:System.Configuration.dll -r:Mono.Data.Sqlite.dll -r:System.Web.ApplicationServices.dll /resource:resources/TranslationResources.resources /resource:resources/WebUIValidation.js /resource:resources/folder.gif /resource:resources/file.gif /resource:resources/computer.gif /resource:resources/arrow_minus.gif /resource:resources/arrow_noexpand.gif /resource:resources/arrow_plus.gif /resource:resources/arrow_up.gif /resource:resources/arrow_down.gif /resource:resources/box_full.gif /resource:resources/box_empty.gif /resource:resources/box_minus.gif /resource:resources/box_noexpand.gif /resource:resources/box_plus.gif /resource:resources/contact.gif /resource:resources/dot_empty.gif /resource:resources/dot_full.gif /resource:resources/dots.gif /resource:resources/inbox.gif /resource:resources/star_empty.gif /resource:resources/star_full.gif /resource:resources/warning.gif /resource:resources/TreeView_noexpand.gif /resource:resources/TreeView_dash.gif /resource:resources/TreeView_dashminus.gif /resource:resources/TreeView_dashplus.gif /resource:resources/TreeView_i.gif /resource:resources/TreeView_l.gif /resource:resources/TreeView_lminus.gif /resource:resources/TreeView_lplus.gif /resource:resources/TreeView_minus.gif /resource:resources/TreeView_plus.gif /resource:resources/TreeView_r.gif /resource:resources/TreeView_rminus.gif /resource:resources/TreeView_rplus.gif /resource:resources/TreeView_t.gif /resource:resources/TreeView_tminus.gif /resource:resources/TreeView_tplus.gif /resource:resources/transparent.gif /resource:resources/webform.js /resource:resources/WebUIValidation_2.0.js /resource:resources/ErrorTemplateCommon_Top.html /resource:resources/DefaultErrorTemplate_CustomErrorDefault.html /resource:resources/ErrorTemplateCommon_Bottom.html /resource:resources/DefaultErrorTemplate_StandardPage.html /resource:resources/HtmlizedExceptionPage_Top.html /resource:resources/HtmlizedExceptionPage_FileLongSource.html /resource:resources/HtmlizedExceptionPage_FileShortSource.html /resource:resources/HtmlizedExceptionPage_CompilerOutput.html /resource:System.Web.UI.WebControls/GridView.js /resource:System.Web.UI.WebControls/DetailsView.js /resource:System.Web.UI.WebControls/TreeView.js /resource:System.Web.UI.WebControls/Menu.js /resource:System.Web.UI.WebControls/MenuModern.js -define:WEBSERVICES_DEP -r:System.Web.Services.dll -define:MONOWEB_DEP -r:Mono.Web.dll -define:SYSTEMCORE_DEP -r:System.Core.dll</flags>
       <output>System.Web.dll</output>
       <built_sources>System.Web/UplevelHelper.cs</built_sources>
       <library_output>./../../class/lib/net_4_0/tmp/System.Web.dll</library_output>
     <project dir="class/System.Web" library="System.Web-tests-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -r:./../../class/lib/net_4_0/System.Web.dll -unsafe -nowarn:612,618 -r:mscorlib.dll -r:System.dll -r:System.Drawing.dll -r:System.Data.dll -r:System.Xml.dll -r:System.EnterpriseServices.dll -d:INSIDE_SYSTEM_WEB -nowarn:618 -r:System.Configuration.dll -r:Mono.Data.Sqlite.dll -r:System.Web.ApplicationServices.dll /resource:resources/TranslationResources.resources /resource:resources/WebUIValidation.js /resource:resources/folder.gif /resource:resources/file.gif /resource:resources/computer.gif /resource:resources/arrow_minus.gif /resource:resources/arrow_noexpand.gif /resource:resources/arrow_plus.gif /resource:resources/arrow_up.gif /resource:resources/arrow_down.gif /resource:resources/box_full.gif /resource:resources/box_empty.gif /resource:resources/box_minus.gif /resource:resources/box_noexpand.gif /resource:resources/box_plus.gif /resource:resources/contact.gif /resource:resources/dot_empty.gif /resource:resources/dot_full.gif /resource:resources/dots.gif /resource:resources/inbox.gif /resource:resources/star_empty.gif /resource:resources/star_full.gif /resource:resources/warning.gif /resource:resources/TreeView_noexpand.gif /resource:resources/TreeView_dash.gif /resource:resources/TreeView_dashminus.gif /resource:resources/TreeView_dashplus.gif /resource:resources/TreeView_i.gif /resource:resources/TreeView_l.gif /resource:resources/TreeView_lminus.gif /resource:resources/TreeView_lplus.gif /resource:resources/TreeView_minus.gif /resource:resources/TreeView_plus.gif /resource:resources/TreeView_r.gif /resource:resources/TreeView_rminus.gif /resource:resources/TreeView_rplus.gif /resource:resources/TreeView_t.gif /resource:resources/TreeView_tminus.gif /resource:resources/TreeView_tplus.gif /resource:resources/transparent.gif /resource:resources/webform.js /resource:resources/WebUIValidation_2.0.js /resource:resources/ErrorTemplateCommon_Top.html /resource:resources/DefaultErrorTemplate_CustomErrorDefault.html /resource:resources/ErrorTemplateCommon_Bottom.html /resource:resources/DefaultErrorTemplate_StandardPage.html /resource:resources/HtmlizedExceptionPage_Top.html /resource:resources/HtmlizedExceptionPage_FileLongSource.html /resource:resources/HtmlizedExceptionPage_FileShortSource.html /resource:resources/HtmlizedExceptionPage_CompilerOutput.html /resource:System.Web.UI.WebControls/GridView.js /resource:System.Web.UI.WebControls/DetailsView.js /resource:System.Web.UI.WebControls/TreeView.js /resource:System.Web.UI.WebControls/Menu.js /resource:System.Web.UI.WebControls/MenuModern.js -define:WEBSERVICES_DEP -r:System.Web.Services.dll -define:MONOWEB_DEP -r:Mono.Web.dll -define:SYSTEMCORE_DEP -r:System.Core.dll -doc:System.Web_test_net_4_0.xml -nowarn:219,169,1591 -r:SystemWebTestShim.dll /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/Global.asax /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/My.ashx /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/My.master /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/MyPage.aspx /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/MyPage.aspx.cs /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/MyPageWithMaster.aspx /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/Web.mono.config /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/Web.mono.config.4.0 /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/sub_map_01.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_01.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_02.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_03.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_04.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_05.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_06.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_07.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_08.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_09.sitemap /resource:Test/mainsoft/NunitWebResources/menuclass.aspx /resource:Test/mainsoft/NunitWebResources/FormView.aspx /resource:Test/mainsoft/NunitWebResources/PostBackMenuTest.aspx /resource:Test/mainsoft/NunitWebResources/PageWithStyleSheet.aspx /resource:Test/mainsoft/NunitWebResources/PageWithTheme.aspx /resource:Test/mainsoft/NunitWebResources/ResolveUrl.ascx /resource:Test/mainsoft/NunitWebResources/ResolveUrl.aspx /resource:Test/mainsoft/NunitWebResources/RunTimeSetTheme.aspx /resource:Test/mainsoft/NunitWebResources/ReadOnlyPropertyBind.aspx /resource:Test/mainsoft/NunitWebResources/ReadOnlyPropertyControl.ascx /resource:Test/mainsoft/NunitWebResources/Theme1.skin /resource:Test/mainsoft/NunitWebResources/Theme2.skin /resource:Test/mainsoft/NunitWebResources/UrlProperty.aspx /resource:Test/mainsoft/NunitWebResources/UrlProperty.ascx /resource:Test/mainsoft/NunitWebResources/UrlProperty.ascx.cs /resource:Test/mainsoft/NunitWebResources/Web.sitemap /resource:Test/mainsoft/NunitWebResources/WizardTest.skin /resource:Test/mainsoft/NunitWebResources/FooterTemplateTest.aspx /resource:Test/mainsoft/NunitWebResources/DataGrid.aspx /resource:Test/mainsoft/NunitWebResources/DetailsViewTemplates.aspx /resource:Test/mainsoft/NunitWebResources/DetailsViewTemplates_2.aspx /resource:Test/mainsoft/NunitWebResources/DetailsViewTemplates_3.aspx /resource:Test/mainsoft/NunitWebResources/DetailsViewDataActions.aspx /resource:Test/mainsoft/NunitWebResources/DetailsViewProperties1.aspx /resource:Test/mainsoft/NunitWebResources/Bluehills.jpg /resource:Test/mainsoft/NunitWebResources/FormViewTest1.aspx /resource:Test/mainsoft/NunitWebResources/FormViewTest1_2.aspx /resource:Test/mainsoft/NunitWebResources/FormViewTest1_3.aspx /resource:Test/mainsoft/NunitWebResources/FormViewTest1_4.aspx /resource:Test/mainsoft/NunitWebResources/FormViewInsertEditDelete.aspx /resource:Test/mainsoft/NunitWebResources/GridViewUpdate.aspx /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest.xml /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest.xsl /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest1.aspx /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest2.aspx /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest3.aspx /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest4.aspx /resource:Test/mainsoft/NunitWebResources/LoginViewTest1.aspx /resource:Test/mainsoft/NunitWebResources/WebControl.config /resource:Test/mainsoft/NunitWebResources/WebLogin.config /resource:Test/mainsoft/NunitWebResources/CallbackTest1.aspx /resource:Test/mainsoft/NunitWebResources/CallbackTest2.aspx /resource:Test/mainsoft/NunitWebResources/EventValidationTest2.aspx /resource:Test/mainsoft/NunitWebResources/EventValidationTest1.aspx /resource:Test/mainsoft/NunitWebResources/ClientScript.js /resource:Test/mainsoft/NunitWebResources/EvalTest.aspx /resource:Test/mainsoft/NunitWebResources/TemplateUserControl.ascx /resource:Test/mainsoft/NunitWebResources/WebMapping.config /resource:Test/mainsoft/NunitWebResources/Mapping.aspx /resource:Test/mainsoft/NunitWebResources/Mapping1.aspx /resource:Test/mainsoft/NunitWebResources/CrossPagePosting1.aspx /resource:Test/mainsoft/NunitWebResources/CrossPagePosting2.aspx /resource:Test/mainsoft/NunitWebResources/MyDerived.master /resource:Test/mainsoft/NunitWebResources/MyPageWithDerivedMaster.aspx /resource:Test/mainsoft/NunitWebResources/MasterTypeTest1.aspx /resource:Test/mainsoft/NunitWebResources/MasterTypeTest2.aspx /resource:Test/mainsoft/NunitWebResources/PageLifecycleTest.aspx /resource:Test/mainsoft/NunitWebResources/PageValidationTest.aspx /resource:Test/mainsoft/NunitWebResources/AsyncPage.aspx /resource:Test/mainsoft/NunitWebResources/PageCultureTest.aspx /resource:Test/mainsoft/NunitWebResources/adapters.browser /resource:Test/mainsoft/NunitWebResources/NoEventValidation.aspx /resource:Test/mainsoft/NunitWebResources/ListControlPage.aspx /resource:Test/mainsoft/NunitWebResources/TextBoxTestlPage.aspx /resource:Test/mainsoft/NunitWebResources/ClearErrorOnError.aspx /resource:Test/mainsoft/NunitWebResources/RedirectOnError.aspx /resource:Test/mainsoft/NunitWebResources/TestCapability.browser /resource:Test/mainsoft/NunitWebResources/PageWithAdapter.aspx /resource:Test/mainsoft/NunitWebResources/InvalidPropertyBind1.aspx /resource:Test/mainsoft/NunitWebResources/InvalidPropertyBind2.aspx /resource:Test/mainsoft/NunitWebResources/InvalidPropertyBind3.aspx /resource:Test/mainsoft/NunitWebResources/InvalidPropertyBind4.aspx /resource:Test/mainsoft/NunitWebResources/ValidPropertyBind1.aspx /resource:Test/mainsoft/NunitWebResources/ValidPropertyBind2.aspx /resource:Test/mainsoft/NunitWebResources/ValidPropertyBind3.aspx /resource:Test/mainsoft/NunitWebResources/ValidPropertyBind4.aspx /resource:Test/mainsoft/NunitWebResources/ValidPropertyBind5.aspx /resource:Test/mainsoft/NunitWebResources/ReadWritePropertyControl.ascx /resource:Test/mainsoft/MainsoftWebTest/nunitweb_config.xml /resource:Test/mainsoft/NunitWebResources/TemplateControlParsingTest.aspx /resource:Test/mainsoft/NunitWebResources/ContentPlaceHolderInTemplate.aspx /resource:Test/mainsoft/NunitWebResources/ContentPlaceHolderInTemplate.master /resource:Test/mainsoft/NunitWebResources/MissingMasterFile.aspx /resource:Test/mainsoft/NunitWebResources/CustomSectionEmptyCollection.aspx /resource:Test/mainsoft/NunitWebResources/NoDoubleOnInitOnRemoveAdd.aspx /resource:Test/mainsoft/NunitWebResources/NoDoubleOnInitOnRemoveAdd.aspx.cs /resource:Test/mainsoft/NunitWebResources/LoginDisplayRememberMe.aspx /resource:Test/mainsoft/NunitWebResources/NoBindForMethodsWithBindInName.aspx /resource:Test/mainsoft/NunitWebResources/LinkInHeadWithEmbeddedExpression.aspx /resource:Test/mainsoft/NunitWebResources/ExpressionInListControl.aspx /resource:Test/mainsoft/NunitWebResources/ServerSideControlsInScriptBlock.aspx /resource:Test/mainsoft/NunitWebResources/ServerControlInClientSideComment.aspx /resource:Test/mainsoft/NunitWebResources/PreprocessorDirectivesInMarkup.aspx /resource:Test/mainsoft/NunitWebResources/UnquotedAngleBrackets.aspx /resource:Test/mainsoft/NunitWebResources/FullTagsInText.aspx /resource:Test/mainsoft/NunitWebResources/TagsExpressionsAndCommentsInText.aspx /resource:Test/mainsoft/NunitWebResources/NewlineInCodeExpression.aspx /resource:Test/mainsoft/NunitWebResources/DuplicateControlsInClientComment.aspx /resource:Test/mainsoft/NunitWebResources/TagsNestedInClientTag.aspx /resource:Test/mainsoft/NunitWebResources/ConditionalClientComments.aspx /resource:Test/mainsoft/NunitWebResources/OneLetterIdentifierInCodeRender.aspx /resource:Test/mainsoft/NunitWebResources/GlobalResourcesLocalization.aspx /resource:Test/mainsoft/NunitWebResources/TableSections_Bug551666.aspx /resource:Test/mainsoft/NunitWebResources/TableSections_Bug551666.aspx.cs /resource:Test/mainsoft/NunitWebResources/NestedParserFileText.aspx /resource:Test/mainsoft/NunitWebResources/StateFormatter_CorrectConverter.aspx /resource:Test/mainsoft/NunitWebResources/StateFormatter_CollectionConverter.aspx /resource:Test/mainsoft/NunitWebResources/StateFormatter_CollectionConverter.aspx.cs /resource:Test/mainsoft/NunitWebResources/ChangePasswordContainer_FindControl.aspx /resource:Test/mainsoft/NunitWebResources/TagWithExpressionWithinAttribute.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxList_Bug377703_1.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxList_Bug377703_2.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxList_Bug578770.aspx /resource:Test/mainsoft/NunitWebResources/EnumConverter_Bug578586.aspx /resource:Test/mainsoft/NunitWebResources/ButtonColor_Bug325489.aspx /resource:Test/mainsoft/NunitWebResources/SqlDataSource_OnInit_Bug572781.aspx /resource:Test/mainsoft/NunitWebResources/FormViewPagerVisibility.aspx /resource:Test/mainsoft/NunitWebResources/OverridenControlsPropertyAndPostBack_Bug594238.aspx /resource:Test/mainsoft/NunitWebResources/GlobalizationEncodingName.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_0.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_1.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_2.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_5.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_6.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_7.aspx /resource:Test/mainsoft/NunitWebResources/GridView_Bug595567.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxList_Bug600415.aspx /resource:Test/mainsoft/NunitWebResources/BoundField_Bug646505.aspx /resource:Test/mainsoft/NunitWebResources/BoundField_Bug646505.aspx.cs /resource:Test/mainsoft/NunitWebResources/HtmlTitleCodeRender_Bug662918.aspx /resource:Test/mainsoft/NunitWebResources/App_Code/EnumConverterControl.cs,App_Code/EnumConverterControl.cs /resource:Test/mainsoft/NunitWebResources/App_Code/MyContainer.cs,App_Code/MyContainer.cs /resource:Test/mainsoft/NunitWebResources/App_Code/CustomCheckBoxColumn.cs,App_Code/CustomCheckBoxColumn.cs /resource:Test/mainsoft/NunitWebResources/App_GlobalResources/Common.resx,App_GlobalResources/Common.resx /resource:Test/mainsoft/NunitWebResources/App_GlobalResources/Common.fr-FR.resx,App_GlobalResources/Common.fr-FR.resx /resource:Test/mainsoft/NunitWebResources/App_GlobalResources/Resource1.resx,App_GlobalResources/Resource1.resx</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize -r:./../../class/lib/net_4_0/System.Web.dll -unsafe -nowarn:612,618 -r:mscorlib.dll -r:System.dll -r:System.Drawing.dll -r:System.Data.dll -r:System.Xml.dll -r:System.EnterpriseServices.dll -d:INSIDE_SYSTEM_WEB -nowarn:618 -r:System.Configuration.dll -r:Mono.Data.Sqlite.dll -r:System.Web.ApplicationServices.dll /resource:resources/TranslationResources.resources /resource:resources/WebUIValidation.js /resource:resources/folder.gif /resource:resources/file.gif /resource:resources/computer.gif /resource:resources/arrow_minus.gif /resource:resources/arrow_noexpand.gif /resource:resources/arrow_plus.gif /resource:resources/arrow_up.gif /resource:resources/arrow_down.gif /resource:resources/box_full.gif /resource:resources/box_empty.gif /resource:resources/box_minus.gif /resource:resources/box_noexpand.gif /resource:resources/box_plus.gif /resource:resources/contact.gif /resource:resources/dot_empty.gif /resource:resources/dot_full.gif /resource:resources/dots.gif /resource:resources/inbox.gif /resource:resources/star_empty.gif /resource:resources/star_full.gif /resource:resources/warning.gif /resource:resources/TreeView_noexpand.gif /resource:resources/TreeView_dash.gif /resource:resources/TreeView_dashminus.gif /resource:resources/TreeView_dashplus.gif /resource:resources/TreeView_i.gif /resource:resources/TreeView_l.gif /resource:resources/TreeView_lminus.gif /resource:resources/TreeView_lplus.gif /resource:resources/TreeView_minus.gif /resource:resources/TreeView_plus.gif /resource:resources/TreeView_r.gif /resource:resources/TreeView_rminus.gif /resource:resources/TreeView_rplus.gif /resource:resources/TreeView_t.gif /resource:resources/TreeView_tminus.gif /resource:resources/TreeView_tplus.gif /resource:resources/transparent.gif /resource:resources/webform.js /resource:resources/WebUIValidation_2.0.js /resource:resources/ErrorTemplateCommon_Top.html /resource:resources/DefaultErrorTemplate_CustomErrorDefault.html /resource:resources/ErrorTemplateCommon_Bottom.html /resource:resources/DefaultErrorTemplate_StandardPage.html /resource:resources/HtmlizedExceptionPage_Top.html /resource:resources/HtmlizedExceptionPage_FileLongSource.html /resource:resources/HtmlizedExceptionPage_FileShortSource.html /resource:resources/HtmlizedExceptionPage_CompilerOutput.html /resource:System.Web.UI.WebControls/GridView.js /resource:System.Web.UI.WebControls/DetailsView.js /resource:System.Web.UI.WebControls/TreeView.js /resource:System.Web.UI.WebControls/Menu.js /resource:System.Web.UI.WebControls/MenuModern.js -define:WEBSERVICES_DEP -r:System.Web.Services.dll -define:MONOWEB_DEP -r:Mono.Web.dll -define:SYSTEMCORE_DEP -r:System.Core.dll -doc:System.Web_test_net_4_0.xml -nowarn:219,169,1591 -r:SystemWebTestShim.dll /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/Global.asax /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/My.ashx /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/My.master /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/MyPage.aspx /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/MyPage.aspx.cs /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/MyPageWithMaster.aspx /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/Web.mono.config /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/Web.mono.config.4.0 /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/sub_map_01.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_01.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_02.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_03.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_04.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_05.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_06.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_07.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_08.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_09.sitemap /resource:Test/mainsoft/NunitWebResources/menuclass.aspx /resource:Test/mainsoft/NunitWebResources/FormView.aspx /resource:Test/mainsoft/NunitWebResources/PostBackMenuTest.aspx /resource:Test/mainsoft/NunitWebResources/PageWithStyleSheet.aspx /resource:Test/mainsoft/NunitWebResources/PageWithTheme.aspx /resource:Test/mainsoft/NunitWebResources/ResolveUrl.ascx /resource:Test/mainsoft/NunitWebResources/ResolveUrl.aspx /resource:Test/mainsoft/NunitWebResources/RunTimeSetTheme.aspx /resource:Test/mainsoft/NunitWebResources/ReadOnlyPropertyBind.aspx /resource:Test/mainsoft/NunitWebResources/ReadOnlyPropertyControl.ascx /resource:Test/mainsoft/NunitWebResources/Theme1.skin /resource:Test/mainsoft/NunitWebResources/Theme2.skin /resource:Test/mainsoft/NunitWebResources/UrlProperty.aspx /resource:Test/mainsoft/NunitWebResources/UrlProperty.ascx /resource:Test/mainsoft/NunitWebResources/UrlProperty.ascx.cs /resource:Test/mainsoft/NunitWebResources/Web.sitemap /resource:Test/mainsoft/NunitWebResources/WizardTest.skin /resource:Test/mainsoft/NunitWebResources/FooterTemplateTest.aspx /resource:Test/mainsoft/NunitWebResources/DataGrid.aspx /resource:Test/mainsoft/NunitWebResources/DetailsViewTemplates.aspx /resource:Test/mainsoft/NunitWebResources/DetailsViewTemplates_2.aspx /resource:Test/mainsoft/NunitWebResources/DetailsViewTemplates_3.aspx /resource:Test/mainsoft/NunitWebResources/DetailsViewDataActions.aspx /resource:Test/mainsoft/NunitWebResources/DetailsViewProperties1.aspx /resource:Test/mainsoft/NunitWebResources/Bluehills.jpg /resource:Test/mainsoft/NunitWebResources/FormViewTest1.aspx /resource:Test/mainsoft/NunitWebResources/FormViewTest1_2.aspx /resource:Test/mainsoft/NunitWebResources/FormViewTest1_3.aspx /resource:Test/mainsoft/NunitWebResources/FormViewTest1_4.aspx /resource:Test/mainsoft/NunitWebResources/FormViewInsertEditDelete.aspx /resource:Test/mainsoft/NunitWebResources/GridViewUpdate.aspx /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest.xml /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest.xsl /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest1.aspx /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest2.aspx /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest3.aspx /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest4.aspx /resource:Test/mainsoft/NunitWebResources/LoginViewTest1.aspx /resource:Test/mainsoft/NunitWebResources/WebControl.config /resource:Test/mainsoft/NunitWebResources/WebLogin.config /resource:Test/mainsoft/NunitWebResources/CallbackTest1.aspx /resource:Test/mainsoft/NunitWebResources/CallbackTest2.aspx /resource:Test/mainsoft/NunitWebResources/EventValidationTest2.aspx /resource:Test/mainsoft/NunitWebResources/EventValidationTest1.aspx /resource:Test/mainsoft/NunitWebResources/ClientScript.js /resource:Test/mainsoft/NunitWebResources/EvalTest.aspx /resource:Test/mainsoft/NunitWebResources/TemplateUserControl.ascx /resource:Test/mainsoft/NunitWebResources/WebMapping.config /resource:Test/mainsoft/NunitWebResources/Mapping.aspx /resource:Test/mainsoft/NunitWebResources/Mapping1.aspx /resource:Test/mainsoft/NunitWebResources/CrossPagePosting1.aspx /resource:Test/mainsoft/NunitWebResources/CrossPagePosting2.aspx /resource:Test/mainsoft/NunitWebResources/MyDerived.master /resource:Test/mainsoft/NunitWebResources/MyPageWithDerivedMaster.aspx /resource:Test/mainsoft/NunitWebResources/MasterTypeTest1.aspx /resource:Test/mainsoft/NunitWebResources/MasterTypeTest2.aspx /resource:Test/mainsoft/NunitWebResources/PageLifecycleTest.aspx /resource:Test/mainsoft/NunitWebResources/PageValidationTest.aspx /resource:Test/mainsoft/NunitWebResources/AsyncPage.aspx /resource:Test/mainsoft/NunitWebResources/PageCultureTest.aspx /resource:Test/mainsoft/NunitWebResources/adapters.browser /resource:Test/mainsoft/NunitWebResources/NoEventValidation.aspx /resource:Test/mainsoft/NunitWebResources/ListControlPage.aspx /resource:Test/mainsoft/NunitWebResources/TextBoxTestlPage.aspx /resource:Test/mainsoft/NunitWebResources/ClearErrorOnError.aspx /resource:Test/mainsoft/NunitWebResources/RedirectOnError.aspx /resource:Test/mainsoft/NunitWebResources/TestCapability.browser /resource:Test/mainsoft/NunitWebResources/PageWithAdapter.aspx /resource:Test/mainsoft/NunitWebResources/InvalidPropertyBind1.aspx /resource:Test/mainsoft/NunitWebResources/InvalidPropertyBind2.aspx /resource:Test/mainsoft/NunitWebResources/InvalidPropertyBind3.aspx /resource:Test/mainsoft/NunitWebResources/InvalidPropertyBind4.aspx /resource:Test/mainsoft/NunitWebResources/ValidPropertyBind1.aspx /resource:Test/mainsoft/NunitWebResources/ValidPropertyBind2.aspx /resource:Test/mainsoft/NunitWebResources/ValidPropertyBind3.aspx /resource:Test/mainsoft/NunitWebResources/ValidPropertyBind4.aspx /resource:Test/mainsoft/NunitWebResources/ValidPropertyBind5.aspx /resource:Test/mainsoft/NunitWebResources/ReadWritePropertyControl.ascx /resource:Test/mainsoft/MainsoftWebTest/nunitweb_config.xml /resource:Test/mainsoft/NunitWebResources/TemplateControlParsingTest.aspx /resource:Test/mainsoft/NunitWebResources/ContentPlaceHolderInTemplate.aspx /resource:Test/mainsoft/NunitWebResources/ContentPlaceHolderInTemplate.master /resource:Test/mainsoft/NunitWebResources/MissingMasterFile.aspx /resource:Test/mainsoft/NunitWebResources/CustomSectionEmptyCollection.aspx /resource:Test/mainsoft/NunitWebResources/NoDoubleOnInitOnRemoveAdd.aspx /resource:Test/mainsoft/NunitWebResources/NoDoubleOnInitOnRemoveAdd.aspx.cs /resource:Test/mainsoft/NunitWebResources/LoginDisplayRememberMe.aspx /resource:Test/mainsoft/NunitWebResources/NoBindForMethodsWithBindInName.aspx /resource:Test/mainsoft/NunitWebResources/LinkInHeadWithEmbeddedExpression.aspx /resource:Test/mainsoft/NunitWebResources/ExpressionInListControl.aspx /resource:Test/mainsoft/NunitWebResources/ServerSideControlsInScriptBlock.aspx /resource:Test/mainsoft/NunitWebResources/ServerControlInClientSideComment.aspx /resource:Test/mainsoft/NunitWebResources/PreprocessorDirectivesInMarkup.aspx /resource:Test/mainsoft/NunitWebResources/UnquotedAngleBrackets.aspx /resource:Test/mainsoft/NunitWebResources/FullTagsInText.aspx /resource:Test/mainsoft/NunitWebResources/TagsExpressionsAndCommentsInText.aspx /resource:Test/mainsoft/NunitWebResources/NewlineInCodeExpression.aspx /resource:Test/mainsoft/NunitWebResources/DuplicateControlsInClientComment.aspx /resource:Test/mainsoft/NunitWebResources/TagsNestedInClientTag.aspx /resource:Test/mainsoft/NunitWebResources/ConditionalClientComments.aspx /resource:Test/mainsoft/NunitWebResources/OneLetterIdentifierInCodeRender.aspx /resource:Test/mainsoft/NunitWebResources/GlobalResourcesLocalization.aspx /resource:Test/mainsoft/NunitWebResources/TableSections_Bug551666.aspx /resource:Test/mainsoft/NunitWebResources/TableSections_Bug551666.aspx.cs /resource:Test/mainsoft/NunitWebResources/NestedParserFileText.aspx /resource:Test/mainsoft/NunitWebResources/StateFormatter_CorrectConverter.aspx /resource:Test/mainsoft/NunitWebResources/StateFormatter_CollectionConverter.aspx /resource:Test/mainsoft/NunitWebResources/StateFormatter_CollectionConverter.aspx.cs /resource:Test/mainsoft/NunitWebResources/ChangePasswordContainer_FindControl.aspx /resource:Test/mainsoft/NunitWebResources/TagWithExpressionWithinAttribute.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxList_Bug377703_1.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxList_Bug377703_2.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxList_Bug578770.aspx /resource:Test/mainsoft/NunitWebResources/EnumConverter_Bug578586.aspx /resource:Test/mainsoft/NunitWebResources/ButtonColor_Bug325489.aspx /resource:Test/mainsoft/NunitWebResources/SqlDataSource_OnInit_Bug572781.aspx /resource:Test/mainsoft/NunitWebResources/FormViewPagerVisibility.aspx /resource:Test/mainsoft/NunitWebResources/OverridenControlsPropertyAndPostBack_Bug594238.aspx /resource:Test/mainsoft/NunitWebResources/GlobalizationEncodingName.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_0.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_1.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_2.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_5.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_6.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_7.aspx /resource:Test/mainsoft/NunitWebResources/GridView_Bug595567.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxList_Bug600415.aspx /resource:Test/mainsoft/NunitWebResources/BoundField_Bug646505.aspx /resource:Test/mainsoft/NunitWebResources/BoundField_Bug646505.aspx.cs /resource:Test/mainsoft/NunitWebResources/HtmlTitleCodeRender_Bug662918.aspx /resource:Test/mainsoft/NunitWebResources/App_Code/EnumConverterControl.cs,App_Code/EnumConverterControl.cs /resource:Test/mainsoft/NunitWebResources/App_Code/MyContainer.cs,App_Code/MyContainer.cs /resource:Test/mainsoft/NunitWebResources/App_Code/CustomCheckBoxColumn.cs,App_Code/CustomCheckBoxColumn.cs /resource:Test/mainsoft/NunitWebResources/App_GlobalResources/Common.resx,App_GlobalResources/Common.resx /resource:Test/mainsoft/NunitWebResources/App_GlobalResources/Common.fr-FR.resx,App_GlobalResources/Common.fr-FR.resx /resource:Test/mainsoft/NunitWebResources/App_GlobalResources/Resource1.resx,App_GlobalResources/Resource1.resx</flags>
       <output>System.Web_test_net_4_0.dll</output>
       <built_sources>System.Web/UplevelHelper.cs</built_sources>
       <library_output>System.Web_test_net_4_0.dll</library_output>
     <project dir="class/Mono.Web" library="Mono.Web-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll /noconfig -r:mscorlib.dll -r:System.dll -r:System.Xml.dll -r:System.Web.dll -r:System.Configuration.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize /noconfig -r:mscorlib.dll -r:System.dll -r:System.Xml.dll -r:System.Web.dll -r:System.Configuration.dll</flags>
       <output>Mono.Web.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_0/Mono.Web.dll</library_output>
     <project dir="class/System.Web.Services" library="System.Web.Services-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll /noconfig -nowarn:649 -nowarn:169 -r:mscorlib.dll -r:System.dll -r:System.EnterpriseServices.dll -r:System.Xml.dll -r:System.Web.dll -r:System.Configuration.dll -resource:System.Web.Services.Description/wsdl-1.1.xsd,wsdl-1.1.xsd -resource:System.Web.Services.Description/wsdl-1.1-soap.xsd,wsdl-1.1-soap.xsd -resource:System.Web.Services.Description/web-reference.xsd,web-reference.xsd</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize /noconfig -nowarn:649 -nowarn:169 -r:mscorlib.dll -r:System.dll -r:System.EnterpriseServices.dll -r:System.Xml.dll -r:System.Web.dll -r:System.Configuration.dll -resource:System.Web.Services.Description/wsdl-1.1.xsd,wsdl-1.1.xsd -resource:System.Web.Services.Description/wsdl-1.1-soap.xsd,wsdl-1.1-soap.xsd -resource:System.Web.Services.Description/web-reference.xsd,web-reference.xsd</flags>
       <output>System.Web.Services.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_0/System.Web.Services.dll</library_output>
     <project dir="class/System.Web.Services" library="System.Web.Services-tests-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -r:./../../class/lib/net_4_0/System.Web.Services.dll -nowarn:649 -nowarn:169 -r:mscorlib.dll -r:System.dll -r:System.EnterpriseServices.dll -r:System.Xml.dll -r:System.Web.dll -r:System.Configuration.dll -resource:System.Web.Services.Description/wsdl-1.1.xsd,wsdl-1.1.xsd -resource:System.Web.Services.Description/wsdl-1.1-soap.xsd,wsdl-1.1-soap.xsd -resource:System.Web.Services.Description/web-reference.xsd,web-reference.xsd -nowarn:618</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize -r:./../../class/lib/net_4_0/System.Web.Services.dll -nowarn:649 -nowarn:169 -r:mscorlib.dll -r:System.dll -r:System.EnterpriseServices.dll -r:System.Xml.dll -r:System.Web.dll -r:System.Configuration.dll -resource:System.Web.Services.Description/wsdl-1.1.xsd,wsdl-1.1.xsd -resource:System.Web.Services.Description/wsdl-1.1-soap.xsd,wsdl-1.1-soap.xsd -resource:System.Web.Services.Description/web-reference.xsd,web-reference.xsd -nowarn:618</flags>
       <output>System.Web.Services_test_net_4_0.dll</output>
       <built_sources></built_sources>
       <library_output>System.Web.Services_test_net_4_0.dll</library_output>
     <project dir="class/System.Web" library="System.Web-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll /noconfig -unsafe -nowarn:612,618 -r:mscorlib.dll -r:System.dll -r:System.Drawing.dll -r:System.Data.dll -r:System.Xml.dll -r:System.EnterpriseServices.dll -d:INSIDE_SYSTEM_WEB -nowarn:618 -r:System.Configuration.dll -r:Mono.Data.Sqlite.dll -r:System.Web.ApplicationServices.dll /resource:resources/TranslationResources.resources /resource:resources/WebUIValidation.js /resource:resources/folder.gif /resource:resources/file.gif /resource:resources/computer.gif /resource:resources/arrow_minus.gif /resource:resources/arrow_noexpand.gif /resource:resources/arrow_plus.gif /resource:resources/arrow_up.gif /resource:resources/arrow_down.gif /resource:resources/box_full.gif /resource:resources/box_empty.gif /resource:resources/box_minus.gif /resource:resources/box_noexpand.gif /resource:resources/box_plus.gif /resource:resources/contact.gif /resource:resources/dot_empty.gif /resource:resources/dot_full.gif /resource:resources/dots.gif /resource:resources/inbox.gif /resource:resources/star_empty.gif /resource:resources/star_full.gif /resource:resources/warning.gif /resource:resources/TreeView_noexpand.gif /resource:resources/TreeView_dash.gif /resource:resources/TreeView_dashminus.gif /resource:resources/TreeView_dashplus.gif /resource:resources/TreeView_i.gif /resource:resources/TreeView_l.gif /resource:resources/TreeView_lminus.gif /resource:resources/TreeView_lplus.gif /resource:resources/TreeView_minus.gif /resource:resources/TreeView_plus.gif /resource:resources/TreeView_r.gif /resource:resources/TreeView_rminus.gif /resource:resources/TreeView_rplus.gif /resource:resources/TreeView_t.gif /resource:resources/TreeView_tminus.gif /resource:resources/TreeView_tplus.gif /resource:resources/transparent.gif /resource:resources/webform.js /resource:resources/WebUIValidation_2.0.js /resource:resources/ErrorTemplateCommon_Top.html /resource:resources/DefaultErrorTemplate_CustomErrorDefault.html /resource:resources/ErrorTemplateCommon_Bottom.html /resource:resources/DefaultErrorTemplate_StandardPage.html /resource:resources/HtmlizedExceptionPage_Top.html /resource:resources/HtmlizedExceptionPage_FileLongSource.html /resource:resources/HtmlizedExceptionPage_FileShortSource.html /resource:resources/HtmlizedExceptionPage_CompilerOutput.html /resource:System.Web.UI.WebControls/GridView.js /resource:System.Web.UI.WebControls/DetailsView.js /resource:System.Web.UI.WebControls/TreeView.js /resource:System.Web.UI.WebControls/Menu.js /resource:System.Web.UI.WebControls/MenuModern.js -define:WEBSERVICES_DEP -r:System.Web.Services.dll -define:MONOWEB_DEP -r:Mono.Web.dll -define:SYSTEMCORE_DEP -r:System.Core.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize /noconfig -unsafe -nowarn:612,618 -r:mscorlib.dll -r:System.dll -r:System.Drawing.dll -r:System.Data.dll -r:System.Xml.dll -r:System.EnterpriseServices.dll -d:INSIDE_SYSTEM_WEB -nowarn:618 -r:System.Configuration.dll -r:Mono.Data.Sqlite.dll -r:System.Web.ApplicationServices.dll /resource:resources/TranslationResources.resources /resource:resources/WebUIValidation.js /resource:resources/folder.gif /resource:resources/file.gif /resource:resources/computer.gif /resource:resources/arrow_minus.gif /resource:resources/arrow_noexpand.gif /resource:resources/arrow_plus.gif /resource:resources/arrow_up.gif /resource:resources/arrow_down.gif /resource:resources/box_full.gif /resource:resources/box_empty.gif /resource:resources/box_minus.gif /resource:resources/box_noexpand.gif /resource:resources/box_plus.gif /resource:resources/contact.gif /resource:resources/dot_empty.gif /resource:resources/dot_full.gif /resource:resources/dots.gif /resource:resources/inbox.gif /resource:resources/star_empty.gif /resource:resources/star_full.gif /resource:resources/warning.gif /resource:resources/TreeView_noexpand.gif /resource:resources/TreeView_dash.gif /resource:resources/TreeView_dashminus.gif /resource:resources/TreeView_dashplus.gif /resource:resources/TreeView_i.gif /resource:resources/TreeView_l.gif /resource:resources/TreeView_lminus.gif /resource:resources/TreeView_lplus.gif /resource:resources/TreeView_minus.gif /resource:resources/TreeView_plus.gif /resource:resources/TreeView_r.gif /resource:resources/TreeView_rminus.gif /resource:resources/TreeView_rplus.gif /resource:resources/TreeView_t.gif /resource:resources/TreeView_tminus.gif /resource:resources/TreeView_tplus.gif /resource:resources/transparent.gif /resource:resources/webform.js /resource:resources/WebUIValidation_2.0.js /resource:resources/ErrorTemplateCommon_Top.html /resource:resources/DefaultErrorTemplate_CustomErrorDefault.html /resource:resources/ErrorTemplateCommon_Bottom.html /resource:resources/DefaultErrorTemplate_StandardPage.html /resource:resources/HtmlizedExceptionPage_Top.html /resource:resources/HtmlizedExceptionPage_FileLongSource.html /resource:resources/HtmlizedExceptionPage_FileShortSource.html /resource:resources/HtmlizedExceptionPage_CompilerOutput.html /resource:System.Web.UI.WebControls/GridView.js /resource:System.Web.UI.WebControls/DetailsView.js /resource:System.Web.UI.WebControls/TreeView.js /resource:System.Web.UI.WebControls/Menu.js /resource:System.Web.UI.WebControls/MenuModern.js -define:WEBSERVICES_DEP -r:System.Web.Services.dll -define:MONOWEB_DEP -r:Mono.Web.dll -define:SYSTEMCORE_DEP -r:System.Core.dll</flags>
       <output>System.Web.dll</output>
       <built_sources>System.Web/UplevelHelper.cs</built_sources>
       <library_output>./../../class/lib/net_4_0/tmp/System.Web.dll</library_output>
     <project dir="class/System.Web" library="System.Web-tests-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -r:./../../class/lib/net_4_0/System.Web.dll -unsafe -nowarn:612,618 -r:mscorlib.dll -r:System.dll -r:System.Drawing.dll -r:System.Data.dll -r:System.Xml.dll -r:System.EnterpriseServices.dll -d:INSIDE_SYSTEM_WEB -nowarn:618 -r:System.Configuration.dll -r:Mono.Data.Sqlite.dll -r:System.Web.ApplicationServices.dll /resource:resources/TranslationResources.resources /resource:resources/WebUIValidation.js /resource:resources/folder.gif /resource:resources/file.gif /resource:resources/computer.gif /resource:resources/arrow_minus.gif /resource:resources/arrow_noexpand.gif /resource:resources/arrow_plus.gif /resource:resources/arrow_up.gif /resource:resources/arrow_down.gif /resource:resources/box_full.gif /resource:resources/box_empty.gif /resource:resources/box_minus.gif /resource:resources/box_noexpand.gif /resource:resources/box_plus.gif /resource:resources/contact.gif /resource:resources/dot_empty.gif /resource:resources/dot_full.gif /resource:resources/dots.gif /resource:resources/inbox.gif /resource:resources/star_empty.gif /resource:resources/star_full.gif /resource:resources/warning.gif /resource:resources/TreeView_noexpand.gif /resource:resources/TreeView_dash.gif /resource:resources/TreeView_dashminus.gif /resource:resources/TreeView_dashplus.gif /resource:resources/TreeView_i.gif /resource:resources/TreeView_l.gif /resource:resources/TreeView_lminus.gif /resource:resources/TreeView_lplus.gif /resource:resources/TreeView_minus.gif /resource:resources/TreeView_plus.gif /resource:resources/TreeView_r.gif /resource:resources/TreeView_rminus.gif /resource:resources/TreeView_rplus.gif /resource:resources/TreeView_t.gif /resource:resources/TreeView_tminus.gif /resource:resources/TreeView_tplus.gif /resource:resources/transparent.gif /resource:resources/webform.js /resource:resources/WebUIValidation_2.0.js /resource:resources/ErrorTemplateCommon_Top.html /resource:resources/DefaultErrorTemplate_CustomErrorDefault.html /resource:resources/ErrorTemplateCommon_Bottom.html /resource:resources/DefaultErrorTemplate_StandardPage.html /resource:resources/HtmlizedExceptionPage_Top.html /resource:resources/HtmlizedExceptionPage_FileLongSource.html /resource:resources/HtmlizedExceptionPage_FileShortSource.html /resource:resources/HtmlizedExceptionPage_CompilerOutput.html /resource:System.Web.UI.WebControls/GridView.js /resource:System.Web.UI.WebControls/DetailsView.js /resource:System.Web.UI.WebControls/TreeView.js /resource:System.Web.UI.WebControls/Menu.js /resource:System.Web.UI.WebControls/MenuModern.js -define:WEBSERVICES_DEP -r:System.Web.Services.dll -define:MONOWEB_DEP -r:Mono.Web.dll -define:SYSTEMCORE_DEP -r:System.Core.dll -doc:System.Web_test_net_4_0.xml -nowarn:219,169,1591 -r:SystemWebTestShim.dll /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/Global.asax /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/My.ashx /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/My.master /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/MyPage.aspx /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/MyPage.aspx.cs /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/MyPageWithMaster.aspx /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/Web.mono.config /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/Web.mono.config.4.0 /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/sub_map_01.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_01.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_02.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_03.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_04.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_05.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_06.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_07.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_08.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_09.sitemap /resource:Test/mainsoft/NunitWebResources/menuclass.aspx /resource:Test/mainsoft/NunitWebResources/FormView.aspx /resource:Test/mainsoft/NunitWebResources/PostBackMenuTest.aspx /resource:Test/mainsoft/NunitWebResources/PageWithStyleSheet.aspx /resource:Test/mainsoft/NunitWebResources/PageWithTheme.aspx /resource:Test/mainsoft/NunitWebResources/ResolveUrl.ascx /resource:Test/mainsoft/NunitWebResources/ResolveUrl.aspx /resource:Test/mainsoft/NunitWebResources/RunTimeSetTheme.aspx /resource:Test/mainsoft/NunitWebResources/ReadOnlyPropertyBind.aspx /resource:Test/mainsoft/NunitWebResources/ReadOnlyPropertyControl.ascx /resource:Test/mainsoft/NunitWebResources/Theme1.skin /resource:Test/mainsoft/NunitWebResources/Theme2.skin /resource:Test/mainsoft/NunitWebResources/UrlProperty.aspx /resource:Test/mainsoft/NunitWebResources/UrlProperty.ascx /resource:Test/mainsoft/NunitWebResources/UrlProperty.ascx.cs /resource:Test/mainsoft/NunitWebResources/Web.sitemap /resource:Test/mainsoft/NunitWebResources/WizardTest.skin /resource:Test/mainsoft/NunitWebResources/FooterTemplateTest.aspx /resource:Test/mainsoft/NunitWebResources/DataGrid.aspx /resource:Test/mainsoft/NunitWebResources/DetailsViewTemplates.aspx /resource:Test/mainsoft/NunitWebResources/DetailsViewTemplates_2.aspx /resource:Test/mainsoft/NunitWebResources/DetailsViewTemplates_3.aspx /resource:Test/mainsoft/NunitWebResources/DetailsViewDataActions.aspx /resource:Test/mainsoft/NunitWebResources/DetailsViewProperties1.aspx /resource:Test/mainsoft/NunitWebResources/Bluehills.jpg /resource:Test/mainsoft/NunitWebResources/FormViewTest1.aspx /resource:Test/mainsoft/NunitWebResources/FormViewTest1_2.aspx /resource:Test/mainsoft/NunitWebResources/FormViewTest1_3.aspx /resource:Test/mainsoft/NunitWebResources/FormViewTest1_4.aspx /resource:Test/mainsoft/NunitWebResources/FormViewInsertEditDelete.aspx /resource:Test/mainsoft/NunitWebResources/GridViewUpdate.aspx /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest.xml /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest.xsl /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest1.aspx /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest2.aspx /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest3.aspx /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest4.aspx /resource:Test/mainsoft/NunitWebResources/LoginViewTest1.aspx /resource:Test/mainsoft/NunitWebResources/WebControl.config /resource:Test/mainsoft/NunitWebResources/WebLogin.config /resource:Test/mainsoft/NunitWebResources/CallbackTest1.aspx /resource:Test/mainsoft/NunitWebResources/CallbackTest2.aspx /resource:Test/mainsoft/NunitWebResources/EventValidationTest2.aspx /resource:Test/mainsoft/NunitWebResources/EventValidationTest1.aspx /resource:Test/mainsoft/NunitWebResources/ClientScript.js /resource:Test/mainsoft/NunitWebResources/EvalTest.aspx /resource:Test/mainsoft/NunitWebResources/TemplateUserControl.ascx /resource:Test/mainsoft/NunitWebResources/WebMapping.config /resource:Test/mainsoft/NunitWebResources/Mapping.aspx /resource:Test/mainsoft/NunitWebResources/Mapping1.aspx /resource:Test/mainsoft/NunitWebResources/CrossPagePosting1.aspx /resource:Test/mainsoft/NunitWebResources/CrossPagePosting2.aspx /resource:Test/mainsoft/NunitWebResources/MyDerived.master /resource:Test/mainsoft/NunitWebResources/MyPageWithDerivedMaster.aspx /resource:Test/mainsoft/NunitWebResources/MasterTypeTest1.aspx /resource:Test/mainsoft/NunitWebResources/MasterTypeTest2.aspx /resource:Test/mainsoft/NunitWebResources/PageLifecycleTest.aspx /resource:Test/mainsoft/NunitWebResources/PageValidationTest.aspx /resource:Test/mainsoft/NunitWebResources/AsyncPage.aspx /resource:Test/mainsoft/NunitWebResources/PageCultureTest.aspx /resource:Test/mainsoft/NunitWebResources/adapters.browser /resource:Test/mainsoft/NunitWebResources/NoEventValidation.aspx /resource:Test/mainsoft/NunitWebResources/ListControlPage.aspx /resource:Test/mainsoft/NunitWebResources/TextBoxTestlPage.aspx /resource:Test/mainsoft/NunitWebResources/ClearErrorOnError.aspx /resource:Test/mainsoft/NunitWebResources/RedirectOnError.aspx /resource:Test/mainsoft/NunitWebResources/TestCapability.browser /resource:Test/mainsoft/NunitWebResources/PageWithAdapter.aspx /resource:Test/mainsoft/NunitWebResources/InvalidPropertyBind1.aspx /resource:Test/mainsoft/NunitWebResources/InvalidPropertyBind2.aspx /resource:Test/mainsoft/NunitWebResources/InvalidPropertyBind3.aspx /resource:Test/mainsoft/NunitWebResources/InvalidPropertyBind4.aspx /resource:Test/mainsoft/NunitWebResources/ValidPropertyBind1.aspx /resource:Test/mainsoft/NunitWebResources/ValidPropertyBind2.aspx /resource:Test/mainsoft/NunitWebResources/ValidPropertyBind3.aspx /resource:Test/mainsoft/NunitWebResources/ValidPropertyBind4.aspx /resource:Test/mainsoft/NunitWebResources/ValidPropertyBind5.aspx /resource:Test/mainsoft/NunitWebResources/ReadWritePropertyControl.ascx /resource:Test/mainsoft/MainsoftWebTest/nunitweb_config.xml /resource:Test/mainsoft/NunitWebResources/TemplateControlParsingTest.aspx /resource:Test/mainsoft/NunitWebResources/ContentPlaceHolderInTemplate.aspx /resource:Test/mainsoft/NunitWebResources/ContentPlaceHolderInTemplate.master /resource:Test/mainsoft/NunitWebResources/MissingMasterFile.aspx /resource:Test/mainsoft/NunitWebResources/CustomSectionEmptyCollection.aspx /resource:Test/mainsoft/NunitWebResources/NoDoubleOnInitOnRemoveAdd.aspx /resource:Test/mainsoft/NunitWebResources/NoDoubleOnInitOnRemoveAdd.aspx.cs /resource:Test/mainsoft/NunitWebResources/LoginDisplayRememberMe.aspx /resource:Test/mainsoft/NunitWebResources/NoBindForMethodsWithBindInName.aspx /resource:Test/mainsoft/NunitWebResources/LinkInHeadWithEmbeddedExpression.aspx /resource:Test/mainsoft/NunitWebResources/ExpressionInListControl.aspx /resource:Test/mainsoft/NunitWebResources/ServerSideControlsInScriptBlock.aspx /resource:Test/mainsoft/NunitWebResources/ServerControlInClientSideComment.aspx /resource:Test/mainsoft/NunitWebResources/PreprocessorDirectivesInMarkup.aspx /resource:Test/mainsoft/NunitWebResources/UnquotedAngleBrackets.aspx /resource:Test/mainsoft/NunitWebResources/FullTagsInText.aspx /resource:Test/mainsoft/NunitWebResources/TagsExpressionsAndCommentsInText.aspx /resource:Test/mainsoft/NunitWebResources/NewlineInCodeExpression.aspx /resource:Test/mainsoft/NunitWebResources/DuplicateControlsInClientComment.aspx /resource:Test/mainsoft/NunitWebResources/TagsNestedInClientTag.aspx /resource:Test/mainsoft/NunitWebResources/ConditionalClientComments.aspx /resource:Test/mainsoft/NunitWebResources/OneLetterIdentifierInCodeRender.aspx /resource:Test/mainsoft/NunitWebResources/GlobalResourcesLocalization.aspx /resource:Test/mainsoft/NunitWebResources/TableSections_Bug551666.aspx /resource:Test/mainsoft/NunitWebResources/TableSections_Bug551666.aspx.cs /resource:Test/mainsoft/NunitWebResources/NestedParserFileText.aspx /resource:Test/mainsoft/NunitWebResources/StateFormatter_CorrectConverter.aspx /resource:Test/mainsoft/NunitWebResources/StateFormatter_CollectionConverter.aspx /resource:Test/mainsoft/NunitWebResources/StateFormatter_CollectionConverter.aspx.cs /resource:Test/mainsoft/NunitWebResources/ChangePasswordContainer_FindControl.aspx /resource:Test/mainsoft/NunitWebResources/TagWithExpressionWithinAttribute.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxList_Bug377703_1.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxList_Bug377703_2.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxList_Bug578770.aspx /resource:Test/mainsoft/NunitWebResources/EnumConverter_Bug578586.aspx /resource:Test/mainsoft/NunitWebResources/ButtonColor_Bug325489.aspx /resource:Test/mainsoft/NunitWebResources/SqlDataSource_OnInit_Bug572781.aspx /resource:Test/mainsoft/NunitWebResources/FormViewPagerVisibility.aspx /resource:Test/mainsoft/NunitWebResources/OverridenControlsPropertyAndPostBack_Bug594238.aspx /resource:Test/mainsoft/NunitWebResources/GlobalizationEncodingName.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_0.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_1.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_2.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_5.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_6.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_7.aspx /resource:Test/mainsoft/NunitWebResources/GridView_Bug595567.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxList_Bug600415.aspx /resource:Test/mainsoft/NunitWebResources/BoundField_Bug646505.aspx /resource:Test/mainsoft/NunitWebResources/BoundField_Bug646505.aspx.cs /resource:Test/mainsoft/NunitWebResources/HtmlTitleCodeRender_Bug662918.aspx /resource:Test/mainsoft/NunitWebResources/App_Code/EnumConverterControl.cs,App_Code/EnumConverterControl.cs /resource:Test/mainsoft/NunitWebResources/App_Code/MyContainer.cs,App_Code/MyContainer.cs /resource:Test/mainsoft/NunitWebResources/App_Code/CustomCheckBoxColumn.cs,App_Code/CustomCheckBoxColumn.cs /resource:Test/mainsoft/NunitWebResources/App_GlobalResources/Common.resx,App_GlobalResources/Common.resx /resource:Test/mainsoft/NunitWebResources/App_GlobalResources/Common.fr-FR.resx,App_GlobalResources/Common.fr-FR.resx /resource:Test/mainsoft/NunitWebResources/App_GlobalResources/Resource1.resx,App_GlobalResources/Resource1.resx</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize -r:./../../class/lib/net_4_0/System.Web.dll -unsafe -nowarn:612,618 -r:mscorlib.dll -r:System.dll -r:System.Drawing.dll -r:System.Data.dll -r:System.Xml.dll -r:System.EnterpriseServices.dll -d:INSIDE_SYSTEM_WEB -nowarn:618 -r:System.Configuration.dll -r:Mono.Data.Sqlite.dll -r:System.Web.ApplicationServices.dll /resource:resources/TranslationResources.resources /resource:resources/WebUIValidation.js /resource:resources/folder.gif /resource:resources/file.gif /resource:resources/computer.gif /resource:resources/arrow_minus.gif /resource:resources/arrow_noexpand.gif /resource:resources/arrow_plus.gif /resource:resources/arrow_up.gif /resource:resources/arrow_down.gif /resource:resources/box_full.gif /resource:resources/box_empty.gif /resource:resources/box_minus.gif /resource:resources/box_noexpand.gif /resource:resources/box_plus.gif /resource:resources/contact.gif /resource:resources/dot_empty.gif /resource:resources/dot_full.gif /resource:resources/dots.gif /resource:resources/inbox.gif /resource:resources/star_empty.gif /resource:resources/star_full.gif /resource:resources/warning.gif /resource:resources/TreeView_noexpand.gif /resource:resources/TreeView_dash.gif /resource:resources/TreeView_dashminus.gif /resource:resources/TreeView_dashplus.gif /resource:resources/TreeView_i.gif /resource:resources/TreeView_l.gif /resource:resources/TreeView_lminus.gif /resource:resources/TreeView_lplus.gif /resource:resources/TreeView_minus.gif /resource:resources/TreeView_plus.gif /resource:resources/TreeView_r.gif /resource:resources/TreeView_rminus.gif /resource:resources/TreeView_rplus.gif /resource:resources/TreeView_t.gif /resource:resources/TreeView_tminus.gif /resource:resources/TreeView_tplus.gif /resource:resources/transparent.gif /resource:resources/webform.js /resource:resources/WebUIValidation_2.0.js /resource:resources/ErrorTemplateCommon_Top.html /resource:resources/DefaultErrorTemplate_CustomErrorDefault.html /resource:resources/ErrorTemplateCommon_Bottom.html /resource:resources/DefaultErrorTemplate_StandardPage.html /resource:resources/HtmlizedExceptionPage_Top.html /resource:resources/HtmlizedExceptionPage_FileLongSource.html /resource:resources/HtmlizedExceptionPage_FileShortSource.html /resource:resources/HtmlizedExceptionPage_CompilerOutput.html /resource:System.Web.UI.WebControls/GridView.js /resource:System.Web.UI.WebControls/DetailsView.js /resource:System.Web.UI.WebControls/TreeView.js /resource:System.Web.UI.WebControls/Menu.js /resource:System.Web.UI.WebControls/MenuModern.js -define:WEBSERVICES_DEP -r:System.Web.Services.dll -define:MONOWEB_DEP -r:Mono.Web.dll -define:SYSTEMCORE_DEP -r:System.Core.dll -doc:System.Web_test_net_4_0.xml -nowarn:219,169,1591 -r:SystemWebTestShim.dll /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/Global.asax /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/My.ashx /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/My.master /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/MyPage.aspx /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/MyPage.aspx.cs /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/MyPageWithMaster.aspx /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/Web.mono.config /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/Web.mono.config.4.0 /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/sub_map_01.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_01.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_02.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_03.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_04.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_05.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_06.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_07.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_08.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_09.sitemap /resource:Test/mainsoft/NunitWebResources/menuclass.aspx /resource:Test/mainsoft/NunitWebResources/FormView.aspx /resource:Test/mainsoft/NunitWebResources/PostBackMenuTest.aspx /resource:Test/mainsoft/NunitWebResources/PageWithStyleSheet.aspx /resource:Test/mainsoft/NunitWebResources/PageWithTheme.aspx /resource:Test/mainsoft/NunitWebResources/ResolveUrl.ascx /resource:Test/mainsoft/NunitWebResources/ResolveUrl.aspx /resource:Test/mainsoft/NunitWebResources/RunTimeSetTheme.aspx /resource:Test/mainsoft/NunitWebResources/ReadOnlyPropertyBind.aspx /resource:Test/mainsoft/NunitWebResources/ReadOnlyPropertyControl.ascx /resource:Test/mainsoft/NunitWebResources/Theme1.skin /resource:Test/mainsoft/NunitWebResources/Theme2.skin /resource:Test/mainsoft/NunitWebResources/UrlProperty.aspx /resource:Test/mainsoft/NunitWebResources/UrlProperty.ascx /resource:Test/mainsoft/NunitWebResources/UrlProperty.ascx.cs /resource:Test/mainsoft/NunitWebResources/Web.sitemap /resource:Test/mainsoft/NunitWebResources/WizardTest.skin /resource:Test/mainsoft/NunitWebResources/FooterTemplateTest.aspx /resource:Test/mainsoft/NunitWebResources/DataGrid.aspx /resource:Test/mainsoft/NunitWebResources/DetailsViewTemplates.aspx /resource:Test/mainsoft/NunitWebResources/DetailsViewTemplates_2.aspx /resource:Test/mainsoft/NunitWebResources/DetailsViewTemplates_3.aspx /resource:Test/mainsoft/NunitWebResources/DetailsViewDataActions.aspx /resource:Test/mainsoft/NunitWebResources/DetailsViewProperties1.aspx /resource:Test/mainsoft/NunitWebResources/Bluehills.jpg /resource:Test/mainsoft/NunitWebResources/FormViewTest1.aspx /resource:Test/mainsoft/NunitWebResources/FormViewTest1_2.aspx /resource:Test/mainsoft/NunitWebResources/FormViewTest1_3.aspx /resource:Test/mainsoft/NunitWebResources/FormViewTest1_4.aspx /resource:Test/mainsoft/NunitWebResources/FormViewInsertEditDelete.aspx /resource:Test/mainsoft/NunitWebResources/GridViewUpdate.aspx /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest.xml /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest.xsl /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest1.aspx /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest2.aspx /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest3.aspx /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest4.aspx /resource:Test/mainsoft/NunitWebResources/LoginViewTest1.aspx /resource:Test/mainsoft/NunitWebResources/WebControl.config /resource:Test/mainsoft/NunitWebResources/WebLogin.config /resource:Test/mainsoft/NunitWebResources/CallbackTest1.aspx /resource:Test/mainsoft/NunitWebResources/CallbackTest2.aspx /resource:Test/mainsoft/NunitWebResources/EventValidationTest2.aspx /resource:Test/mainsoft/NunitWebResources/EventValidationTest1.aspx /resource:Test/mainsoft/NunitWebResources/ClientScript.js /resource:Test/mainsoft/NunitWebResources/EvalTest.aspx /resource:Test/mainsoft/NunitWebResources/TemplateUserControl.ascx /resource:Test/mainsoft/NunitWebResources/WebMapping.config /resource:Test/mainsoft/NunitWebResources/Mapping.aspx /resource:Test/mainsoft/NunitWebResources/Mapping1.aspx /resource:Test/mainsoft/NunitWebResources/CrossPagePosting1.aspx /resource:Test/mainsoft/NunitWebResources/CrossPagePosting2.aspx /resource:Test/mainsoft/NunitWebResources/MyDerived.master /resource:Test/mainsoft/NunitWebResources/MyPageWithDerivedMaster.aspx /resource:Test/mainsoft/NunitWebResources/MasterTypeTest1.aspx /resource:Test/mainsoft/NunitWebResources/MasterTypeTest2.aspx /resource:Test/mainsoft/NunitWebResources/PageLifecycleTest.aspx /resource:Test/mainsoft/NunitWebResources/PageValidationTest.aspx /resource:Test/mainsoft/NunitWebResources/AsyncPage.aspx /resource:Test/mainsoft/NunitWebResources/PageCultureTest.aspx /resource:Test/mainsoft/NunitWebResources/adapters.browser /resource:Test/mainsoft/NunitWebResources/NoEventValidation.aspx /resource:Test/mainsoft/NunitWebResources/ListControlPage.aspx /resource:Test/mainsoft/NunitWebResources/TextBoxTestlPage.aspx /resource:Test/mainsoft/NunitWebResources/ClearErrorOnError.aspx /resource:Test/mainsoft/NunitWebResources/RedirectOnError.aspx /resource:Test/mainsoft/NunitWebResources/TestCapability.browser /resource:Test/mainsoft/NunitWebResources/PageWithAdapter.aspx /resource:Test/mainsoft/NunitWebResources/InvalidPropertyBind1.aspx /resource:Test/mainsoft/NunitWebResources/InvalidPropertyBind2.aspx /resource:Test/mainsoft/NunitWebResources/InvalidPropertyBind3.aspx /resource:Test/mainsoft/NunitWebResources/InvalidPropertyBind4.aspx /resource:Test/mainsoft/NunitWebResources/ValidPropertyBind1.aspx /resource:Test/mainsoft/NunitWebResources/ValidPropertyBind2.aspx /resource:Test/mainsoft/NunitWebResources/ValidPropertyBind3.aspx /resource:Test/mainsoft/NunitWebResources/ValidPropertyBind4.aspx /resource:Test/mainsoft/NunitWebResources/ValidPropertyBind5.aspx /resource:Test/mainsoft/NunitWebResources/ReadWritePropertyControl.ascx /resource:Test/mainsoft/MainsoftWebTest/nunitweb_config.xml /resource:Test/mainsoft/NunitWebResources/TemplateControlParsingTest.aspx /resource:Test/mainsoft/NunitWebResources/ContentPlaceHolderInTemplate.aspx /resource:Test/mainsoft/NunitWebResources/ContentPlaceHolderInTemplate.master /resource:Test/mainsoft/NunitWebResources/MissingMasterFile.aspx /resource:Test/mainsoft/NunitWebResources/CustomSectionEmptyCollection.aspx /resource:Test/mainsoft/NunitWebResources/NoDoubleOnInitOnRemoveAdd.aspx /resource:Test/mainsoft/NunitWebResources/NoDoubleOnInitOnRemoveAdd.aspx.cs /resource:Test/mainsoft/NunitWebResources/LoginDisplayRememberMe.aspx /resource:Test/mainsoft/NunitWebResources/NoBindForMethodsWithBindInName.aspx /resource:Test/mainsoft/NunitWebResources/LinkInHeadWithEmbeddedExpression.aspx /resource:Test/mainsoft/NunitWebResources/ExpressionInListControl.aspx /resource:Test/mainsoft/NunitWebResources/ServerSideControlsInScriptBlock.aspx /resource:Test/mainsoft/NunitWebResources/ServerControlInClientSideComment.aspx /resource:Test/mainsoft/NunitWebResources/PreprocessorDirectivesInMarkup.aspx /resource:Test/mainsoft/NunitWebResources/UnquotedAngleBrackets.aspx /resource:Test/mainsoft/NunitWebResources/FullTagsInText.aspx /resource:Test/mainsoft/NunitWebResources/TagsExpressionsAndCommentsInText.aspx /resource:Test/mainsoft/NunitWebResources/NewlineInCodeExpression.aspx /resource:Test/mainsoft/NunitWebResources/DuplicateControlsInClientComment.aspx /resource:Test/mainsoft/NunitWebResources/TagsNestedInClientTag.aspx /resource:Test/mainsoft/NunitWebResources/ConditionalClientComments.aspx /resource:Test/mainsoft/NunitWebResources/OneLetterIdentifierInCodeRender.aspx /resource:Test/mainsoft/NunitWebResources/GlobalResourcesLocalization.aspx /resource:Test/mainsoft/NunitWebResources/TableSections_Bug551666.aspx /resource:Test/mainsoft/NunitWebResources/TableSections_Bug551666.aspx.cs /resource:Test/mainsoft/NunitWebResources/NestedParserFileText.aspx /resource:Test/mainsoft/NunitWebResources/StateFormatter_CorrectConverter.aspx /resource:Test/mainsoft/NunitWebResources/StateFormatter_CollectionConverter.aspx /resource:Test/mainsoft/NunitWebResources/StateFormatter_CollectionConverter.aspx.cs /resource:Test/mainsoft/NunitWebResources/ChangePasswordContainer_FindControl.aspx /resource:Test/mainsoft/NunitWebResources/TagWithExpressionWithinAttribute.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxList_Bug377703_1.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxList_Bug377703_2.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxList_Bug578770.aspx /resource:Test/mainsoft/NunitWebResources/EnumConverter_Bug578586.aspx /resource:Test/mainsoft/NunitWebResources/ButtonColor_Bug325489.aspx /resource:Test/mainsoft/NunitWebResources/SqlDataSource_OnInit_Bug572781.aspx /resource:Test/mainsoft/NunitWebResources/FormViewPagerVisibility.aspx /resource:Test/mainsoft/NunitWebResources/OverridenControlsPropertyAndPostBack_Bug594238.aspx /resource:Test/mainsoft/NunitWebResources/GlobalizationEncodingName.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_0.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_1.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_2.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_5.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_6.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_7.aspx /resource:Test/mainsoft/NunitWebResources/GridView_Bug595567.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxList_Bug600415.aspx /resource:Test/mainsoft/NunitWebResources/BoundField_Bug646505.aspx /resource:Test/mainsoft/NunitWebResources/BoundField_Bug646505.aspx.cs /resource:Test/mainsoft/NunitWebResources/HtmlTitleCodeRender_Bug662918.aspx /resource:Test/mainsoft/NunitWebResources/App_Code/EnumConverterControl.cs,App_Code/EnumConverterControl.cs /resource:Test/mainsoft/NunitWebResources/App_Code/MyContainer.cs,App_Code/MyContainer.cs /resource:Test/mainsoft/NunitWebResources/App_Code/CustomCheckBoxColumn.cs,App_Code/CustomCheckBoxColumn.cs /resource:Test/mainsoft/NunitWebResources/App_GlobalResources/Common.resx,App_GlobalResources/Common.resx /resource:Test/mainsoft/NunitWebResources/App_GlobalResources/Common.fr-FR.resx,App_GlobalResources/Common.fr-FR.resx /resource:Test/mainsoft/NunitWebResources/App_GlobalResources/Resource1.resx,App_GlobalResources/Resource1.resx</flags>
       <output>System.Web_test_net_4_0.dll</output>
       <built_sources>System.Web/UplevelHelper.cs</built_sources>
       <library_output>System.Web_test_net_4_0.dll</library_output>
     <project dir="class/System.Runtime.Serialization.Formatters.Soap" library="System.Runtime.Serialization.Formatters.Soap-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll /noconfig /r:mscorlib.dll /r:System.Xml.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize /noconfig /r:mscorlib.dll /r:System.Xml.dll</flags>
       <output>System.Runtime.Serialization.Formatters.Soap.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_0/System.Runtime.Serialization.Formatters.Soap.dll</library_output>
     <project dir="class/System.Runtime.Serialization.Formatters.Soap" library="System.Runtime.Serialization.Formatters.Soap-tests-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -r:./../../class/lib/net_4_0/System.Runtime.Serialization.Formatters.Soap.dll /r:mscorlib.dll /r:System.Xml.dll -nowarn:0618 -nowarn:219 -nowarn:169</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize -r:./../../class/lib/net_4_0/System.Runtime.Serialization.Formatters.Soap.dll /r:mscorlib.dll /r:System.Xml.dll -nowarn:0618 -nowarn:219 -nowarn:169</flags>
       <output>System.Runtime.Serialization.Formatters.Soap_test_net_4_0.dll</output>
       <built_sources></built_sources>
       <library_output>System.Runtime.Serialization.Formatters.Soap_test_net_4_0.dll</library_output>
     <project dir="class/System.Runtime.Remoting" library="System.Runtime.Remoting-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll /noconfig /r:mscorlib.dll /r:System.dll /r:System.Web.dll /r:System.Xml.dll /r:System.Runtime.Serialization.Formatters.Soap.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize /noconfig /r:mscorlib.dll /r:System.dll /r:System.Web.dll /r:System.Xml.dll /r:System.Runtime.Serialization.Formatters.Soap.dll</flags>
       <output>System.Runtime.Remoting.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_0/System.Runtime.Remoting.dll</library_output>
     <project dir="class/System.Runtime.Remoting" library="System.Runtime.Remoting-tests-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -r:./../../class/lib/net_4_0/System.Runtime.Remoting.dll /r:mscorlib.dll /r:System.dll /r:System.Web.dll /r:System.Xml.dll /r:System.Runtime.Serialization.Formatters.Soap.dll -nowarn:618 /r:System.Runtime.Remoting.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize -r:./../../class/lib/net_4_0/System.Runtime.Remoting.dll /r:mscorlib.dll /r:System.dll /r:System.Web.dll /r:System.Xml.dll /r:System.Runtime.Serialization.Formatters.Soap.dll -nowarn:618 /r:System.Runtime.Remoting.dll</flags>
       <output>System.Runtime.Remoting_test_net_4_0.dll</output>
       <built_sources></built_sources>
       <library_output>System.Runtime.Remoting_test_net_4_0.dll</library_output>
     <project dir="class/System.Configuration.Install" library="System.Configuration.Install-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll /noconfig /r:mscorlib.dll /r:System.dll /r:System.Xml.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize /noconfig /r:mscorlib.dll /r:System.dll /r:System.Xml.dll</flags>
       <output>System.Configuration.Install.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_0/System.Configuration.Install.dll</library_output>
     <project dir="class/System.Management" library="System.Management-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll /noconfig /r:mscorlib.dll /r:System.dll /r:System.Configuration.Install.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize /noconfig /r:mscorlib.dll /r:System.dll /r:System.Configuration.Install.dll</flags>
       <output>System.Management.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_0/System.Management.dll</library_output>
     <project dir="class/System.Data.OracleClient" library="System.Data.OracleClient-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll /noconfig /r:mscorlib.dll /r:System.dll /r:System.Xml.dll /r:System.Data.dll /r:System.EnterpriseServices.dll /r:System.Drawing.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize /noconfig /r:mscorlib.dll /r:System.dll /r:System.Xml.dll /r:System.Data.dll /r:System.EnterpriseServices.dll /r:System.Drawing.dll</flags>
       <output>System.Data.OracleClient.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_0/System.Data.OracleClient.dll</library_output>
     <project dir="class/System.Data.OracleClient" library="System.Data.OracleClient-tests-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -r:./../../class/lib/net_4_0/System.Data.OracleClient.dll /r:mscorlib.dll /r:System.dll /r:System.Xml.dll /r:System.Data.dll /r:System.EnterpriseServices.dll /r:System.Drawing.dll /nowarn:618</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize -r:./../../class/lib/net_4_0/System.Data.OracleClient.dll /r:mscorlib.dll /r:System.dll /r:System.Xml.dll /r:System.Data.dll /r:System.EnterpriseServices.dll /r:System.Drawing.dll /nowarn:618</flags>
       <output>System.Data.OracleClient_test_net_4_0.dll</output>
       <built_sources></built_sources>
       <library_output>System.Data.OracleClient_test_net_4_0.dll</library_output>
     <project dir="class/Microsoft.VisualC" library="Microsoft.VisualC-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll /noconfig /r:mscorlib.dll /r:System.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize /noconfig /r:mscorlib.dll /r:System.dll</flags>
       <output>Microsoft.VisualC.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_0/Microsoft.VisualC.dll</library_output>
     <project dir="class/Cscompmgd" library="Cscompmgd-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll /noconfig /r:mscorlib.dll /r:System.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize /noconfig /r:mscorlib.dll /r:System.dll</flags>
       <output>cscompmgd.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_0/cscompmgd.dll</library_output>
     <project dir="class/Cscompmgd" library="Cscompmgd-tests-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -r:./../../class/lib/net_4_0/cscompmgd.dll /r:mscorlib.dll /r:System.dll -nowarn:0618 -nowarn:219 -nowarn:169</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize -r:./../../class/lib/net_4_0/cscompmgd.dll /r:mscorlib.dll /r:System.dll -nowarn:0618 -nowarn:219 -nowarn:169</flags>
       <output>Cscompmgd_test_net_4_0.dll</output>
       <built_sources></built_sources>
       <library_output>Cscompmgd_test_net_4_0.dll</library_output>
     <project dir="class/System.Design" library="System.Design-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll /noconfig -r:mscorlib.dll -r:System.dll -r:System.Xml.dll -r:System.Web.dll -r:System.Windows.Forms.dll -r:System.Drawing.dll -r:Accessibility.dll -r:System.Data.dll -r:System.Configuration.dll -define:DRAWING_DESIGN_DEP -r:System.Drawing.Design.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize /noconfig -r:mscorlib.dll -r:System.dll -r:System.Xml.dll -r:System.Web.dll -r:System.Windows.Forms.dll -r:System.Drawing.dll -r:Accessibility.dll -r:System.Data.dll -r:System.Configuration.dll -define:DRAWING_DESIGN_DEP -r:System.Drawing.Design.dll</flags>
       <output>System.Design.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_0/tmp/System.Design.dll</library_output>
     <project dir="class/System.Design" library="System.Design-tests-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -r:./../../class/lib/net_4_0/System.Design.dll /r:System.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize -r:./../../class/lib/net_4_0/System.Design.dll /r:System.dll</flags>
       <output>System.Design_test_net_4_0.dll</output>
       <built_sources></built_sources>
       <library_output>System.Design_test_net_4_0.dll</library_output>
     <project dir="class/PEAPI" library="PEAPI-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll /noconfig /r:mscorlib.dll /r:System.dll -nowarn:414,618</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize /noconfig /r:mscorlib.dll /r:System.dll -nowarn:414,618</flags>
       <output>PEAPI.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_0/PEAPI.dll</library_output>
     <project dir="class/Npgsql" library="Npgsql-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll /noconfig /r:mscorlib.dll /r:System.dll /r:System.Xml.dll /r:System.Data.dll /r:Mono.Security.dll -warn:1 @Npgsql.dll.resources</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize /noconfig /r:mscorlib.dll /r:System.dll /r:System.Xml.dll /r:System.Data.dll /r:Mono.Security.dll -warn:1 @Npgsql.dll.resources</flags>
       <output>Npgsql.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_0/Npgsql.dll</library_output>
     <project dir="class/Npgsql" library="Npgsql-tests-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -r:./../../class/lib/net_4_0/Npgsql.dll /r:mscorlib.dll /r:System.dll /r:System.Xml.dll /r:System.Web.dll /r:System.Data.dll -nowarn:0618 -nowarn:219 -nowarn:169</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize -r:./../../class/lib/net_4_0/Npgsql.dll /r:mscorlib.dll /r:System.dll /r:System.Xml.dll /r:System.Web.dll /r:System.Data.dll -nowarn:0618 -nowarn:219 -nowarn:169</flags>
       <output>Npgsql_test_net_4_0.dll</output>
       <built_sources></built_sources>
       <library_output>Npgsql_test_net_4_0.dll</library_output>
     <project dir="class/Commons.Xml.Relaxng" library="Commons.Xml.Relaxng-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll /noconfig /r:mscorlib.dll /r:System.dll /r:System.Xml.dll /resource:resources/relaxng.rng,relaxng.rng</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize /noconfig /r:mscorlib.dll /r:System.dll /r:System.Xml.dll /resource:resources/relaxng.rng,relaxng.rng</flags>
       <output>Commons.Xml.Relaxng.dll</output>
       <built_sources>Commons.Xml.Relaxng.Rnc/RncParser.cs</built_sources>
       <library_output>./../../class/lib/net_4_0/Commons.Xml.Relaxng.dll</library_output>
     <project dir="class/Commons.Xml.Relaxng" library="Commons.Xml.Relaxng-tests-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -r:./../../class/lib/net_4_0/Commons.Xml.Relaxng.dll /r:mscorlib.dll /r:System.dll /r:System.Xml.dll /resource:resources/relaxng.rng,relaxng.rng -nowarn:0618 -nowarn:219 -nowarn:169</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize -r:./../../class/lib/net_4_0/Commons.Xml.Relaxng.dll /r:mscorlib.dll /r:System.dll /r:System.Xml.dll /resource:resources/relaxng.rng,relaxng.rng -nowarn:0618 -nowarn:219 -nowarn:169</flags>
       <output>Commons.Xml.Relaxng_test_net_4_0.dll</output>
       <built_sources>Commons.Xml.Relaxng.Rnc/RncParser.cs</built_sources>
       <library_output>Commons.Xml.Relaxng_test_net_4_0.dll</library_output>
     <project dir="class/Novell.Directory.Ldap" library="Novell.Directory.Ldap-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll /noconfig -warn:1 -nowarn:612 -r:mscorlib.dll -r:System.dll -r:Mono.Security.dll /res:Novell.Directory.Ldap.Utilclass/ResultCodeMessages.resources</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize /noconfig -warn:1 -nowarn:612 -r:mscorlib.dll -r:System.dll -r:Mono.Security.dll /res:Novell.Directory.Ldap.Utilclass/ResultCodeMessages.resources</flags>
       <output>Novell.Directory.Ldap.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_0/Novell.Directory.Ldap.dll</library_output>
     <project dir="class/Novell.Directory.Ldap" library="Novell.Directory.Ldap-tests-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -r:./../../class/lib/net_4_0/Novell.Directory.Ldap.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize -r:./../../class/lib/net_4_0/Novell.Directory.Ldap.dll</flags>
       <output>Novell.Directory.Ldap_test_net_4_0.dll</output>
       <built_sources></built_sources>
       <library_output>Novell.Directory.Ldap_test_net_4_0.dll</library_output>
     <project dir="class/Mono.Security.Win32" library="Mono.Security.Win32-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll /noconfig /unsafe</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize /noconfig /unsafe</flags>
       <output>Mono.Security.Win32.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_0/Mono.Security.Win32.dll</library_output>
     <project dir="class/System.DirectoryServices" library="System.DirectoryServices-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll /noconfig /r:mscorlib.dll /r:System.dll /r:Novell.Directory.Ldap.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize /noconfig /r:mscorlib.dll /r:System.dll /r:Novell.Directory.Ldap.dll</flags>
       <output>System.DirectoryServices.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_0/System.DirectoryServices.dll</library_output>
     <project dir="class/System.DirectoryServices" library="System.DirectoryServices-tests-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -r:./../../class/lib/net_4_0/System.DirectoryServices.dll /r:mscorlib.dll /r:System.dll /r:Novell.Directory.Ldap.dll -nowarn:0618 -nowarn:219 -nowarn:169</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize -r:./../../class/lib/net_4_0/System.DirectoryServices.dll /r:mscorlib.dll /r:System.dll /r:Novell.Directory.Ldap.dll -nowarn:0618 -nowarn:219 -nowarn:169</flags>
       <output>System.DirectoryServices_test_net_4_0.dll</output>
       <built_sources></built_sources>
       <library_output>System.DirectoryServices_test_net_4_0.dll</library_output>
     <project dir="class/RabbitMQ.Client/src/apigen" library="RabbitMQ.Client.Apigen-net_4_0">
       <boot></boot>
       <mcs>MONO_PATH=./../../../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 /r:System.dll /r:System.Xml.dll /main:RabbitMQ.Client.Apigen.Apigen -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../../../class/lib/net_4_0 -r:mscorlib.dll /noconfig</flags>
+      <flags>/codepage:65001 /r:System.dll /r:System.Xml.dll /main:RabbitMQ.Client.Apigen.Apigen -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../../../class/lib/net_4_0 -r:mscorlib.dll -optimize /noconfig</flags>
       <output>RabbitMQ.Client.Apigen.exe</output>
       <built_sources></built_sources>
       <library_output>./../../../../class/lib/net_4_0/RabbitMQ.Client.Apigen.exe</library_output>
     <project dir="class/RabbitMQ.Client/src/client" library="RabbitMQ.Client-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../../../class/lib/net_4_0 -r:mscorlib.dll /noconfig -r:System.dll -r:System.Xml.dll -nowarn:618</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../../../class/lib/net_4_0 -r:mscorlib.dll -optimize /noconfig -r:System.dll -r:System.Xml.dll -nowarn:618</flags>
       <output>RabbitMQ.Client.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../../class/lib/net_4_0/RabbitMQ.Client.dll</library_output>
     <project dir="class/Mono.Messaging" library="Mono.Messaging-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll /noconfig /r:System.dll /r:System.Configuration</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize /noconfig /r:System.dll /r:System.Configuration</flags>
       <output>Mono.Messaging.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_0/Mono.Messaging.dll</library_output>
     <project dir="class/Mono.Messaging" library="Mono.Messaging-tests-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -r:./../../class/lib/net_4_0/Mono.Messaging.dll /r:System.dll /r:System.Configuration -nowarn:0618 -nowarn:219 -nowarn:169 /r:System.Messaging.dll /r:nunit.mocks.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize -r:./../../class/lib/net_4_0/Mono.Messaging.dll /r:System.dll /r:System.Configuration -nowarn:0618 -nowarn:219 -nowarn:169 /r:System.Messaging.dll /r:nunit.mocks.dll</flags>
       <output>Mono.Messaging_test_net_4_0.dll</output>
       <built_sources></built_sources>
       <library_output>Mono.Messaging_test_net_4_0.dll</library_output>
     <project dir="class/System.Messaging" library="System.Messaging-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll /noconfig /resource:System.Messaging/MessageQueue.resx /r:System.dll /r:System.Configuration.Install.dll /r:System.Drawing.dll /r:System.Windows.Forms.dll /r:System.Xml /r:Mono.Messaging.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize /noconfig /resource:System.Messaging/MessageQueue.resx /r:System.dll /r:System.Configuration.Install.dll /r:System.Drawing.dll /r:System.Windows.Forms.dll /r:System.Xml /r:Mono.Messaging.dll</flags>
       <output>System.Messaging.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_0/System.Messaging.dll</library_output>
     <project dir="class/System.Messaging" library="System.Messaging-tests-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -r:./../../class/lib/net_4_0/System.Messaging.dll /resource:System.Messaging/MessageQueue.resx /r:System.dll /r:System.Configuration.Install.dll /r:System.Drawing.dll /r:System.Windows.Forms.dll /r:System.Xml /r:Mono.Messaging.dll -nowarn:0618 -nowarn:219 -nowarn:169 /r:nunit.mocks.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize -r:./../../class/lib/net_4_0/System.Messaging.dll /resource:System.Messaging/MessageQueue.resx /r:System.dll /r:System.Configuration.Install.dll /r:System.Drawing.dll /r:System.Windows.Forms.dll /r:System.Xml /r:Mono.Messaging.dll -nowarn:0618 -nowarn:219 -nowarn:169 /r:nunit.mocks.dll</flags>
       <output>System.Messaging_test_net_4_0.dll</output>
       <built_sources></built_sources>
       <library_output>System.Messaging_test_net_4_0.dll</library_output>
     <project dir="class/Mono.Messaging.RabbitMQ" library="Mono.Messaging.RabbitMQ-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll /noconfig /r:System.dll /r:System.Messaging.dll /r:Mono.Messaging.dll /r:RabbitMQ.Client -nowarn:618</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize /noconfig /r:System.dll /r:System.Messaging.dll /r:Mono.Messaging.dll /r:RabbitMQ.Client -nowarn:618</flags>
       <output>Mono.Messaging.RabbitMQ.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_0/Mono.Messaging.RabbitMQ.dll</library_output>
     <project dir="class/Mono.Messaging.RabbitMQ" library="Mono.Messaging.RabbitMQ-tests-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -r:./../../class/lib/net_4_0/Mono.Messaging.RabbitMQ.dll /r:System.dll /r:System.Messaging.dll /r:Mono.Messaging.dll /r:RabbitMQ.Client -nowarn:618 -nowarn:0618 -nowarn:219 -nowarn:169 /r:nunit.mocks.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize -r:./../../class/lib/net_4_0/Mono.Messaging.RabbitMQ.dll /r:System.dll /r:System.Messaging.dll /r:Mono.Messaging.dll /r:RabbitMQ.Client -nowarn:618 -nowarn:0618 -nowarn:219 -nowarn:169 /r:nunit.mocks.dll</flags>
       <output>Mono.Messaging.RabbitMQ_test_net_4_0.dll</output>
       <built_sources></built_sources>
       <library_output>Mono.Messaging.RabbitMQ_test_net_4_0.dll</library_output>
     <project dir="class/System.ServiceProcess" library="System.ServiceProcess-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll /noconfig /r:System.dll /r:System.Configuration.Install.dll /r:System.Windows.Forms.dll /nowarn:0618</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize /noconfig /r:System.dll /r:System.Configuration.Install.dll /r:System.Windows.Forms.dll /nowarn:0618</flags>
       <output>System.ServiceProcess.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_0/System.ServiceProcess.dll</library_output>
     <project dir="class/System.ServiceProcess" library="System.ServiceProcess-tests-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -r:./../../class/lib/net_4_0/System.ServiceProcess.dll /r:System.dll /r:System.Configuration.Install.dll /r:System.Windows.Forms.dll /nowarn:0618</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize -r:./../../class/lib/net_4_0/System.ServiceProcess.dll /r:System.dll /r:System.Configuration.Install.dll /r:System.Windows.Forms.dll /nowarn:0618</flags>
       <output>System.ServiceProcess_test_net_4_0.dll</output>
       <built_sources></built_sources>
       <library_output>System.ServiceProcess_test_net_4_0.dll</library_output>
     <project dir="class/System.Drawing.Design" library="System.Drawing.Design-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll /noconfig /r:mscorlib.dll /r:System.dll /r:System.Drawing.dll /r:System.Windows.Forms.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize /noconfig /r:mscorlib.dll /r:System.dll /r:System.Drawing.dll /r:System.Windows.Forms.dll</flags>
       <output>System.Drawing.Design.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_0/System.Drawing.Design.dll</library_output>
     <project dir="class/System.Design" library="System.Design-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll /noconfig -r:mscorlib.dll -r:System.dll -r:System.Xml.dll -r:System.Web.dll -r:System.Windows.Forms.dll -r:System.Drawing.dll -r:Accessibility.dll -r:System.Data.dll -r:System.Configuration.dll -define:DRAWING_DESIGN_DEP -r:System.Drawing.Design.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize /noconfig -r:mscorlib.dll -r:System.dll -r:System.Xml.dll -r:System.Web.dll -r:System.Windows.Forms.dll -r:System.Drawing.dll -r:Accessibility.dll -r:System.Data.dll -r:System.Configuration.dll -define:DRAWING_DESIGN_DEP -r:System.Drawing.Design.dll</flags>
       <output>System.Design.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_0/tmp/System.Design.dll</library_output>
     <project dir="class/System.Design" library="System.Design-tests-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -r:./../../class/lib/net_4_0/System.Design.dll /r:System.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize -r:./../../class/lib/net_4_0/System.Design.dll /r:System.dll</flags>
       <output>System.Design_test_net_4_0.dll</output>
       <built_sources></built_sources>
       <library_output>System.Design_test_net_4_0.dll</library_output>
     <project dir="class/ICSharpCode.SharpZipLib" library="ICSharpCode.SharpZipLib-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll /noconfig /r:mscorlib.dll /r:System.dll /r:System.Xml.dll -warn:1</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize /noconfig /r:mscorlib.dll /r:System.dll /r:System.Xml.dll -warn:1</flags>
       <output>ICSharpCode.SharpZipLib.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_0/ICSharpCode.SharpZipLib.dll</library_output>
     <project dir="class/Mono.Http" library="Mono.Http-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll /noconfig -r:mscorlib.dll -r:System.dll -r:System.Xml.dll -r:System.Web.dll -r:ICSharpCode.SharpZipLib.dll -r:Mono.Security.dll -nowarn:618</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize /noconfig -r:mscorlib.dll -r:System.dll -r:System.Xml.dll -r:System.Web.dll -r:ICSharpCode.SharpZipLib.dll -r:Mono.Security.dll -nowarn:618</flags>
       <output>Mono.Http.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_0/Mono.Http.dll</library_output>
     <project dir="class/Mono.Cairo" library="Mono.Cairo-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll /noconfig</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize /noconfig</flags>
       <output>Mono.Cairo.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_0/Mono.Cairo.dll</library_output>
     <project dir="class/IBM.Data.DB2" library="IBM.Data.DB2-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll /noconfig /unsafe /r:mscorlib.dll /r:System.dll /r:System.Xml.dll /r:System.Data.dll -warn:1</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize /noconfig /unsafe /r:mscorlib.dll /r:System.dll /r:System.Xml.dll /r:System.Data.dll -warn:1</flags>
       <output>IBM.Data.DB2.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_0/IBM.Data.DB2.dll</library_output>
     <project dir="class/CustomMarshalers" library="CustomMarshalers-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll /noconfig /r:mscorlib.dll /r:System.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize /noconfig /r:mscorlib.dll /r:System.dll</flags>
       <output>CustomMarshalers.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_0/CustomMarshalers.dll</library_output>
     <project dir="class/OpenSystem.C" library="OpenSystem.C-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll /noconfig</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize /noconfig</flags>
       <output>OpenSystem.C.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_0/OpenSystem.C.dll</library_output>
     <project dir="class/Mono.Cecil" library="Mono.Cecil-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll /noconfig /r:mscorlib.dll -keyfile:../mono.snk -r:System.Core.dll -d:NET_3_5</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize /noconfig /r:mscorlib.dll -keyfile:../mono.snk -r:System.Core.dll -d:NET_3_5</flags>
       <output>Mono.Cecil.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_0/Mono.Cecil.dll</library_output>
     <project dir="class/Mono.Cecil.Mdb" library="Mono.Cecil.Mdb-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll /noconfig /r:mscorlib.dll /r:System.dll /r:Mono.Cecil.dll /d:CECIL -keyfile:../mono.snk</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize /noconfig /r:mscorlib.dll /r:System.dll /r:Mono.Cecil.dll /d:CECIL -keyfile:../mono.snk</flags>
       <output>Mono.Cecil.Mdb.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_0/Mono.Cecil.Mdb.dll</library_output>
     <project dir="class/Mono.Debugger.Soft" library="Mono.Debugger.Soft-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll /noconfig /r:mscorlib.dll /r:System.dll /r:Mono.Cecil.dll /r:System.Core.dll /unsafe -D:MONO_DATACONVERTER_STATIC_METHODS -keyfile:../mono.snk</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize /noconfig /r:mscorlib.dll /r:System.dll /r:Mono.Cecil.dll /r:System.Core.dll /unsafe -D:MONO_DATACONVERTER_STATIC_METHODS -keyfile:../mono.snk</flags>
       <output>Mono.Debugger.Soft.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_0/Mono.Debugger.Soft.dll</library_output>
     <project dir="class/Mono.Debugger.Soft" library="Mono.Debugger.Soft-tests-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -r:./../../class/lib/net_4_0/Mono.Debugger.Soft.dll /r:Mono.Cecil.dll /r:System.dll /r:System.Core.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize -r:./../../class/lib/net_4_0/Mono.Debugger.Soft.dll /r:Mono.Cecil.dll /r:System.dll /r:System.Core.dll</flags>
       <output>Mono.Debugger.Soft_test_net_4_0.dll</output>
       <built_sources></built_sources>
       <library_output>Mono.Debugger.Soft_test_net_4_0.dll</library_output>
     <project dir="class/SystemWebTestShim" library="SystemWebTestShim-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll /noconfig -r:System.Web.dll -r:System.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize /noconfig -r:System.Web.dll -r:System.dll</flags>
       <output>SystemWebTestShim.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_0/SystemWebTestShim.dll</library_output>
     <project dir="class/Microsoft.Build.Framework" library="Microsoft.Build.Framework-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll /noconfig /r:mscorlib.dll /r:System.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize /noconfig /r:mscorlib.dll /r:System.dll</flags>
       <output>Microsoft.Build.Framework.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_0/Microsoft.Build.Framework.dll</library_output>
     <project dir="class/Microsoft.Build.Framework" library="Microsoft.Build.Framework-tests-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -r:./../../class/lib/net_4_0/Microsoft.Build.Framework.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize -r:./../../class/lib/net_4_0/Microsoft.Build.Framework.dll</flags>
       <output>Microsoft.Build.Framework_test_net_4_0.dll</output>
       <built_sources></built_sources>
       <library_output>Microsoft.Build.Framework_test_net_4_0.dll</library_output>
     <project dir="class/Microsoft.Build.Utilities" library="Microsoft.Build.Utilities-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll /noconfig /r:mscorlib.dll /r:System.dll /r:Microsoft.Build.Framework.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize /noconfig /r:mscorlib.dll /r:System.dll /r:Microsoft.Build.Framework.dll</flags>
       <output>Microsoft.Build.Utilities.v4.0.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_0/Microsoft.Build.Utilities.v4.0.dll</library_output>
     <project dir="class/Microsoft.Build.Utilities" library="Microsoft.Build.Utilities-tests-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -r:./../../class/lib/net_4_0/Microsoft.Build.Utilities.v4.0.dll /r:Microsoft.Build.Framework.dll -r:System.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize -r:./../../class/lib/net_4_0/Microsoft.Build.Utilities.v4.0.dll /r:Microsoft.Build.Framework.dll -r:System.dll</flags>
       <output>Microsoft.Build.Utilities_test_net_4_0.dll</output>
       <built_sources></built_sources>
       <library_output>Microsoft.Build.Utilities_test_net_4_0.dll</library_output>
     <project dir="class/Microsoft.Build.Engine" library="Microsoft.Build.Engine-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll /noconfig /r:mscorlib.dll /r:System.dll /r:System.Core.dll /r:System.Xml.dll /r:Microsoft.Build.Framework.dll /r:Microsoft.Build.Utilities.v4.0.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize /noconfig /r:mscorlib.dll /r:System.dll /r:System.Core.dll /r:System.Xml.dll /r:Microsoft.Build.Framework.dll /r:Microsoft.Build.Utilities.v4.0.dll</flags>
       <output>Microsoft.Build.Engine.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_0/Microsoft.Build.Engine.dll</library_output>
     <project dir="class/Microsoft.Build.Engine" library="Microsoft.Build.Engine-tests-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -r:./../../class/lib/net_4_0/Microsoft.Build.Engine.dll /r:Microsoft.Build.Framework.dll /r:Microsoft.Build.Utilities.v4.0.dll /r:System.Xml.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize -r:./../../class/lib/net_4_0/Microsoft.Build.Engine.dll /r:Microsoft.Build.Framework.dll /r:Microsoft.Build.Utilities.v4.0.dll /r:System.Xml.dll</flags>
       <output>Microsoft.Build.Engine_test_net_4_0.dll</output>
       <built_sources></built_sources>
       <library_output>Microsoft.Build.Engine_test_net_4_0.dll</library_output>
     <project dir="class/Microsoft.Build.Tasks" library="Microsoft.Build.Tasks-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll /noconfig /r:mscorlib.dll /r:System.dll /r:System.Core.dll /r:System.Xml.dll /r:System.Windows.Forms.dll /r:Microsoft.Build.Utilities.v4.0.dll /r:Microsoft.Build.Framework.dll /r:Microsoft.Build.Engine.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize /noconfig /r:mscorlib.dll /r:System.dll /r:System.Core.dll /r:System.Xml.dll /r:System.Windows.Forms.dll /r:Microsoft.Build.Utilities.v4.0.dll /r:Microsoft.Build.Framework.dll /r:Microsoft.Build.Engine.dll</flags>
       <output>Microsoft.Build.Tasks.v4.0.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_0/Microsoft.Build.Tasks.v4.0.dll</library_output>
     <project dir="class/Microsoft.Build.Tasks" library="Microsoft.Build.Tasks-tests-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -r:./../../class/lib/net_4_0/Microsoft.Build.Tasks.v4.0.dll /r:Microsoft.Build.Engine.dll /r:Microsoft.Build.Framework.dll /r:Microsoft.Build.Utilities.v4.0.dll /r:System.Core.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize -r:./../../class/lib/net_4_0/Microsoft.Build.Tasks.v4.0.dll /r:Microsoft.Build.Engine.dll /r:Microsoft.Build.Framework.dll /r:Microsoft.Build.Utilities.v4.0.dll /r:System.Core.dll</flags>
       <output>Microsoft.Build.Tasks_test_net_4_0.dll</output>
       <built_sources></built_sources>
       <library_output>Microsoft.Build.Tasks_test_net_4_0.dll</library_output>
     <project dir="class/System.Xml.Linq" library="System.Xml.Linq-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll /noconfig -r:System.dll -r:System.Core.dll -r:System.Xml.dll -d:NET_3_5 -nowarn:1720</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize /noconfig -r:System.dll -r:System.Core.dll -r:System.Xml.dll -d:NET_3_5 -nowarn:1720</flags>
       <output>System.Xml.Linq.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_0/System.Xml.Linq.dll</library_output>
     <project dir="class/System.Xml.Linq" library="System.Xml.Linq-tests-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -r:./../../class/lib/net_4_0/System.Xml.Linq.dll -r:System.dll -r:System.Core.dll -r:System.Xml.dll -d:NET_3_5 -nowarn:1720</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize -r:./../../class/lib/net_4_0/System.Xml.Linq.dll -r:System.dll -r:System.Core.dll -r:System.Xml.dll -d:NET_3_5 -nowarn:1720</flags>
       <output>System.Xml.Linq_test_net_4_0.dll</output>
       <built_sources></built_sources>
       <library_output>System.Xml.Linq_test_net_4_0.dll</library_output>
     <project dir="class/System.Runtime.Serialization" library="System.Runtime.Serialization-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll /noconfig /nowarn:168,169,219,414 /r:System.dll /r:System.Xml.dll /r:System.Core.dll /resource:resources/mstypes.schema /d:NET_3_0 /r:System.Data.dll /r:System.Configuration.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize /noconfig /nowarn:168,169,219,414 /r:System.dll /r:System.Xml.dll /r:System.Core.dll /resource:resources/mstypes.schema /d:NET_3_0 /r:System.Data.dll /r:System.Configuration.dll</flags>
       <output>System.Runtime.Serialization.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_0/System.Runtime.Serialization.dll</library_output>
     <project dir="class/System.Runtime.Serialization" library="System.Runtime.Serialization-tests-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -r:./../../class/lib/net_4_0/System.Runtime.Serialization.dll /nowarn:168,169,219,414 /r:System.dll /r:System.Xml.dll /r:System.Core.dll /resource:resources/mstypes.schema /d:NET_3_0 /r:System.Data.dll /r:System.Configuration.dll /r:System.ServiceModel.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize -r:./../../class/lib/net_4_0/System.Runtime.Serialization.dll /nowarn:168,169,219,414 /r:System.dll /r:System.Xml.dll /r:System.Core.dll /resource:resources/mstypes.schema /d:NET_3_0 /r:System.Data.dll /r:System.Configuration.dll /r:System.ServiceModel.dll</flags>
       <output>System.Runtime.Serialization_test_net_4_0.dll</output>
       <built_sources></built_sources>
       <library_output>System.Runtime.Serialization_test_net_4_0.dll</library_output>
     <project dir="class/System.Data.DataSetExtensions" library="System.Data.DataSetExtensions-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll /noconfig -r:mscorlib.dll -r:System.Core.dll -r:System.dll -r:System.Data.dll -r:System.Xml.dll -r:System.Web.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize /noconfig -r:mscorlib.dll -r:System.Core.dll -r:System.dll -r:System.Data.dll -r:System.Xml.dll -r:System.Web.dll</flags>
       <output>System.Data.DataSetExtensions.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_0/System.Data.DataSetExtensions.dll</library_output>
     <project dir="class/System.Data.DataSetExtensions" library="System.Data.DataSetExtensions-tests-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -r:./../../class/lib/net_4_0/System.Data.DataSetExtensions.dll -r:mscorlib.dll -r:System.Core.dll -r:System.dll -r:System.Data.dll -r:System.Xml.dll -r:System.Web.dll -doc:System.Data.DataSetExtensions_test_net_4_0.xml -nowarn:219 -nowarn:169</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize -r:./../../class/lib/net_4_0/System.Data.DataSetExtensions.dll -r:mscorlib.dll -r:System.Core.dll -r:System.dll -r:System.Data.dll -r:System.Xml.dll -r:System.Web.dll -doc:System.Data.DataSetExtensions_test_net_4_0.xml -nowarn:219 -nowarn:169</flags>
       <output>System.Data.DataSetExtensions_test_net_4_0.dll</output>
       <built_sources></built_sources>
       <library_output>System.Data.DataSetExtensions_test_net_4_0.dll</library_output>
     <project dir="class/System.Data.Linq" library="System.Data.Linq-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll /noconfig /r:System.dll /r:System.Core.dll /r:System.Xml.dll /r:System.Data.dll /r:System.Runtime.Serialization.dll /resource:./src/DbLinq/Schema/Dbml/DbmlSchema.xsd,DbLinq.Schema.Dbml.DbmlSchema.xsd /d:MONO_STRICT /d:MONO_DEPLOY -warn:1</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize /noconfig /r:System.dll /r:System.Core.dll /r:System.Xml.dll /r:System.Data.dll /r:System.Runtime.Serialization.dll /resource:./src/DbLinq/Schema/Dbml/DbmlSchema.xsd,DbLinq.Schema.Dbml.DbmlSchema.xsd /d:MONO_STRICT /d:MONO_DEPLOY -warn:1</flags>
       <output>System.Data.Linq.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_0/System.Data.Linq.dll</library_output>
     <project dir="class/System.Data.Linq" library="System.Data.Linq-tests-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -r:./../../class/lib/net_4_0/System.Data.Linq.dll /r:System.dll /r:System.Core.dll /r:System.Xml.dll /r:System.Data.dll /r:System.Runtime.Serialization.dll /resource:./src/DbLinq/Schema/Dbml/DbmlSchema.xsd,DbLinq.Schema.Dbml.DbmlSchema.xsd /d:MONO_STRICT /d:MONO_DEPLOY -warn:1</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize -r:./../../class/lib/net_4_0/System.Data.Linq.dll /r:System.dll /r:System.Core.dll /r:System.Xml.dll /r:System.Data.dll /r:System.Runtime.Serialization.dll /resource:./src/DbLinq/Schema/Dbml/DbmlSchema.xsd,DbLinq.Schema.Dbml.DbmlSchema.xsd /d:MONO_STRICT /d:MONO_DEPLOY -warn:1</flags>
       <output>System.Data.Linq_test_net_4_0.dll</output>
       <built_sources></built_sources>
       <library_output>System.Data.Linq_test_net_4_0.dll</library_output>
     <project dir="class/System.Web" library="System.Web-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll /noconfig -unsafe -nowarn:612,618 -r:mscorlib.dll -r:System.dll -r:System.Drawing.dll -r:System.Data.dll -r:System.Xml.dll -r:System.EnterpriseServices.dll -d:INSIDE_SYSTEM_WEB -nowarn:618 -r:System.Configuration.dll -r:Mono.Data.Sqlite.dll -r:System.Web.ApplicationServices.dll /resource:resources/TranslationResources.resources /resource:resources/WebUIValidation.js /resource:resources/folder.gif /resource:resources/file.gif /resource:resources/computer.gif /resource:resources/arrow_minus.gif /resource:resources/arrow_noexpand.gif /resource:resources/arrow_plus.gif /resource:resources/arrow_up.gif /resource:resources/arrow_down.gif /resource:resources/box_full.gif /resource:resources/box_empty.gif /resource:resources/box_minus.gif /resource:resources/box_noexpand.gif /resource:resources/box_plus.gif /resource:resources/contact.gif /resource:resources/dot_empty.gif /resource:resources/dot_full.gif /resource:resources/dots.gif /resource:resources/inbox.gif /resource:resources/star_empty.gif /resource:resources/star_full.gif /resource:resources/warning.gif /resource:resources/TreeView_noexpand.gif /resource:resources/TreeView_dash.gif /resource:resources/TreeView_dashminus.gif /resource:resources/TreeView_dashplus.gif /resource:resources/TreeView_i.gif /resource:resources/TreeView_l.gif /resource:resources/TreeView_lminus.gif /resource:resources/TreeView_lplus.gif /resource:resources/TreeView_minus.gif /resource:resources/TreeView_plus.gif /resource:resources/TreeView_r.gif /resource:resources/TreeView_rminus.gif /resource:resources/TreeView_rplus.gif /resource:resources/TreeView_t.gif /resource:resources/TreeView_tminus.gif /resource:resources/TreeView_tplus.gif /resource:resources/transparent.gif /resource:resources/webform.js /resource:resources/WebUIValidation_2.0.js /resource:resources/ErrorTemplateCommon_Top.html /resource:resources/DefaultErrorTemplate_CustomErrorDefault.html /resource:resources/ErrorTemplateCommon_Bottom.html /resource:resources/DefaultErrorTemplate_StandardPage.html /resource:resources/HtmlizedExceptionPage_Top.html /resource:resources/HtmlizedExceptionPage_FileLongSource.html /resource:resources/HtmlizedExceptionPage_FileShortSource.html /resource:resources/HtmlizedExceptionPage_CompilerOutput.html /resource:System.Web.UI.WebControls/GridView.js /resource:System.Web.UI.WebControls/DetailsView.js /resource:System.Web.UI.WebControls/TreeView.js /resource:System.Web.UI.WebControls/Menu.js /resource:System.Web.UI.WebControls/MenuModern.js -define:WEBSERVICES_DEP -r:System.Web.Services.dll -define:MONOWEB_DEP -r:Mono.Web.dll -define:SYSTEMCORE_DEP -r:System.Core.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize /noconfig -unsafe -nowarn:612,618 -r:mscorlib.dll -r:System.dll -r:System.Drawing.dll -r:System.Data.dll -r:System.Xml.dll -r:System.EnterpriseServices.dll -d:INSIDE_SYSTEM_WEB -nowarn:618 -r:System.Configuration.dll -r:Mono.Data.Sqlite.dll -r:System.Web.ApplicationServices.dll /resource:resources/TranslationResources.resources /resource:resources/WebUIValidation.js /resource:resources/folder.gif /resource:resources/file.gif /resource:resources/computer.gif /resource:resources/arrow_minus.gif /resource:resources/arrow_noexpand.gif /resource:resources/arrow_plus.gif /resource:resources/arrow_up.gif /resource:resources/arrow_down.gif /resource:resources/box_full.gif /resource:resources/box_empty.gif /resource:resources/box_minus.gif /resource:resources/box_noexpand.gif /resource:resources/box_plus.gif /resource:resources/contact.gif /resource:resources/dot_empty.gif /resource:resources/dot_full.gif /resource:resources/dots.gif /resource:resources/inbox.gif /resource:resources/star_empty.gif /resource:resources/star_full.gif /resource:resources/warning.gif /resource:resources/TreeView_noexpand.gif /resource:resources/TreeView_dash.gif /resource:resources/TreeView_dashminus.gif /resource:resources/TreeView_dashplus.gif /resource:resources/TreeView_i.gif /resource:resources/TreeView_l.gif /resource:resources/TreeView_lminus.gif /resource:resources/TreeView_lplus.gif /resource:resources/TreeView_minus.gif /resource:resources/TreeView_plus.gif /resource:resources/TreeView_r.gif /resource:resources/TreeView_rminus.gif /resource:resources/TreeView_rplus.gif /resource:resources/TreeView_t.gif /resource:resources/TreeView_tminus.gif /resource:resources/TreeView_tplus.gif /resource:resources/transparent.gif /resource:resources/webform.js /resource:resources/WebUIValidation_2.0.js /resource:resources/ErrorTemplateCommon_Top.html /resource:resources/DefaultErrorTemplate_CustomErrorDefault.html /resource:resources/ErrorTemplateCommon_Bottom.html /resource:resources/DefaultErrorTemplate_StandardPage.html /resource:resources/HtmlizedExceptionPage_Top.html /resource:resources/HtmlizedExceptionPage_FileLongSource.html /resource:resources/HtmlizedExceptionPage_FileShortSource.html /resource:resources/HtmlizedExceptionPage_CompilerOutput.html /resource:System.Web.UI.WebControls/GridView.js /resource:System.Web.UI.WebControls/DetailsView.js /resource:System.Web.UI.WebControls/TreeView.js /resource:System.Web.UI.WebControls/Menu.js /resource:System.Web.UI.WebControls/MenuModern.js -define:WEBSERVICES_DEP -r:System.Web.Services.dll -define:MONOWEB_DEP -r:Mono.Web.dll -define:SYSTEMCORE_DEP -r:System.Core.dll</flags>
       <output>System.Web.dll</output>
       <built_sources>System.Web/UplevelHelper.cs</built_sources>
       <library_output>./../../class/lib/net_4_0/tmp/System.Web.dll</library_output>
     <project dir="class/System.Web" library="System.Web-tests-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -r:./../../class/lib/net_4_0/System.Web.dll -unsafe -nowarn:612,618 -r:mscorlib.dll -r:System.dll -r:System.Drawing.dll -r:System.Data.dll -r:System.Xml.dll -r:System.EnterpriseServices.dll -d:INSIDE_SYSTEM_WEB -nowarn:618 -r:System.Configuration.dll -r:Mono.Data.Sqlite.dll -r:System.Web.ApplicationServices.dll /resource:resources/TranslationResources.resources /resource:resources/WebUIValidation.js /resource:resources/folder.gif /resource:resources/file.gif /resource:resources/computer.gif /resource:resources/arrow_minus.gif /resource:resources/arrow_noexpand.gif /resource:resources/arrow_plus.gif /resource:resources/arrow_up.gif /resource:resources/arrow_down.gif /resource:resources/box_full.gif /resource:resources/box_empty.gif /resource:resources/box_minus.gif /resource:resources/box_noexpand.gif /resource:resources/box_plus.gif /resource:resources/contact.gif /resource:resources/dot_empty.gif /resource:resources/dot_full.gif /resource:resources/dots.gif /resource:resources/inbox.gif /resource:resources/star_empty.gif /resource:resources/star_full.gif /resource:resources/warning.gif /resource:resources/TreeView_noexpand.gif /resource:resources/TreeView_dash.gif /resource:resources/TreeView_dashminus.gif /resource:resources/TreeView_dashplus.gif /resource:resources/TreeView_i.gif /resource:resources/TreeView_l.gif /resource:resources/TreeView_lminus.gif /resource:resources/TreeView_lplus.gif /resource:resources/TreeView_minus.gif /resource:resources/TreeView_plus.gif /resource:resources/TreeView_r.gif /resource:resources/TreeView_rminus.gif /resource:resources/TreeView_rplus.gif /resource:resources/TreeView_t.gif /resource:resources/TreeView_tminus.gif /resource:resources/TreeView_tplus.gif /resource:resources/transparent.gif /resource:resources/webform.js /resource:resources/WebUIValidation_2.0.js /resource:resources/ErrorTemplateCommon_Top.html /resource:resources/DefaultErrorTemplate_CustomErrorDefault.html /resource:resources/ErrorTemplateCommon_Bottom.html /resource:resources/DefaultErrorTemplate_StandardPage.html /resource:resources/HtmlizedExceptionPage_Top.html /resource:resources/HtmlizedExceptionPage_FileLongSource.html /resource:resources/HtmlizedExceptionPage_FileShortSource.html /resource:resources/HtmlizedExceptionPage_CompilerOutput.html /resource:System.Web.UI.WebControls/GridView.js /resource:System.Web.UI.WebControls/DetailsView.js /resource:System.Web.UI.WebControls/TreeView.js /resource:System.Web.UI.WebControls/Menu.js /resource:System.Web.UI.WebControls/MenuModern.js -define:WEBSERVICES_DEP -r:System.Web.Services.dll -define:MONOWEB_DEP -r:Mono.Web.dll -define:SYSTEMCORE_DEP -r:System.Core.dll -doc:System.Web_test_net_4_0.xml -nowarn:219,169,1591 -r:SystemWebTestShim.dll /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/Global.asax /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/My.ashx /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/My.master /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/MyPage.aspx /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/MyPage.aspx.cs /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/MyPageWithMaster.aspx /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/Web.mono.config /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/Web.mono.config.4.0 /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/sub_map_01.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_01.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_02.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_03.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_04.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_05.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_06.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_07.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_08.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_09.sitemap /resource:Test/mainsoft/NunitWebResources/menuclass.aspx /resource:Test/mainsoft/NunitWebResources/FormView.aspx /resource:Test/mainsoft/NunitWebResources/PostBackMenuTest.aspx /resource:Test/mainsoft/NunitWebResources/PageWithStyleSheet.aspx /resource:Test/mainsoft/NunitWebResources/PageWithTheme.aspx /resource:Test/mainsoft/NunitWebResources/ResolveUrl.ascx /resource:Test/mainsoft/NunitWebResources/ResolveUrl.aspx /resource:Test/mainsoft/NunitWebResources/RunTimeSetTheme.aspx /resource:Test/mainsoft/NunitWebResources/ReadOnlyPropertyBind.aspx /resource:Test/mainsoft/NunitWebResources/ReadOnlyPropertyControl.ascx /resource:Test/mainsoft/NunitWebResources/Theme1.skin /resource:Test/mainsoft/NunitWebResources/Theme2.skin /resource:Test/mainsoft/NunitWebResources/UrlProperty.aspx /resource:Test/mainsoft/NunitWebResources/UrlProperty.ascx /resource:Test/mainsoft/NunitWebResources/UrlProperty.ascx.cs /resource:Test/mainsoft/NunitWebResources/Web.sitemap /resource:Test/mainsoft/NunitWebResources/WizardTest.skin /resource:Test/mainsoft/NunitWebResources/FooterTemplateTest.aspx /resource:Test/mainsoft/NunitWebResources/DataGrid.aspx /resource:Test/mainsoft/NunitWebResources/DetailsViewTemplates.aspx /resource:Test/mainsoft/NunitWebResources/DetailsViewTemplates_2.aspx /resource:Test/mainsoft/NunitWebResources/DetailsViewTemplates_3.aspx /resource:Test/mainsoft/NunitWebResources/DetailsViewDataActions.aspx /resource:Test/mainsoft/NunitWebResources/DetailsViewProperties1.aspx /resource:Test/mainsoft/NunitWebResources/Bluehills.jpg /resource:Test/mainsoft/NunitWebResources/FormViewTest1.aspx /resource:Test/mainsoft/NunitWebResources/FormViewTest1_2.aspx /resource:Test/mainsoft/NunitWebResources/FormViewTest1_3.aspx /resource:Test/mainsoft/NunitWebResources/FormViewTest1_4.aspx /resource:Test/mainsoft/NunitWebResources/FormViewInsertEditDelete.aspx /resource:Test/mainsoft/NunitWebResources/GridViewUpdate.aspx /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest.xml /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest.xsl /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest1.aspx /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest2.aspx /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest3.aspx /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest4.aspx /resource:Test/mainsoft/NunitWebResources/LoginViewTest1.aspx /resource:Test/mainsoft/NunitWebResources/WebControl.config /resource:Test/mainsoft/NunitWebResources/WebLogin.config /resource:Test/mainsoft/NunitWebResources/CallbackTest1.aspx /resource:Test/mainsoft/NunitWebResources/CallbackTest2.aspx /resource:Test/mainsoft/NunitWebResources/EventValidationTest2.aspx /resource:Test/mainsoft/NunitWebResources/EventValidationTest1.aspx /resource:Test/mainsoft/NunitWebResources/ClientScript.js /resource:Test/mainsoft/NunitWebResources/EvalTest.aspx /resource:Test/mainsoft/NunitWebResources/TemplateUserControl.ascx /resource:Test/mainsoft/NunitWebResources/WebMapping.config /resource:Test/mainsoft/NunitWebResources/Mapping.aspx /resource:Test/mainsoft/NunitWebResources/Mapping1.aspx /resource:Test/mainsoft/NunitWebResources/CrossPagePosting1.aspx /resource:Test/mainsoft/NunitWebResources/CrossPagePosting2.aspx /resource:Test/mainsoft/NunitWebResources/MyDerived.master /resource:Test/mainsoft/NunitWebResources/MyPageWithDerivedMaster.aspx /resource:Test/mainsoft/NunitWebResources/MasterTypeTest1.aspx /resource:Test/mainsoft/NunitWebResources/MasterTypeTest2.aspx /resource:Test/mainsoft/NunitWebResources/PageLifecycleTest.aspx /resource:Test/mainsoft/NunitWebResources/PageValidationTest.aspx /resource:Test/mainsoft/NunitWebResources/AsyncPage.aspx /resource:Test/mainsoft/NunitWebResources/PageCultureTest.aspx /resource:Test/mainsoft/NunitWebResources/adapters.browser /resource:Test/mainsoft/NunitWebResources/NoEventValidation.aspx /resource:Test/mainsoft/NunitWebResources/ListControlPage.aspx /resource:Test/mainsoft/NunitWebResources/TextBoxTestlPage.aspx /resource:Test/mainsoft/NunitWebResources/ClearErrorOnError.aspx /resource:Test/mainsoft/NunitWebResources/RedirectOnError.aspx /resource:Test/mainsoft/NunitWebResources/TestCapability.browser /resource:Test/mainsoft/NunitWebResources/PageWithAdapter.aspx /resource:Test/mainsoft/NunitWebResources/InvalidPropertyBind1.aspx /resource:Test/mainsoft/NunitWebResources/InvalidPropertyBind2.aspx /resource:Test/mainsoft/NunitWebResources/InvalidPropertyBind3.aspx /resource:Test/mainsoft/NunitWebResources/InvalidPropertyBind4.aspx /resource:Test/mainsoft/NunitWebResources/ValidPropertyBind1.aspx /resource:Test/mainsoft/NunitWebResources/ValidPropertyBind2.aspx /resource:Test/mainsoft/NunitWebResources/ValidPropertyBind3.aspx /resource:Test/mainsoft/NunitWebResources/ValidPropertyBind4.aspx /resource:Test/mainsoft/NunitWebResources/ValidPropertyBind5.aspx /resource:Test/mainsoft/NunitWebResources/ReadWritePropertyControl.ascx /resource:Test/mainsoft/MainsoftWebTest/nunitweb_config.xml /resource:Test/mainsoft/NunitWebResources/TemplateControlParsingTest.aspx /resource:Test/mainsoft/NunitWebResources/ContentPlaceHolderInTemplate.aspx /resource:Test/mainsoft/NunitWebResources/ContentPlaceHolderInTemplate.master /resource:Test/mainsoft/NunitWebResources/MissingMasterFile.aspx /resource:Test/mainsoft/NunitWebResources/CustomSectionEmptyCollection.aspx /resource:Test/mainsoft/NunitWebResources/NoDoubleOnInitOnRemoveAdd.aspx /resource:Test/mainsoft/NunitWebResources/NoDoubleOnInitOnRemoveAdd.aspx.cs /resource:Test/mainsoft/NunitWebResources/LoginDisplayRememberMe.aspx /resource:Test/mainsoft/NunitWebResources/NoBindForMethodsWithBindInName.aspx /resource:Test/mainsoft/NunitWebResources/LinkInHeadWithEmbeddedExpression.aspx /resource:Test/mainsoft/NunitWebResources/ExpressionInListControl.aspx /resource:Test/mainsoft/NunitWebResources/ServerSideControlsInScriptBlock.aspx /resource:Test/mainsoft/NunitWebResources/ServerControlInClientSideComment.aspx /resource:Test/mainsoft/NunitWebResources/PreprocessorDirectivesInMarkup.aspx /resource:Test/mainsoft/NunitWebResources/UnquotedAngleBrackets.aspx /resource:Test/mainsoft/NunitWebResources/FullTagsInText.aspx /resource:Test/mainsoft/NunitWebResources/TagsExpressionsAndCommentsInText.aspx /resource:Test/mainsoft/NunitWebResources/NewlineInCodeExpression.aspx /resource:Test/mainsoft/NunitWebResources/DuplicateControlsInClientComment.aspx /resource:Test/mainsoft/NunitWebResources/TagsNestedInClientTag.aspx /resource:Test/mainsoft/NunitWebResources/ConditionalClientComments.aspx /resource:Test/mainsoft/NunitWebResources/OneLetterIdentifierInCodeRender.aspx /resource:Test/mainsoft/NunitWebResources/GlobalResourcesLocalization.aspx /resource:Test/mainsoft/NunitWebResources/TableSections_Bug551666.aspx /resource:Test/mainsoft/NunitWebResources/TableSections_Bug551666.aspx.cs /resource:Test/mainsoft/NunitWebResources/NestedParserFileText.aspx /resource:Test/mainsoft/NunitWebResources/StateFormatter_CorrectConverter.aspx /resource:Test/mainsoft/NunitWebResources/StateFormatter_CollectionConverter.aspx /resource:Test/mainsoft/NunitWebResources/StateFormatter_CollectionConverter.aspx.cs /resource:Test/mainsoft/NunitWebResources/ChangePasswordContainer_FindControl.aspx /resource:Test/mainsoft/NunitWebResources/TagWithExpressionWithinAttribute.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxList_Bug377703_1.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxList_Bug377703_2.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxList_Bug578770.aspx /resource:Test/mainsoft/NunitWebResources/EnumConverter_Bug578586.aspx /resource:Test/mainsoft/NunitWebResources/ButtonColor_Bug325489.aspx /resource:Test/mainsoft/NunitWebResources/SqlDataSource_OnInit_Bug572781.aspx /resource:Test/mainsoft/NunitWebResources/FormViewPagerVisibility.aspx /resource:Test/mainsoft/NunitWebResources/OverridenControlsPropertyAndPostBack_Bug594238.aspx /resource:Test/mainsoft/NunitWebResources/GlobalizationEncodingName.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_0.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_1.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_2.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_5.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_6.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_7.aspx /resource:Test/mainsoft/NunitWebResources/GridView_Bug595567.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxList_Bug600415.aspx /resource:Test/mainsoft/NunitWebResources/BoundField_Bug646505.aspx /resource:Test/mainsoft/NunitWebResources/BoundField_Bug646505.aspx.cs /resource:Test/mainsoft/NunitWebResources/HtmlTitleCodeRender_Bug662918.aspx /resource:Test/mainsoft/NunitWebResources/App_Code/EnumConverterControl.cs,App_Code/EnumConverterControl.cs /resource:Test/mainsoft/NunitWebResources/App_Code/MyContainer.cs,App_Code/MyContainer.cs /resource:Test/mainsoft/NunitWebResources/App_Code/CustomCheckBoxColumn.cs,App_Code/CustomCheckBoxColumn.cs /resource:Test/mainsoft/NunitWebResources/App_GlobalResources/Common.resx,App_GlobalResources/Common.resx /resource:Test/mainsoft/NunitWebResources/App_GlobalResources/Common.fr-FR.resx,App_GlobalResources/Common.fr-FR.resx /resource:Test/mainsoft/NunitWebResources/App_GlobalResources/Resource1.resx,App_GlobalResources/Resource1.resx</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize -r:./../../class/lib/net_4_0/System.Web.dll -unsafe -nowarn:612,618 -r:mscorlib.dll -r:System.dll -r:System.Drawing.dll -r:System.Data.dll -r:System.Xml.dll -r:System.EnterpriseServices.dll -d:INSIDE_SYSTEM_WEB -nowarn:618 -r:System.Configuration.dll -r:Mono.Data.Sqlite.dll -r:System.Web.ApplicationServices.dll /resource:resources/TranslationResources.resources /resource:resources/WebUIValidation.js /resource:resources/folder.gif /resource:resources/file.gif /resource:resources/computer.gif /resource:resources/arrow_minus.gif /resource:resources/arrow_noexpand.gif /resource:resources/arrow_plus.gif /resource:resources/arrow_up.gif /resource:resources/arrow_down.gif /resource:resources/box_full.gif /resource:resources/box_empty.gif /resource:resources/box_minus.gif /resource:resources/box_noexpand.gif /resource:resources/box_plus.gif /resource:resources/contact.gif /resource:resources/dot_empty.gif /resource:resources/dot_full.gif /resource:resources/dots.gif /resource:resources/inbox.gif /resource:resources/star_empty.gif /resource:resources/star_full.gif /resource:resources/warning.gif /resource:resources/TreeView_noexpand.gif /resource:resources/TreeView_dash.gif /resource:resources/TreeView_dashminus.gif /resource:resources/TreeView_dashplus.gif /resource:resources/TreeView_i.gif /resource:resources/TreeView_l.gif /resource:resources/TreeView_lminus.gif /resource:resources/TreeView_lplus.gif /resource:resources/TreeView_minus.gif /resource:resources/TreeView_plus.gif /resource:resources/TreeView_r.gif /resource:resources/TreeView_rminus.gif /resource:resources/TreeView_rplus.gif /resource:resources/TreeView_t.gif /resource:resources/TreeView_tminus.gif /resource:resources/TreeView_tplus.gif /resource:resources/transparent.gif /resource:resources/webform.js /resource:resources/WebUIValidation_2.0.js /resource:resources/ErrorTemplateCommon_Top.html /resource:resources/DefaultErrorTemplate_CustomErrorDefault.html /resource:resources/ErrorTemplateCommon_Bottom.html /resource:resources/DefaultErrorTemplate_StandardPage.html /resource:resources/HtmlizedExceptionPage_Top.html /resource:resources/HtmlizedExceptionPage_FileLongSource.html /resource:resources/HtmlizedExceptionPage_FileShortSource.html /resource:resources/HtmlizedExceptionPage_CompilerOutput.html /resource:System.Web.UI.WebControls/GridView.js /resource:System.Web.UI.WebControls/DetailsView.js /resource:System.Web.UI.WebControls/TreeView.js /resource:System.Web.UI.WebControls/Menu.js /resource:System.Web.UI.WebControls/MenuModern.js -define:WEBSERVICES_DEP -r:System.Web.Services.dll -define:MONOWEB_DEP -r:Mono.Web.dll -define:SYSTEMCORE_DEP -r:System.Core.dll -doc:System.Web_test_net_4_0.xml -nowarn:219,169,1591 -r:SystemWebTestShim.dll /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/Global.asax /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/My.ashx /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/My.master /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/MyPage.aspx /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/MyPage.aspx.cs /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/MyPageWithMaster.aspx /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/Web.mono.config /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/Web.mono.config.4.0 /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/sub_map_01.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_01.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_02.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_03.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_04.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_05.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_06.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_07.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_08.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_09.sitemap /resource:Test/mainsoft/NunitWebResources/menuclass.aspx /resource:Test/mainsoft/NunitWebResources/FormView.aspx /resource:Test/mainsoft/NunitWebResources/PostBackMenuTest.aspx /resource:Test/mainsoft/NunitWebResources/PageWithStyleSheet.aspx /resource:Test/mainsoft/NunitWebResources/PageWithTheme.aspx /resource:Test/mainsoft/NunitWebResources/ResolveUrl.ascx /resource:Test/mainsoft/NunitWebResources/ResolveUrl.aspx /resource:Test/mainsoft/NunitWebResources/RunTimeSetTheme.aspx /resource:Test/mainsoft/NunitWebResources/ReadOnlyPropertyBind.aspx /resource:Test/mainsoft/NunitWebResources/ReadOnlyPropertyControl.ascx /resource:Test/mainsoft/NunitWebResources/Theme1.skin /resource:Test/mainsoft/NunitWebResources/Theme2.skin /resource:Test/mainsoft/NunitWebResources/UrlProperty.aspx /resource:Test/mainsoft/NunitWebResources/UrlProperty.ascx /resource:Test/mainsoft/NunitWebResources/UrlProperty.ascx.cs /resource:Test/mainsoft/NunitWebResources/Web.sitemap /resource:Test/mainsoft/NunitWebResources/WizardTest.skin /resource:Test/mainsoft/NunitWebResources/FooterTemplateTest.aspx /resource:Test/mainsoft/NunitWebResources/DataGrid.aspx /resource:Test/mainsoft/NunitWebResources/DetailsViewTemplates.aspx /resource:Test/mainsoft/NunitWebResources/DetailsViewTemplates_2.aspx /resource:Test/mainsoft/NunitWebResources/DetailsViewTemplates_3.aspx /resource:Test/mainsoft/NunitWebResources/DetailsViewDataActions.aspx /resource:Test/mainsoft/NunitWebResources/DetailsViewProperties1.aspx /resource:Test/mainsoft/NunitWebResources/Bluehills.jpg /resource:Test/mainsoft/NunitWebResources/FormViewTest1.aspx /resource:Test/mainsoft/NunitWebResources/FormViewTest1_2.aspx /resource:Test/mainsoft/NunitWebResources/FormViewTest1_3.aspx /resource:Test/mainsoft/NunitWebResources/FormViewTest1_4.aspx /resource:Test/mainsoft/NunitWebResources/FormViewInsertEditDelete.aspx /resource:Test/mainsoft/NunitWebResources/GridViewUpdate.aspx /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest.xml /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest.xsl /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest1.aspx /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest2.aspx /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest3.aspx /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest4.aspx /resource:Test/mainsoft/NunitWebResources/LoginViewTest1.aspx /resource:Test/mainsoft/NunitWebResources/WebControl.config /resource:Test/mainsoft/NunitWebResources/WebLogin.config /resource:Test/mainsoft/NunitWebResources/CallbackTest1.aspx /resource:Test/mainsoft/NunitWebResources/CallbackTest2.aspx /resource:Test/mainsoft/NunitWebResources/EventValidationTest2.aspx /resource:Test/mainsoft/NunitWebResources/EventValidationTest1.aspx /resource:Test/mainsoft/NunitWebResources/ClientScript.js /resource:Test/mainsoft/NunitWebResources/EvalTest.aspx /resource:Test/mainsoft/NunitWebResources/TemplateUserControl.ascx /resource:Test/mainsoft/NunitWebResources/WebMapping.config /resource:Test/mainsoft/NunitWebResources/Mapping.aspx /resource:Test/mainsoft/NunitWebResources/Mapping1.aspx /resource:Test/mainsoft/NunitWebResources/CrossPagePosting1.aspx /resource:Test/mainsoft/NunitWebResources/CrossPagePosting2.aspx /resource:Test/mainsoft/NunitWebResources/MyDerived.master /resource:Test/mainsoft/NunitWebResources/MyPageWithDerivedMaster.aspx /resource:Test/mainsoft/NunitWebResources/MasterTypeTest1.aspx /resource:Test/mainsoft/NunitWebResources/MasterTypeTest2.aspx /resource:Test/mainsoft/NunitWebResources/PageLifecycleTest.aspx /resource:Test/mainsoft/NunitWebResources/PageValidationTest.aspx /resource:Test/mainsoft/NunitWebResources/AsyncPage.aspx /resource:Test/mainsoft/NunitWebResources/PageCultureTest.aspx /resource:Test/mainsoft/NunitWebResources/adapters.browser /resource:Test/mainsoft/NunitWebResources/NoEventValidation.aspx /resource:Test/mainsoft/NunitWebResources/ListControlPage.aspx /resource:Test/mainsoft/NunitWebResources/TextBoxTestlPage.aspx /resource:Test/mainsoft/NunitWebResources/ClearErrorOnError.aspx /resource:Test/mainsoft/NunitWebResources/RedirectOnError.aspx /resource:Test/mainsoft/NunitWebResources/TestCapability.browser /resource:Test/mainsoft/NunitWebResources/PageWithAdapter.aspx /resource:Test/mainsoft/NunitWebResources/InvalidPropertyBind1.aspx /resource:Test/mainsoft/NunitWebResources/InvalidPropertyBind2.aspx /resource:Test/mainsoft/NunitWebResources/InvalidPropertyBind3.aspx /resource:Test/mainsoft/NunitWebResources/InvalidPropertyBind4.aspx /resource:Test/mainsoft/NunitWebResources/ValidPropertyBind1.aspx /resource:Test/mainsoft/NunitWebResources/ValidPropertyBind2.aspx /resource:Test/mainsoft/NunitWebResources/ValidPropertyBind3.aspx /resource:Test/mainsoft/NunitWebResources/ValidPropertyBind4.aspx /resource:Test/mainsoft/NunitWebResources/ValidPropertyBind5.aspx /resource:Test/mainsoft/NunitWebResources/ReadWritePropertyControl.ascx /resource:Test/mainsoft/MainsoftWebTest/nunitweb_config.xml /resource:Test/mainsoft/NunitWebResources/TemplateControlParsingTest.aspx /resource:Test/mainsoft/NunitWebResources/ContentPlaceHolderInTemplate.aspx /resource:Test/mainsoft/NunitWebResources/ContentPlaceHolderInTemplate.master /resource:Test/mainsoft/NunitWebResources/MissingMasterFile.aspx /resource:Test/mainsoft/NunitWebResources/CustomSectionEmptyCollection.aspx /resource:Test/mainsoft/NunitWebResources/NoDoubleOnInitOnRemoveAdd.aspx /resource:Test/mainsoft/NunitWebResources/NoDoubleOnInitOnRemoveAdd.aspx.cs /resource:Test/mainsoft/NunitWebResources/LoginDisplayRememberMe.aspx /resource:Test/mainsoft/NunitWebResources/NoBindForMethodsWithBindInName.aspx /resource:Test/mainsoft/NunitWebResources/LinkInHeadWithEmbeddedExpression.aspx /resource:Test/mainsoft/NunitWebResources/ExpressionInListControl.aspx /resource:Test/mainsoft/NunitWebResources/ServerSideControlsInScriptBlock.aspx /resource:Test/mainsoft/NunitWebResources/ServerControlInClientSideComment.aspx /resource:Test/mainsoft/NunitWebResources/PreprocessorDirectivesInMarkup.aspx /resource:Test/mainsoft/NunitWebResources/UnquotedAngleBrackets.aspx /resource:Test/mainsoft/NunitWebResources/FullTagsInText.aspx /resource:Test/mainsoft/NunitWebResources/TagsExpressionsAndCommentsInText.aspx /resource:Test/mainsoft/NunitWebResources/NewlineInCodeExpression.aspx /resource:Test/mainsoft/NunitWebResources/DuplicateControlsInClientComment.aspx /resource:Test/mainsoft/NunitWebResources/TagsNestedInClientTag.aspx /resource:Test/mainsoft/NunitWebResources/ConditionalClientComments.aspx /resource:Test/mainsoft/NunitWebResources/OneLetterIdentifierInCodeRender.aspx /resource:Test/mainsoft/NunitWebResources/GlobalResourcesLocalization.aspx /resource:Test/mainsoft/NunitWebResources/TableSections_Bug551666.aspx /resource:Test/mainsoft/NunitWebResources/TableSections_Bug551666.aspx.cs /resource:Test/mainsoft/NunitWebResources/NestedParserFileText.aspx /resource:Test/mainsoft/NunitWebResources/StateFormatter_CorrectConverter.aspx /resource:Test/mainsoft/NunitWebResources/StateFormatter_CollectionConverter.aspx /resource:Test/mainsoft/NunitWebResources/StateFormatter_CollectionConverter.aspx.cs /resource:Test/mainsoft/NunitWebResources/ChangePasswordContainer_FindControl.aspx /resource:Test/mainsoft/NunitWebResources/TagWithExpressionWithinAttribute.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxList_Bug377703_1.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxList_Bug377703_2.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxList_Bug578770.aspx /resource:Test/mainsoft/NunitWebResources/EnumConverter_Bug578586.aspx /resource:Test/mainsoft/NunitWebResources/ButtonColor_Bug325489.aspx /resource:Test/mainsoft/NunitWebResources/SqlDataSource_OnInit_Bug572781.aspx /resource:Test/mainsoft/NunitWebResources/FormViewPagerVisibility.aspx /resource:Test/mainsoft/NunitWebResources/OverridenControlsPropertyAndPostBack_Bug594238.aspx /resource:Test/mainsoft/NunitWebResources/GlobalizationEncodingName.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_0.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_1.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_2.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_5.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_6.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_7.aspx /resource:Test/mainsoft/NunitWebResources/GridView_Bug595567.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxList_Bug600415.aspx /resource:Test/mainsoft/NunitWebResources/BoundField_Bug646505.aspx /resource:Test/mainsoft/NunitWebResources/BoundField_Bug646505.aspx.cs /resource:Test/mainsoft/NunitWebResources/HtmlTitleCodeRender_Bug662918.aspx /resource:Test/mainsoft/NunitWebResources/App_Code/EnumConverterControl.cs,App_Code/EnumConverterControl.cs /resource:Test/mainsoft/NunitWebResources/App_Code/MyContainer.cs,App_Code/MyContainer.cs /resource:Test/mainsoft/NunitWebResources/App_Code/CustomCheckBoxColumn.cs,App_Code/CustomCheckBoxColumn.cs /resource:Test/mainsoft/NunitWebResources/App_GlobalResources/Common.resx,App_GlobalResources/Common.resx /resource:Test/mainsoft/NunitWebResources/App_GlobalResources/Common.fr-FR.resx,App_GlobalResources/Common.fr-FR.resx /resource:Test/mainsoft/NunitWebResources/App_GlobalResources/Resource1.resx,App_GlobalResources/Resource1.resx</flags>
       <output>System.Web_test_net_4_0.dll</output>
       <built_sources>System.Web/UplevelHelper.cs</built_sources>
       <library_output>System.Web_test_net_4_0.dll</library_output>
     <project dir="class/System.Web.Abstractions" library="System.Web.Abstractions-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll /noconfig /r:System.dll /r:System.Core.dll /r:System.Web.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize /noconfig /r:System.dll /r:System.Core.dll /r:System.Web.dll</flags>
       <output>System.Web.Abstractions.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_0/System.Web.Abstractions.dll</library_output>
     <project dir="class/System.Web.Abstractions" library="System.Web.Abstractions-tests-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -r:./../../class/lib/net_4_0/System.Web.Abstractions.dll /r:System.dll /r:System.Core.dll /r:System.Web.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize -r:./../../class/lib/net_4_0/System.Web.Abstractions.dll /r:System.dll /r:System.Core.dll /r:System.Web.dll</flags>
       <output>System.Web.Abstractions_test_net_4_0.dll</output>
       <built_sources></built_sources>
       <library_output>System.Web.Abstractions_test_net_4_0.dll</library_output>
     <project dir="class/System.Web.Routing" library="System.Web.Routing-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll /noconfig /r:System.dll /r:System.Core.dll /r:System.Web.dll /r:System.Web.Abstractions.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize /noconfig /r:System.dll /r:System.Core.dll /r:System.Web.dll /r:System.Web.Abstractions.dll</flags>
       <output>System.Web.Routing.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_0/System.Web.Routing.dll</library_output>
     <project dir="class/System.Web.Routing" library="System.Web.Routing-tests-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -r:./../../class/lib/net_4_0/System.Web.Routing.dll /r:System.dll /r:System.Core.dll /r:System.Web.dll /r:System.Web.Abstractions.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize -r:./../../class/lib/net_4_0/System.Web.Routing.dll /r:System.dll /r:System.Core.dll /r:System.Web.dll /r:System.Web.Abstractions.dll</flags>
       <output>System.Web.Routing_test_net_4_0.dll</output>
       <built_sources></built_sources>
       <library_output>System.Web.Routing_test_net_4_0.dll</library_output>
     <project dir="class/System.IdentityModel" library="System.IdentityModel-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll /noconfig /d:NET_3_0 /r:System.dll /r:System.Xml.dll /r:System.Security.dll /r:System.Web.dll /r:System.Configuration.dll /r:Mono.Security.dll /r:System.Runtime.Serialization.dll -r:System.Web.ApplicationServices.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize /noconfig /d:NET_3_0 /r:System.dll /r:System.Xml.dll /r:System.Security.dll /r:System.Web.dll /r:System.Configuration.dll /r:Mono.Security.dll /r:System.Runtime.Serialization.dll -r:System.Web.ApplicationServices.dll</flags>
       <output>System.IdentityModel.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_0/System.IdentityModel.dll</library_output>
     <project dir="class/System.IdentityModel" library="System.IdentityModel-tests-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -r:./../../class/lib/net_4_0/System.IdentityModel.dll /d:NET_3_0 /r:System.dll /r:System.Xml.dll /r:System.Security.dll /r:System.Web.dll /r:System.Configuration.dll /r:Mono.Security.dll /r:System.Runtime.Serialization.dll -r:System.Web.ApplicationServices.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize -r:./../../class/lib/net_4_0/System.IdentityModel.dll /d:NET_3_0 /r:System.dll /r:System.Xml.dll /r:System.Security.dll /r:System.Web.dll /r:System.Configuration.dll /r:Mono.Security.dll /r:System.Runtime.Serialization.dll -r:System.Web.ApplicationServices.dll</flags>
       <output>System.IdentityModel_test_net_4_0.dll</output>
       <built_sources></built_sources>
       <library_output>System.IdentityModel_test_net_4_0.dll</library_output>
     <project dir="class/System.IdentityModel.Selectors" library="System.IdentityModel.Selectors-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll /noconfig /d:NET_3_0 /r:System.dll /r:System.Xml.dll /r:System.Security.dll /r:System.Runtime.Serialization.dll /r:System.IdentityModel.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize /noconfig /d:NET_3_0 /r:System.dll /r:System.Xml.dll /r:System.Security.dll /r:System.Runtime.Serialization.dll /r:System.IdentityModel.dll</flags>
       <output>System.IdentityModel.Selectors.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_0/System.IdentityModel.Selectors.dll</library_output>
     <project dir="class/System.ServiceModel" library="System.ServiceModel-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll /noconfig /nowarn:414,169,67,3005,436,219,618 /unsafe /d:TRACE /r:System.dll /r:System.Xml.dll /r:System.Core.dll /r:System.Runtime.Serialization.dll /resource:resources/WS-Addressing.schema /resource:resources/ws-addr.xsd /d:NET_3_0 /r:System.Configuration.dll /r:System.Data.dll /r:System.Security.dll /r:System.IdentityModel.dll /r:System.IdentityModel.Selectors.dll /r:System.Transactions.dll /r:System.Messaging.dll /r:System.Web.dll /r:System.Web.Services.dll /r:Mono.Security.dll /r:System.Web.ApplicationServices.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize /noconfig /nowarn:414,169,67,3005,436,219,618 /unsafe /d:TRACE /r:System.dll /r:System.Xml.dll /r:System.Core.dll /r:System.Runtime.Serialization.dll /resource:resources/WS-Addressing.schema /resource:resources/ws-addr.xsd /d:NET_3_0 /r:System.Configuration.dll /r:System.Data.dll /r:System.Security.dll /r:System.IdentityModel.dll /r:System.IdentityModel.Selectors.dll /r:System.Transactions.dll /r:System.Messaging.dll /r:System.Web.dll /r:System.Web.Services.dll /r:Mono.Security.dll /r:System.Web.ApplicationServices.dll</flags>
       <output>System.ServiceModel.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_0/System.ServiceModel.dll</library_output>
     <project dir="class/System.ServiceModel" library="System.ServiceModel-tests-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -r:./../../class/lib/net_4_0/System.ServiceModel.dll /nowarn:414,169,67,3005,436,219,618 /unsafe /d:TRACE /r:System.dll /r:System.Xml.dll /r:System.Core.dll /r:System.Runtime.Serialization.dll /resource:resources/WS-Addressing.schema /resource:resources/ws-addr.xsd /d:NET_3_0 /r:System.Configuration.dll /r:System.Data.dll /r:System.Security.dll /r:System.IdentityModel.dll /r:System.IdentityModel.Selectors.dll /r:System.Transactions.dll /r:System.Messaging.dll /r:System.Web.dll /r:System.Web.Services.dll /r:Mono.Security.dll /r:System.Web.ApplicationServices.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize -r:./../../class/lib/net_4_0/System.ServiceModel.dll /nowarn:414,169,67,3005,436,219,618 /unsafe /d:TRACE /r:System.dll /r:System.Xml.dll /r:System.Core.dll /r:System.Runtime.Serialization.dll /resource:resources/WS-Addressing.schema /resource:resources/ws-addr.xsd /d:NET_3_0 /r:System.Configuration.dll /r:System.Data.dll /r:System.Security.dll /r:System.IdentityModel.dll /r:System.IdentityModel.Selectors.dll /r:System.Transactions.dll /r:System.Messaging.dll /r:System.Web.dll /r:System.Web.Services.dll /r:Mono.Security.dll /r:System.Web.ApplicationServices.dll</flags>
       <output>System.ServiceModel_test_net_4_0.dll</output>
       <built_sources></built_sources>
       <library_output>System.ServiceModel_test_net_4_0.dll</library_output>
     <project dir="class/System.Web.Extensions" library="System.Web.Extensions-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll /noconfig -unsafe -define:NET_3_5 -define:SYSTEM_WEB_EXTENSIONS -r:mscorlib.dll -r:System.dll -r:System.Core.dll -r:System.Drawing.dll -r:System.Data.dll -r:System.Data.Linq.dll -r:System.Xml.dll -r:System.Web.dll -r:System.Web.Services.dll -r:System.Configuration.dll -r:System.EnterpriseServices.dll -r:System.ServiceModel.dll -r:System.Web.ApplicationServices.dll /resource:../MicrosoftAjaxLibrary/System.Web.Extensions/3.5.0.0/3.5.21022.8/MicrosoftAjax.debug.js /resource:../MicrosoftAjaxLibrary/System.Web.Extensions/3.5.0.0/3.5.21022.8/MicrosoftAjax.js /resource:../MicrosoftAjaxLibrary/System.Web.Extensions/3.5.0.0/3.5.21022.8/MicrosoftAjaxTimer.debug.js /resource:../MicrosoftAjaxLibrary/System.Web.Extensions/3.5.0.0/3.5.21022.8/MicrosoftAjaxTimer.js /resource:../MicrosoftAjaxLibrary/System.Web.Extensions/3.5.0.0/3.5.21022.8/MicrosoftAjaxWebForms.debug.js /resource:../MicrosoftAjaxLibrary/System.Web.Extensions/3.5.0.0/3.5.21022.8/MicrosoftAjaxWebForms.js</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize /noconfig -unsafe -define:NET_3_5 -define:SYSTEM_WEB_EXTENSIONS -r:mscorlib.dll -r:System.dll -r:System.Core.dll -r:System.Drawing.dll -r:System.Data.dll -r:System.Data.Linq.dll -r:System.Xml.dll -r:System.Web.dll -r:System.Web.Services.dll -r:System.Configuration.dll -r:System.EnterpriseServices.dll -r:System.ServiceModel.dll -r:System.Web.ApplicationServices.dll /resource:../MicrosoftAjaxLibrary/System.Web.Extensions/3.5.0.0/3.5.21022.8/MicrosoftAjax.debug.js /resource:../MicrosoftAjaxLibrary/System.Web.Extensions/3.5.0.0/3.5.21022.8/MicrosoftAjax.js /resource:../MicrosoftAjaxLibrary/System.Web.Extensions/3.5.0.0/3.5.21022.8/MicrosoftAjaxTimer.debug.js /resource:../MicrosoftAjaxLibrary/System.Web.Extensions/3.5.0.0/3.5.21022.8/MicrosoftAjaxTimer.js /resource:../MicrosoftAjaxLibrary/System.Web.Extensions/3.5.0.0/3.5.21022.8/MicrosoftAjaxWebForms.debug.js /resource:../MicrosoftAjaxLibrary/System.Web.Extensions/3.5.0.0/3.5.21022.8/MicrosoftAjaxWebForms.js</flags>
       <output>System.Web.Extensions.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_0/System.Web.Extensions.dll</library_output>
     <project dir="class/System.Web.Extensions" library="System.Web.Extensions-tests-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -r:./../../class/lib/net_4_0/System.Web.Extensions.dll -unsafe -define:NET_3_5 -define:SYSTEM_WEB_EXTENSIONS -r:mscorlib.dll -r:System.dll -r:System.Core.dll -r:System.Drawing.dll -r:System.Data.dll -r:System.Data.Linq.dll -r:System.Xml.dll -r:System.Web.dll -r:System.Web.Services.dll -r:System.Configuration.dll -r:System.EnterpriseServices.dll -r:System.ServiceModel.dll -r:System.Web.ApplicationServices.dll /resource:../MicrosoftAjaxLibrary/System.Web.Extensions/3.5.0.0/3.5.21022.8/MicrosoftAjax.debug.js /resource:../MicrosoftAjaxLibrary/System.Web.Extensions/3.5.0.0/3.5.21022.8/MicrosoftAjax.js /resource:../MicrosoftAjaxLibrary/System.Web.Extensions/3.5.0.0/3.5.21022.8/MicrosoftAjaxTimer.debug.js /resource:../MicrosoftAjaxLibrary/System.Web.Extensions/3.5.0.0/3.5.21022.8/MicrosoftAjaxTimer.js /resource:../MicrosoftAjaxLibrary/System.Web.Extensions/3.5.0.0/3.5.21022.8/MicrosoftAjaxWebForms.debug.js /resource:../MicrosoftAjaxLibrary/System.Web.Extensions/3.5.0.0/3.5.21022.8/MicrosoftAjaxWebForms.js -doc:System.Web.Extensions_test_net_4_0.xml -nowarn:219,169,1591 /resource:Test/resources/Web.mono.config /resource:Test/resources/profile.config.4.5 /resource:Test/resources/profile.config.4.0 /resource:Test/resources/profile.config.2.0 /resource:Test/resources/ListViewSort.aspx /resource:Test/resources/ListViewTest.aspx /resource:Test/resources/ListViewTotalRowCount_Bug535701_1.aspx /resource:Test/resources/ListViewTotalRowCount_Bug535701_2.aspx /resource:Test/resources/ListViewTotalRowCount_Bug604053.aspx /resource:../System.Web/Test/mainsoft/NunitWeb/NunitWeb/Resources/MyPage.aspx.cs /resource:../System.Web/Test/mainsoft/NunitWeb/NunitWeb/Resources/Global.asax /resource:../System.Web/Test/mainsoft/NunitWeb/NunitWeb/Resources/My.ashx /resource:../System.Web/Test/mainsoft/NunitWeb/NunitWeb/Resources/MyPage.aspx /resource:../System.Web/Test/mainsoft/NunitWeb/NunitWeb/Resources/MyPageWithDerivedMaster.aspx /resource:../System.Web/Test/mainsoft/NunitWeb/NunitWeb/Resources/MyPageWithMaster.aspx /resource:../System.Web/Test/mainsoft/NunitWeb/NunitWeb/Resources/MyPageWithMasterInvalidPlaceHolder.aspx /resource:../System.Web/Test/mainsoft/NunitWeb/NunitWeb/Resources/MyDerived.master /resource:../System.Web/Test/mainsoft/NunitWeb/NunitWeb/Resources/My.master -r:SystemWebTestShim.dll -define:SYSTEM_WEB_EXTENSIONS</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize -r:./../../class/lib/net_4_0/System.Web.Extensions.dll -unsafe -define:NET_3_5 -define:SYSTEM_WEB_EXTENSIONS -r:mscorlib.dll -r:System.dll -r:System.Core.dll -r:System.Drawing.dll -r:System.Data.dll -r:System.Data.Linq.dll -r:System.Xml.dll -r:System.Web.dll -r:System.Web.Services.dll -r:System.Configuration.dll -r:System.EnterpriseServices.dll -r:System.ServiceModel.dll -r:System.Web.ApplicationServices.dll /resource:../MicrosoftAjaxLibrary/System.Web.Extensions/3.5.0.0/3.5.21022.8/MicrosoftAjax.debug.js /resource:../MicrosoftAjaxLibrary/System.Web.Extensions/3.5.0.0/3.5.21022.8/MicrosoftAjax.js /resource:../MicrosoftAjaxLibrary/System.Web.Extensions/3.5.0.0/3.5.21022.8/MicrosoftAjaxTimer.debug.js /resource:../MicrosoftAjaxLibrary/System.Web.Extensions/3.5.0.0/3.5.21022.8/MicrosoftAjaxTimer.js /resource:../MicrosoftAjaxLibrary/System.Web.Extensions/3.5.0.0/3.5.21022.8/MicrosoftAjaxWebForms.debug.js /resource:../MicrosoftAjaxLibrary/System.Web.Extensions/3.5.0.0/3.5.21022.8/MicrosoftAjaxWebForms.js -doc:System.Web.Extensions_test_net_4_0.xml -nowarn:219,169,1591 /resource:Test/resources/Web.mono.config /resource:Test/resources/profile.config.4.5 /resource:Test/resources/profile.config.4.0 /resource:Test/resources/profile.config.2.0 /resource:Test/resources/ListViewSort.aspx /resource:Test/resources/ListViewTest.aspx /resource:Test/resources/ListViewTotalRowCount_Bug535701_1.aspx /resource:Test/resources/ListViewTotalRowCount_Bug535701_2.aspx /resource:Test/resources/ListViewTotalRowCount_Bug604053.aspx /resource:../System.Web/Test/mainsoft/NunitWeb/NunitWeb/Resources/MyPage.aspx.cs /resource:../System.Web/Test/mainsoft/NunitWeb/NunitWeb/Resources/Global.asax /resource:../System.Web/Test/mainsoft/NunitWeb/NunitWeb/Resources/My.ashx /resource:../System.Web/Test/mainsoft/NunitWeb/NunitWeb/Resources/MyPage.aspx /resource:../System.Web/Test/mainsoft/NunitWeb/NunitWeb/Resources/MyPageWithDerivedMaster.aspx /resource:../System.Web/Test/mainsoft/NunitWeb/NunitWeb/Resources/MyPageWithMaster.aspx /resource:../System.Web/Test/mainsoft/NunitWeb/NunitWeb/Resources/MyPageWithMasterInvalidPlaceHolder.aspx /resource:../System.Web/Test/mainsoft/NunitWeb/NunitWeb/Resources/MyDerived.master /resource:../System.Web/Test/mainsoft/NunitWeb/NunitWeb/Resources/My.master -r:SystemWebTestShim.dll -define:SYSTEM_WEB_EXTENSIONS</flags>
       <output>System.Web.Extensions_test_net_4_0.dll</output>
       <built_sources></built_sources>
       <library_output>System.Web.Extensions_test_net_4_0.dll</library_output>
     <project dir="class/System.Web.Extensions.Design" library="System.Web.Extensions.Design-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll /noconfig -define:NET_3_5 -r:System.dll -r:System.Design.dll -r:System.Drawing.dll -r:System.Windows.Forms.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize /noconfig -define:NET_3_5 -r:System.dll -r:System.Design.dll -r:System.Drawing.dll -r:System.Windows.Forms.dll</flags>
       <output>System.Web.Extensions.Design.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_0/System.Web.Extensions.Design.dll</library_output>
     <project dir="class/System.ComponentModel.DataAnnotations" library="System.ComponentModel.DataAnnotations-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll /noconfig /r:System.dll /r:System.Core.dll /r:System.Data.dll /r:System.Xml.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize /noconfig /r:System.dll /r:System.Core.dll /r:System.Data.dll /r:System.Xml.dll</flags>
       <output>System.ComponentModel.DataAnnotations.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_0/System.ComponentModel.DataAnnotations.dll</library_output>
     <project dir="class/System.ComponentModel.DataAnnotations" library="System.ComponentModel.DataAnnotations-tests-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -r:./../../class/lib/net_4_0/System.ComponentModel.DataAnnotations.dll /r:System.dll /r:System.Core.dll /r:System.Data.dll /r:System.Xml.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize -r:./../../class/lib/net_4_0/System.ComponentModel.DataAnnotations.dll /r:System.dll /r:System.Core.dll /r:System.Data.dll /r:System.Xml.dll</flags>
       <output>System.ComponentModel.DataAnnotations_test_net_4_0.dll</output>
       <built_sources></built_sources>
       <library_output>System.ComponentModel.DataAnnotations_test_net_4_0.dll</library_output>
     <project dir="class/System.Web.DynamicData" library="System.Web.DynamicData-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll /noconfig /r:System.dll /r:System.Core.dll /r:System.ComponentModel.DataAnnotations.dll /r:System.Data.dll /r:System.Data.Linq.dll /r:System.Drawing.dll /r:System.Web.dll /r:System.Web.Extensions.dll /r:System.Web.Abstractions.dll /r:System.Web.Routing.dll -r:System.Web.ApplicationServices.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize /noconfig /r:System.dll /r:System.Core.dll /r:System.ComponentModel.DataAnnotations.dll /r:System.Data.dll /r:System.Data.Linq.dll /r:System.Drawing.dll /r:System.Web.dll /r:System.Web.Extensions.dll /r:System.Web.Abstractions.dll /r:System.Web.Routing.dll -r:System.Web.ApplicationServices.dll</flags>
       <output>System.Web.DynamicData.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_0/System.Web.DynamicData.dll</library_output>
     <project dir="class/System.Web.DynamicData" library="System.Web.DynamicData-tests-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -r:./../../class/lib/net_4_0/System.Web.DynamicData.dll /r:System.dll /r:System.Core.dll /r:System.ComponentModel.DataAnnotations.dll /r:System.Data.dll /r:System.Data.Linq.dll /r:System.Drawing.dll /r:System.Web.dll /r:System.Web.Extensions.dll /r:System.Web.Abstractions.dll /r:System.Web.Routing.dll -r:System.Web.ApplicationServices.dll -r:System.ComponentModel.DataAnnotations.dll -r:System.Configuration.dll /resource:Test/WebPages/DynamicData/Content/FilterUserControl.ascx,MonoTests.WebPages.DynamicData.Content.FilterUserControl.ascx /resource:Test/WebPages/DynamicData/Content/FilterUserControl.ascx.cs,MonoTests.WebPages.DynamicData.Content.FilterUserControl.ascx.cs /resource:Test/WebPages/DynamicData/Content/GridViewPager.ascx,MonoTests.WebPages.DynamicData.Content.GridViewPager.ascx /resource:Test/WebPages/DynamicData/Content/GridViewPager.ascx.cs,MonoTests.WebPages.DynamicData.Content.GridViewPager.ascx.cs /resource:Test/WebPages/DynamicData/Content/Images/Back.gif,MonoTests.WebPages.DynamicData.Content.Images.Back.gif /resource:Test/WebPages/DynamicData/Content/Images/header_back.gif,MonoTests.WebPages.DynamicData.Content.Images.header_back.gif /resource:Test/WebPages/DynamicData/Content/Images/PgFirst.gif,MonoTests.WebPages.DynamicData.Content.Images.PgFirst.gif /resource:Test/WebPages/DynamicData/Content/Images/PgLast.gif,MonoTests.WebPages.DynamicData.Content.Images.PgLast.gif /resource:Test/WebPages/DynamicData/Content/Images/PgNext.gif,MonoTests.WebPages.DynamicData.Content.Images.PgNext.gif /resource:Test/WebPages/DynamicData/Content/Images/PgPrev.gif,MonoTests.WebPages.DynamicData.Content.Images.PgPrev.gif /resource:Test/WebPages/DynamicData/Content/Images/plus.gif,MonoTests.WebPages.DynamicData.Content.Images.plus.gif /resource:Test/WebPages/DynamicData/FieldTemplates/Boolean.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.Boolean.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/Boolean.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.Boolean.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates/Boolean_Edit.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.Boolean_Edit.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/Boolean_Edit.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.Boolean_Edit.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates/Children.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.Children.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/Children.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.Children.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates/CustomColor.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.CustomColor.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/CustomColor.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.CustomColor.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates/CustomFieldTemplate.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.CustomFieldTemplate.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/CustomFieldTemplate.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.CustomFieldTemplate.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates/DateTime.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.DateTime.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/DateTime.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.DateTime.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates/DateTime_Edit.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.DateTime_Edit.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/DateTime_Edit.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.DateTime_Edit.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates/Decimal_Edit.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.Decimal_Edit.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/Decimal_Edit.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.Decimal_Edit.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates/ForeignKey.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.ForeignKey.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/ForeignKey.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.ForeignKey.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates/ForeignKey_Edit.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.ForeignKey_Edit.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/ForeignKey_Edit.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.ForeignKey_Edit.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates/Integer_Edit.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.Integer_Edit.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/Integer_Edit.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.Integer_Edit.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates/MultilineText_Edit.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.MultilineText_Edit.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/MultilineText_Edit.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.MultilineText_Edit.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates/MyCustomUIHintTemplate_Text.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.MyCustomUIHintTemplate_Text.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/MyCustomUIHintTemplate_Text.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.MyCustomUIHintTemplate_Text.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Boolean.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Boolean.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Boolean.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Boolean.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Byte.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Byte.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Byte[].ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Byte[].ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Byte.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Byte.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Byte[].ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Byte[].ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Char.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Char.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Char.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Char.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/FooEmpty.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.FooEmpty.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/FooEmpty.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.FooEmpty.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/ICollection.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.ICollection.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/ICollection.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.ICollection.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Int16.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Int16.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Int16.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Int16.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Int32.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Int32.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Int32.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Int32.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Int64.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Int64.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Int64.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Int64.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/MonoTests.Common.FooEmpty.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.MonoTests.Common.FooEmpty.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/MonoTests.Common.FooEmpty.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.MonoTests.Common.FooEmpty.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Object.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Object.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Object.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Object.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/SByte.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.SByte.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/SByte.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.SByte.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/String.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.String.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/String.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.String.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Boolean.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Boolean.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Boolean.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Boolean.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Byte.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Byte.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Byte[].ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Byte[].ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Byte.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Byte.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Byte[].ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Byte[].ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Char.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Char.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Char.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Char.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Collections.Generic.List`1[System.String].ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Collections.Generic.List`1[System.String].ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Collections.Generic.List`1[System.String].ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Collections.Generic.List`1[System.String].ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Collections.ICollection.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Collections.ICollection.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Collections.ICollection.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Collections.ICollection.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Int16.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Int16.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Int16.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Int16.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Int32.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Int32.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Int32.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Int32.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Int64.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Int64.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Int64.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Int64.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Object.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Object.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Object.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Object.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.SByte.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.SByte.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.SByte.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.SByte.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.String.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.String.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.String.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.String.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.UInt16.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.UInt16.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.UInt16.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.UInt16.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.UInt32.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.UInt32.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.UInt32.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.UInt32.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.UInt64.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.UInt64.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.UInt64.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.UInt64.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/UInt16.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.UInt16.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/UInt16.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.UInt16.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/UInt32.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.UInt32.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/UInt32.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.UInt32.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/UInt64.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.UInt64.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/UInt64.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.UInt64.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates/PlainControlTemplate.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.PlainControlTemplate.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/PlainControlTemplate.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.PlainControlTemplate.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates/Text.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.Text.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/Text.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.Text.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates/Text_Edit.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.Text_Edit.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/Text_Edit.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.Text_Edit.ascx.cs /resource:Test/WebPages/DynamicData/PageTemplates/Details.aspx,MonoTests.WebPages.DynamicData.PageTemplates.Details.aspx /resource:Test/WebPages/DynamicData/PageTemplates/Details.aspx.cs,MonoTests.WebPages.DynamicData.PageTemplates.Details.aspx.cs /resource:Test/WebPages/DynamicData/PageTemplates/Edit.aspx,MonoTests.WebPages.DynamicData.PageTemplates.Edit.aspx /resource:Test/WebPages/DynamicData/PageTemplates/Edit.aspx.cs,MonoTests.WebPages.DynamicData.PageTemplates.Edit.aspx.cs /resource:Test/WebPages/DynamicData/PageTemplates/Insert.aspx,MonoTests.WebPages.DynamicData.PageTemplates.Insert.aspx /resource:Test/WebPages/DynamicData/PageTemplates/Insert.aspx.cs,MonoTests.WebPages.DynamicData.PageTemplates.Insert.aspx.cs /resource:Test/WebPages/DynamicData/PageTemplates/List.aspx,MonoTests.WebPages.DynamicData.PageTemplates.List.aspx /resource:Test/WebPages/DynamicData/PageTemplates/List.aspx.cs,MonoTests.WebPages.DynamicData.PageTemplates.List.aspx.cs /resource:Test/WebPages/DynamicData/PageTemplates/ListDetails.aspx,MonoTests.WebPages.DynamicData.PageTemplates.ListDetails.aspx /resource:Test/WebPages/DynamicData/PageTemplates/ListDetails.aspx.cs,MonoTests.WebPages.DynamicData.PageTemplates.ListDetails.aspx.cs /resource:Test/WebPages/DynamicData/web.config,MonoTests.WebPages.DynamicData.web.config /resource:Test/WebPages/Global.asax,MonoTests.WebPages.Global.asax /resource:Test/WebPages/ListView_DynamicControl_01.aspx,MonoTests.WebPages.ListView_DynamicControl_01.aspx /resource:Test/WebPages/ListView_DynamicControl_01.aspx.cs,MonoTests.WebPages.ListView_DynamicControl_01.aspx.cs /resource:Test/WebPages/ListView_DynamicControl_02.aspx,MonoTests.WebPages.ListView_DynamicControl_02.aspx /resource:Test/WebPages/ListView_DynamicControl_02.aspx.cs,MonoTests.WebPages.ListView_DynamicControl_02.aspx.cs /resource:Test/WebPages/ListView_DynamicControl_03.aspx,MonoTests.WebPages.ListView_DynamicControl_03.aspx /resource:Test/WebPages/ListView_DynamicControl_03.aspx.cs,MonoTests.WebPages.ListView_DynamicControl_03.aspx.cs /resource:Test/WebPages/ListView_DynamicControl_04.aspx,MonoTests.WebPages.ListView_DynamicControl_04.aspx /resource:Test/WebPages/ListView_DynamicControl_04.aspx.cs,MonoTests.WebPages.ListView_DynamicControl_04.aspx.cs /resource:Test/WebPages/ListView_DynamicControl_05.aspx,MonoTests.WebPages.ListView_DynamicControl_05.aspx /resource:Test/WebPages/ListView_DynamicControl_05.aspx.cs,MonoTests.WebPages.ListView_DynamicControl_05.aspx.cs /resource:Test/WebPages/ListView_DynamicControl_06.aspx,MonoTests.WebPages.ListView_DynamicControl_06.aspx /resource:Test/WebPages/ListView_DynamicControl_06.aspx.cs,MonoTests.WebPages.ListView_DynamicControl_06.aspx.cs /resource:Test/WebPages/ListView_DynamicControl_07.aspx,MonoTests.WebPages.ListView_DynamicControl_07.aspx /resource:Test/WebPages/ListView_DynamicControl_07.aspx.cs,MonoTests.WebPages.ListView_DynamicControl_07.aspx.cs /resource:Test/WebPages/ListView_DynamicControl_08.aspx,MonoTests.WebPages.ListView_DynamicControl_08.aspx /resource:Test/WebPages/ListView_DynamicControl_08.aspx.cs,MonoTests.WebPages.ListView_DynamicControl_08.aspx.cs /resource:Test/WebPages/ListView_DynamicControl_09.aspx,MonoTests.WebPages.ListView_DynamicControl_09.aspx /resource:Test/WebPages/ListView_DynamicControl_09.aspx.cs,MonoTests.WebPages.ListView_DynamicControl_09.aspx.cs /resource:Test/WebPages/ListView_DynamicControl_10.aspx,MonoTests.WebPages.ListView_DynamicControl_10.aspx /resource:Test/WebPages/ListView_DynamicControl_10.aspx.cs,MonoTests.WebPages.ListView_DynamicControl_10.aspx.cs /resource:Test/WebPages/DynamicValidator_01.aspx,MonoTests.WebPages.DynamicValidator_01.aspx /resource:Test/WebPages/DynamicValidator_01.aspx.cs,MonoTests.WebPages.DynamicValidator_01.aspx.cs /resource:Test/WebPages/DynamicValidator_02.aspx,MonoTests.WebPages.DynamicValidator_02.aspx /resource:Test/WebPages/DynamicValidator_02.aspx.cs,MonoTests.WebPages.DynamicValidator_02.aspx.cs /resource:Test/WebPages/Site.css,MonoTests.WebPages.Site.css /resource:Test/WebPages/Site.master,MonoTests.WebPages.Site.master /resource:Test/WebPages/Site.master.cs,MonoTests.WebPages.Site.master.cs /resource:Test/WebPages/web.config.2.0,MonoTests.WebPages.web.config.2.0 /resource:Test/WebPages/web.config.4.0,MonoTests.WebPages.web.config.4.0 /resource:Test/WebPages/web.config.4.5,MonoTests.WebPages.web.config.4.5 -r:SystemWebTestShim.dll -r:System.Xml.dll -r:System.Web.ApplicationServices.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize -r:./../../class/lib/net_4_0/System.Web.DynamicData.dll /r:System.dll /r:System.Core.dll /r:System.ComponentModel.DataAnnotations.dll /r:System.Data.dll /r:System.Data.Linq.dll /r:System.Drawing.dll /r:System.Web.dll /r:System.Web.Extensions.dll /r:System.Web.Abstractions.dll /r:System.Web.Routing.dll -r:System.Web.ApplicationServices.dll -r:System.ComponentModel.DataAnnotations.dll -r:System.Configuration.dll /resource:Test/WebPages/DynamicData/Content/FilterUserControl.ascx,MonoTests.WebPages.DynamicData.Content.FilterUserControl.ascx /resource:Test/WebPages/DynamicData/Content/FilterUserControl.ascx.cs,MonoTests.WebPages.DynamicData.Content.FilterUserControl.ascx.cs /resource:Test/WebPages/DynamicData/Content/GridViewPager.ascx,MonoTests.WebPages.DynamicData.Content.GridViewPager.ascx /resource:Test/WebPages/DynamicData/Content/GridViewPager.ascx.cs,MonoTests.WebPages.DynamicData.Content.GridViewPager.ascx.cs /resource:Test/WebPages/DynamicData/Content/Images/Back.gif,MonoTests.WebPages.DynamicData.Content.Images.Back.gif /resource:Test/WebPages/DynamicData/Content/Images/header_back.gif,MonoTests.WebPages.DynamicData.Content.Images.header_back.gif /resource:Test/WebPages/DynamicData/Content/Images/PgFirst.gif,MonoTests.WebPages.DynamicData.Content.Images.PgFirst.gif /resource:Test/WebPages/DynamicData/Content/Images/PgLast.gif,MonoTests.WebPages.DynamicData.Content.Images.PgLast.gif /resource:Test/WebPages/DynamicData/Content/Images/PgNext.gif,MonoTests.WebPages.DynamicData.Content.Images.PgNext.gif /resource:Test/WebPages/DynamicData/Content/Images/PgPrev.gif,MonoTests.WebPages.DynamicData.Content.Images.PgPrev.gif /resource:Test/WebPages/DynamicData/Content/Images/plus.gif,MonoTests.WebPages.DynamicData.Content.Images.plus.gif /resource:Test/WebPages/DynamicData/FieldTemplates/Boolean.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.Boolean.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/Boolean.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.Boolean.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates/Boolean_Edit.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.Boolean_Edit.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/Boolean_Edit.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.Boolean_Edit.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates/Children.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.Children.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/Children.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.Children.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates/CustomColor.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.CustomColor.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/CustomColor.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.CustomColor.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates/CustomFieldTemplate.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.CustomFieldTemplate.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/CustomFieldTemplate.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.CustomFieldTemplate.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates/DateTime.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.DateTime.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/DateTime.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.DateTime.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates/DateTime_Edit.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.DateTime_Edit.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/DateTime_Edit.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.DateTime_Edit.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates/Decimal_Edit.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.Decimal_Edit.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/Decimal_Edit.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.Decimal_Edit.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates/ForeignKey.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.ForeignKey.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/ForeignKey.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.ForeignKey.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates/ForeignKey_Edit.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.ForeignKey_Edit.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/ForeignKey_Edit.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.ForeignKey_Edit.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates/Integer_Edit.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.Integer_Edit.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/Integer_Edit.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.Integer_Edit.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates/MultilineText_Edit.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.MultilineText_Edit.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/MultilineText_Edit.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.MultilineText_Edit.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates/MyCustomUIHintTemplate_Text.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.MyCustomUIHintTemplate_Text.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/MyCustomUIHintTemplate_Text.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.MyCustomUIHintTemplate_Text.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Boolean.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Boolean.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Boolean.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Boolean.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Byte.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Byte.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Byte[].ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Byte[].ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Byte.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Byte.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Byte[].ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Byte[].ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Char.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Char.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Char.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Char.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/FooEmpty.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.FooEmpty.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/FooEmpty.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.FooEmpty.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/ICollection.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.ICollection.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/ICollection.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.ICollection.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Int16.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Int16.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Int16.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Int16.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Int32.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Int32.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Int32.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Int32.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Int64.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Int64.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Int64.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Int64.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/MonoTests.Common.FooEmpty.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.MonoTests.Common.FooEmpty.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/MonoTests.Common.FooEmpty.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.MonoTests.Common.FooEmpty.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Object.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Object.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Object.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Object.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/SByte.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.SByte.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/SByte.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.SByte.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/String.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.String.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/String.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.String.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Boolean.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Boolean.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Boolean.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Boolean.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Byte.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Byte.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Byte[].ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Byte[].ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Byte.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Byte.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Byte[].ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Byte[].ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Char.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Char.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Char.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Char.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Collections.Generic.List`1[System.String].ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Collections.Generic.List`1[System.String].ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Collections.Generic.List`1[System.String].ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Collections.Generic.List`1[System.String].ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Collections.ICollection.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Collections.ICollection.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Collections.ICollection.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Collections.ICollection.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Int16.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Int16.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Int16.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Int16.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Int32.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Int32.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Int32.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Int32.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Int64.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Int64.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Int64.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Int64.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Object.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Object.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Object.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Object.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.SByte.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.SByte.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.SByte.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.SByte.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.String.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.String.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.String.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.String.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.UInt16.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.UInt16.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.UInt16.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.UInt16.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.UInt32.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.UInt32.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.UInt32.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.UInt32.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.UInt64.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.UInt64.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.UInt64.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.UInt64.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/UInt16.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.UInt16.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/UInt16.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.UInt16.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/UInt32.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.UInt32.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/UInt32.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.UInt32.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/UInt64.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.UInt64.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/UInt64.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.UInt64.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates/PlainControlTemplate.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.PlainControlTemplate.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/PlainControlTemplate.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.PlainControlTemplate.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates/Text.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.Text.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/Text.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.Text.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates/Text_Edit.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.Text_Edit.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/Text_Edit.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.Text_Edit.ascx.cs /resource:Test/WebPages/DynamicData/PageTemplates/Details.aspx,MonoTests.WebPages.DynamicData.PageTemplates.Details.aspx /resource:Test/WebPages/DynamicData/PageTemplates/Details.aspx.cs,MonoTests.WebPages.DynamicData.PageTemplates.Details.aspx.cs /resource:Test/WebPages/DynamicData/PageTemplates/Edit.aspx,MonoTests.WebPages.DynamicData.PageTemplates.Edit.aspx /resource:Test/WebPages/DynamicData/PageTemplates/Edit.aspx.cs,MonoTests.WebPages.DynamicData.PageTemplates.Edit.aspx.cs /resource:Test/WebPages/DynamicData/PageTemplates/Insert.aspx,MonoTests.WebPages.DynamicData.PageTemplates.Insert.aspx /resource:Test/WebPages/DynamicData/PageTemplates/Insert.aspx.cs,MonoTests.WebPages.DynamicData.PageTemplates.Insert.aspx.cs /resource:Test/WebPages/DynamicData/PageTemplates/List.aspx,MonoTests.WebPages.DynamicData.PageTemplates.List.aspx /resource:Test/WebPages/DynamicData/PageTemplates/List.aspx.cs,MonoTests.WebPages.DynamicData.PageTemplates.List.aspx.cs /resource:Test/WebPages/DynamicData/PageTemplates/ListDetails.aspx,MonoTests.WebPages.DynamicData.PageTemplates.ListDetails.aspx /resource:Test/WebPages/DynamicData/PageTemplates/ListDetails.aspx.cs,MonoTests.WebPages.DynamicData.PageTemplates.ListDetails.aspx.cs /resource:Test/WebPages/DynamicData/web.config,MonoTests.WebPages.DynamicData.web.config /resource:Test/WebPages/Global.asax,MonoTests.WebPages.Global.asax /resource:Test/WebPages/ListView_DynamicControl_01.aspx,MonoTests.WebPages.ListView_DynamicControl_01.aspx /resource:Test/WebPages/ListView_DynamicControl_01.aspx.cs,MonoTests.WebPages.ListView_DynamicControl_01.aspx.cs /resource:Test/WebPages/ListView_DynamicControl_02.aspx,MonoTests.WebPages.ListView_DynamicControl_02.aspx /resource:Test/WebPages/ListView_DynamicControl_02.aspx.cs,MonoTests.WebPages.ListView_DynamicControl_02.aspx.cs /resource:Test/WebPages/ListView_DynamicControl_03.aspx,MonoTests.WebPages.ListView_DynamicControl_03.aspx /resource:Test/WebPages/ListView_DynamicControl_03.aspx.cs,MonoTests.WebPages.ListView_DynamicControl_03.aspx.cs /resource:Test/WebPages/ListView_DynamicControl_04.aspx,MonoTests.WebPages.ListView_DynamicControl_04.aspx /resource:Test/WebPages/ListView_DynamicControl_04.aspx.cs,MonoTests.WebPages.ListView_DynamicControl_04.aspx.cs /resource:Test/WebPages/ListView_DynamicControl_05.aspx,MonoTests.WebPages.ListView_DynamicControl_05.aspx /resource:Test/WebPages/ListView_DynamicControl_05.aspx.cs,MonoTests.WebPages.ListView_DynamicControl_05.aspx.cs /resource:Test/WebPages/ListView_DynamicControl_06.aspx,MonoTests.WebPages.ListView_DynamicControl_06.aspx /resource:Test/WebPages/ListView_DynamicControl_06.aspx.cs,MonoTests.WebPages.ListView_DynamicControl_06.aspx.cs /resource:Test/WebPages/ListView_DynamicControl_07.aspx,MonoTests.WebPages.ListView_DynamicControl_07.aspx /resource:Test/WebPages/ListView_DynamicControl_07.aspx.cs,MonoTests.WebPages.ListView_DynamicControl_07.aspx.cs /resource:Test/WebPages/ListView_DynamicControl_08.aspx,MonoTests.WebPages.ListView_DynamicControl_08.aspx /resource:Test/WebPages/ListView_DynamicControl_08.aspx.cs,MonoTests.WebPages.ListView_DynamicControl_08.aspx.cs /resource:Test/WebPages/ListView_DynamicControl_09.aspx,MonoTests.WebPages.ListView_DynamicControl_09.aspx /resource:Test/WebPages/ListView_DynamicControl_09.aspx.cs,MonoTests.WebPages.ListView_DynamicControl_09.aspx.cs /resource:Test/WebPages/ListView_DynamicControl_10.aspx,MonoTests.WebPages.ListView_DynamicControl_10.aspx /resource:Test/WebPages/ListView_DynamicControl_10.aspx.cs,MonoTests.WebPages.ListView_DynamicControl_10.aspx.cs /resource:Test/WebPages/DynamicValidator_01.aspx,MonoTests.WebPages.DynamicValidator_01.aspx /resource:Test/WebPages/DynamicValidator_01.aspx.cs,MonoTests.WebPages.DynamicValidator_01.aspx.cs /resource:Test/WebPages/DynamicValidator_02.aspx,MonoTests.WebPages.DynamicValidator_02.aspx /resource:Test/WebPages/DynamicValidator_02.aspx.cs,MonoTests.WebPages.DynamicValidator_02.aspx.cs /resource:Test/WebPages/Site.css,MonoTests.WebPages.Site.css /resource:Test/WebPages/Site.master,MonoTests.WebPages.Site.master /resource:Test/WebPages/Site.master.cs,MonoTests.WebPages.Site.master.cs /resource:Test/WebPages/web.config.2.0,MonoTests.WebPages.web.config.2.0 /resource:Test/WebPages/web.config.4.0,MonoTests.WebPages.web.config.4.0 /resource:Test/WebPages/web.config.4.5,MonoTests.WebPages.web.config.4.5 -r:SystemWebTestShim.dll -r:System.Xml.dll -r:System.Web.ApplicationServices.dll</flags>
       <output>System.Web.DynamicData_test_net_4_0.dll</output>
       <built_sources></built_sources>
       <library_output>System.Web.DynamicData_test_net_4_0.dll</library_output>
     <project dir="class/System.ServiceModel.Web" library="System.ServiceModel.Web-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll /noconfig -r:System.dll -r:System.Xml.dll -r:System.Runtime.Serialization.dll -r:System.ServiceModel.dll -r:System.Core.dll -d:NET_3_5 -d:NET_3_0 -r:System.Configuration.dll -r:System.Web.Extensions.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize /noconfig -r:System.dll -r:System.Xml.dll -r:System.Runtime.Serialization.dll -r:System.ServiceModel.dll -r:System.Core.dll -d:NET_3_5 -d:NET_3_0 -r:System.Configuration.dll -r:System.Web.Extensions.dll</flags>
       <output>System.ServiceModel.Web.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_0/System.ServiceModel.Web.dll</library_output>
     <project dir="class/System.ServiceModel.Web" library="System.ServiceModel.Web-tests-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -r:./../../class/lib/net_4_0/System.ServiceModel.Web.dll -r:System.dll -r:System.Xml.dll -r:System.Runtime.Serialization.dll -r:System.ServiceModel.dll -r:System.Core.dll -d:NET_3_5 -d:NET_3_0 -r:System.Configuration.dll -r:System.Web.Extensions.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize -r:./../../class/lib/net_4_0/System.ServiceModel.Web.dll -r:System.dll -r:System.Xml.dll -r:System.Runtime.Serialization.dll -r:System.ServiceModel.dll -r:System.Core.dll -d:NET_3_5 -d:NET_3_0 -r:System.Configuration.dll -r:System.Web.Extensions.dll</flags>
       <output>System.ServiceModel.Web_test_net_4_0.dll</output>
       <built_sources></built_sources>
       <library_output>System.ServiceModel.Web_test_net_4_0.dll</library_output>
     <project dir="class/System.Web.Mvc2" library="System.Web.Mvc2-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll /noconfig /warn:1 /keyfile:../winfx.pub /r:System.dll /r:System.Core.dll /r:System.Configuration.dll /r:System.Data.dll /r:System.Xml.dll /r:System.Web.dll /r:System.Web.Abstractions.dll /r:System.Web.Routing.dll /r:System.Web.Extensions.dll /r:System.ComponentModel.DataAnnotations.dll /r:System.Data.Linq.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize /noconfig /warn:1 /keyfile:../winfx.pub /r:System.dll /r:System.Core.dll /r:System.Configuration.dll /r:System.Data.dll /r:System.Xml.dll /r:System.Web.dll /r:System.Web.Abstractions.dll /r:System.Web.Routing.dll /r:System.Web.Extensions.dll /r:System.ComponentModel.DataAnnotations.dll /r:System.Data.Linq.dll</flags>
       <output>dummy-System.Web.Mvc.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_0/tmp/dummy-System.Web.Mvc.dll</library_output>
     <project dir="class/Mono.C5" library="Mono.C5-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll /noconfig /r:mscorlib.dll /r:System.dll -nowarn:169,219,414,1030,3001,3005,3006</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize /noconfig /r:mscorlib.dll /r:System.dll -nowarn:169,219,414,1030,3001,3005,3006</flags>
       <output>Mono.C5.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_0/Mono.C5.dll</library_output>
     <project dir="class/Mono.C5" library="Mono.C5-tests-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -r:./../../class/lib/net_4_0/Mono.C5.dll /r:mscorlib.dll /r:System.dll -nowarn:169,219,414,1030,3001,3005,3006 -nowarn:0618 -nowarn:219 -nowarn:169</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize -r:./../../class/lib/net_4_0/Mono.C5.dll /r:mscorlib.dll /r:System.dll -nowarn:169,219,414,1030,3001,3005,3006 -nowarn:0618 -nowarn:219 -nowarn:169</flags>
       <output>Mono.C5_test_net_4_0.dll</output>
       <built_sources></built_sources>
       <library_output>Mono.C5_test_net_4_0.dll</library_output>
     <project dir="class/Mono.Management" library="Mono.Management-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll /noconfig /r:mscorlib.dll /r:System.dll /r:Mono.Posix.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize /noconfig /r:mscorlib.dll /r:System.dll /r:Mono.Posix.dll</flags>
       <output>Mono.Management.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_0/tmp/Mono.Management.dll</library_output>
     <project dir="class/Mono.Options" library="Mono.Options-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll /noconfig /r:mscorlib.dll /r:System.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize /noconfig /r:mscorlib.dll /r:System.dll</flags>
       <output>Mono.Options.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_0/Mono.Options.dll</library_output>
     <project dir="class/Mono.Options" library="Mono.Options-tests-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -r:./../../class/lib/net_4_0/Mono.Options.dll /r:Mono.Posix.dll /r:System.dll /r:System.Core.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize -r:./../../class/lib/net_4_0/Mono.Options.dll /r:Mono.Posix.dll /r:System.dll /r:System.Core.dll</flags>
       <output>Mono.Options_test_net_4_0.dll</output>
       <built_sources></built_sources>
       <library_output>Mono.Options_test_net_4_0.dll</library_output>
     <project dir="class/Mono.Simd" library="Mono.Simd-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll /noconfig -r:mscorlib.dll -r:System.Core.dll /unsafe</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize /noconfig -r:mscorlib.dll -r:System.Core.dll /unsafe</flags>
       <output>Mono.Simd.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_0/Mono.Simd.dll</library_output>
     <project dir="class/Mono.Tasklets" library="Mono.Tasklets-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll /noconfig</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize /noconfig</flags>
       <output>Mono.Tasklets.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_0/Mono.Tasklets.dll</library_output>
     <project dir="class/System.Dynamic" library="System.Dynamic-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll /noconfig -unsafe -d:CODEPLEX_40 -r:System.Core.dll -r:System.dll -nowarn:414,169</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize /noconfig -unsafe -d:CODEPLEX_40 -r:System.Core.dll -r:System.dll -nowarn:414,169</flags>
       <output>System.Dynamic.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_0/System.Dynamic.dll</library_output>
     <project dir="class/Mono.CSharp" library="Mono.CSharp-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll /noconfig -r:System.Core.dll -r:System.Xml.dll -r:System.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize /noconfig -r:System.Core.dll -r:System.Xml.dll -r:System.dll</flags>
       <output>Mono.CSharp.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_0/Mono.CSharp.dll</library_output>
     <project dir="class/Mono.CSharp" library="Mono.CSharp-tests-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -r:./../../class/lib/net_4_0/Mono.CSharp.dll -r:System.Core.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize -r:./../../class/lib/net_4_0/Mono.CSharp.dll -r:System.Core.dll</flags>
       <output>Mono.CSharp_test_net_4_0.dll</output>
       <built_sources></built_sources>
       <library_output>Mono.CSharp_test_net_4_0.dll</library_output>
     <project dir="class/Moonlight.Build.Tasks" library="Moonlight.Build.Tasks-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll /noconfig /r:mscorlib.dll /r:System.dll /r:System.Xml.dll /r:Microsoft.Build.Engine.dll /r:Microsoft.Build.Framework.dll /r:Microsoft.Build.Utilities.v4.0.dll /r:Microsoft.Build.Tasks.v4.0.dll /r:ICSharpCode.SharpZipLib.dll -resource:Moonlight.Build.Tasks/PreviewTemplate.html</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize /noconfig /r:mscorlib.dll /r:System.dll /r:System.Xml.dll /r:Microsoft.Build.Engine.dll /r:Microsoft.Build.Framework.dll /r:Microsoft.Build.Utilities.v4.0.dll /r:Microsoft.Build.Tasks.v4.0.dll /r:ICSharpCode.SharpZipLib.dll -resource:Moonlight.Build.Tasks/PreviewTemplate.html</flags>
       <output>Moonlight.Build.Tasks.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_0/Moonlight.Build.Tasks.dll</library_output>
     <project dir="class/System.Net" library="System.Net-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll /noconfig -unsafe -r:System.dll -r:System.Core.dll -r:System.Xml.dll -d:NET_2_1 -d:NET_2_0 -d:NET_1_1 -d:NET_3_5 -nowarn:1720</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize /noconfig -unsafe -r:System.dll -r:System.Core.dll -r:System.Xml.dll -d:NET_2_1 -d:NET_2_0 -d:NET_1_1 -d:NET_3_5 -nowarn:1720</flags>
       <output>System.Net.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_0/System.Net.dll</library_output>
     <project dir="class/System.Numerics" library="System.Numerics-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll /noconfig -r:System.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize /noconfig -r:System.dll</flags>
       <output>System.Numerics.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_0/System.Numerics.dll</library_output>
     <project dir="class/System.Numerics" library="System.Numerics-tests-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -r:./../../class/lib/net_4_0/System.Numerics.dll -r:System.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize -r:./../../class/lib/net_4_0/System.Numerics.dll -r:System.dll</flags>
       <output>System.Numerics_test_net_4_0.dll</output>
       <built_sources></built_sources>
       <library_output>System.Numerics_test_net_4_0.dll</library_output>
     <project dir="class/Microsoft.CSharp" library="Microsoft.CSharp-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll /noconfig -r:System.Core.dll -r:Mono.CSharp.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize /noconfig -r:System.Core.dll -r:Mono.CSharp.dll</flags>
       <output>Microsoft.CSharp.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_0/Microsoft.CSharp.dll</library_output>
     <project dir="class/Microsoft.Build" library="Microsoft.Build-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll /noconfig /r:mscorlib.dll /r:System.dll /r:System.Core.dll /r:System.Xml.dll /r:Microsoft.Build.Engine.dll /r:Microsoft.Build.Framework.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize /noconfig /r:mscorlib.dll /r:System.dll /r:System.Core.dll /r:System.Xml.dll /r:Microsoft.Build.Engine.dll /r:Microsoft.Build.Framework.dll</flags>
       <output>Microsoft.Build.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_0/Microsoft.Build.dll</library_output>
     <project dir="class/Microsoft.Build" library="Microsoft.Build-tests-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -r:./../../class/lib/net_4_0/Microsoft.Build.dll /r:System.Core.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize -r:./../../class/lib/net_4_0/Microsoft.Build.dll /r:System.Core.dll</flags>
       <output>Microsoft.Build_test_net_4_0.dll</output>
       <built_sources></built_sources>
       <library_output>Microsoft.Build_test_net_4_0.dll</library_output>
     <project dir="class/System.Windows.Forms.DataVisualization" library="System.Windows.Forms.DataVisualization-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll /noconfig -r:System -r:System.Drawing -r:System.Windows.Forms -r:System.Core</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize /noconfig -r:System -r:System.Drawing -r:System.Windows.Forms -r:System.Core</flags>
       <output>System.Windows.Forms.DataVisualization.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_0/System.Windows.Forms.DataVisualization.dll</library_output>
     <project dir="class/System.Windows.Forms.DataVisualization" library="System.Windows.Forms.DataVisualization-tests-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -r:./../../class/lib/net_4_0/System.Windows.Forms.DataVisualization.dll -r:System -r:System.Drawing -r:System.Windows.Forms -r:System.Core</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize -r:./../../class/lib/net_4_0/System.Windows.Forms.DataVisualization.dll -r:System -r:System.Drawing -r:System.Windows.Forms -r:System.Core</flags>
       <output>System.Windows.Forms.DataVisualization_test_net_4_0.dll</output>
       <built_sources></built_sources>
       <library_output>System.Windows.Forms.DataVisualization_test_net_4_0.dll</library_output>
     <project dir="class/System.Xaml" library="System.Xaml-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll /noconfig /r:System.dll /r:System.Xml.dll /r:System.Core.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize /noconfig /r:System.dll /r:System.Xml.dll /r:System.Core.dll</flags>
       <output>System.Xaml.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_0/System.Xaml.dll</library_output>
     <project dir="class/System.Xaml" library="System.Xaml-tests-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -r:./../../class/lib/net_4_0/System.Xaml.dll /r:System.dll /r:System.Xml.dll /r:System.Core.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize -r:./../../class/lib/net_4_0/System.Xaml.dll /r:System.dll /r:System.Xml.dll /r:System.Core.dll</flags>
       <output>System.Xaml_test_net_4_0.dll</output>
       <built_sources></built_sources>
       <library_output>System.Xaml_test_net_4_0.dll</library_output>
     <project dir="class/WindowsBase" library="WindowsBase-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll /noconfig -unsafe -r:System.dll -r:System.Xml.dll -r:System.Xaml.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize /noconfig -unsafe -r:System.dll -r:System.Xml.dll -r:System.Xaml.dll</flags>
       <output>WindowsBase.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_0/WindowsBase.dll</library_output>
     <project dir="class/WindowsBase" library="WindowsBase-tests-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -r:./../../class/lib/net_4_0/WindowsBase.dll -unsafe -r:WindowsBase.dll -r:System.dll -r:System.Xml.dll -r:System.Core.dll -r:System.Xaml.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize -r:./../../class/lib/net_4_0/WindowsBase.dll -unsafe -r:WindowsBase.dll -r:System.dll -r:System.Xml.dll -r:System.Core.dll -r:System.Xaml.dll</flags>
       <output>WindowsBase_test_net_4_0.dll</output>
       <built_sources></built_sources>
       <library_output>WindowsBase_test_net_4_0.dll</library_output>
     <project dir="class/System.ServiceModel.Routing" library="System.ServiceModel.Routing-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll /noconfig -r:System.dll -r:System.Xml.dll -r:System.Runtime.Serialization.dll -r:System.ServiceModel.dll -r:System.Core.dll -d:NET_3_5 -d:NET_3_0 -r:System.Configuration.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize /noconfig -r:System.dll -r:System.Xml.dll -r:System.Runtime.Serialization.dll -r:System.ServiceModel.dll -r:System.Core.dll -d:NET_3_5 -d:NET_3_0 -r:System.Configuration.dll</flags>
       <output>System.ServiceModel.Routing.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_0/System.ServiceModel.Routing.dll</library_output>
     <project dir="class/System.ServiceModel.Discovery" library="System.ServiceModel.Discovery-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll /noconfig -r:System.dll -r:System.Xml.dll -r:System.Runtime.Serialization.dll -r:System.ServiceModel.dll -r:System.Core.dll -r:System.Xml.Linq.dll -d:NET_3_5 -d:NET_3_0 -r:System.Configuration.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize /noconfig -r:System.dll -r:System.Xml.dll -r:System.Runtime.Serialization.dll -r:System.ServiceModel.dll -r:System.Core.dll -r:System.Xml.Linq.dll -d:NET_3_5 -d:NET_3_0 -r:System.Configuration.dll</flags>
       <output>System.ServiceModel.Discovery.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_0/System.ServiceModel.Discovery.dll</library_output>
     <project dir="class/System.ServiceModel.Discovery" library="System.ServiceModel.Discovery-tests-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -r:./../../class/lib/net_4_0/System.ServiceModel.Discovery.dll -r:System.dll -r:System.Xml.dll -r:System.Runtime.Serialization.dll -r:System.ServiceModel.dll -r:System.Core.dll -r:System.Xml.Linq.dll -d:NET_3_5 -d:NET_3_0 -r:System.Configuration.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize -r:./../../class/lib/net_4_0/System.ServiceModel.Discovery.dll -r:System.dll -r:System.Xml.dll -r:System.Runtime.Serialization.dll -r:System.ServiceModel.dll -r:System.Core.dll -r:System.Xml.Linq.dll -d:NET_3_5 -d:NET_3_0 -r:System.Configuration.dll</flags>
       <output>System.ServiceModel.Discovery_test_net_4_0.dll</output>
       <built_sources></built_sources>
       <library_output>System.ServiceModel.Discovery_test_net_4_0.dll</library_output>
     <project dir="class/System.Runtime.Caching" library="System.Runtime.Caching-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll /noconfig -r:System.dll -r:System.Data.dll -r:System.Configuration.dll -r:System.Core.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize /noconfig -r:System.dll -r:System.Data.dll -r:System.Configuration.dll -r:System.Core.dll</flags>
       <output>System.Runtime.Caching.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_0/System.Runtime.Caching.dll</library_output>
     <project dir="class/System.Runtime.Caching" library="System.Runtime.Caching-tests-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -r:./../../class/lib/net_4_0/System.Runtime.Caching.dll -r:System.dll -r:System.Data.dll -r:System.Configuration.dll -r:System.Core.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize -r:./../../class/lib/net_4_0/System.Runtime.Caching.dll -r:System.dll -r:System.Data.dll -r:System.Configuration.dll -r:System.Core.dll</flags>
       <output>System.Runtime.Caching_test_net_4_0.dll</output>
       <built_sources></built_sources>
       <library_output>System.Runtime.Caching_test_net_4_0.dll</library_output>
     <project dir="class/System.Runtime.DurableInstancing" library="System.Runtime.DurableInstancing-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll /noconfig -r:System.dll -r:System.Xml.dll -r:System.Runtime.Serialization.dll -r:System.Core.dll -r:System.Xml.Linq.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize /noconfig -r:System.dll -r:System.Xml.dll -r:System.Runtime.Serialization.dll -r:System.Core.dll -r:System.Xml.Linq.dll</flags>
       <output>System.Runtime.DurableInstancing.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_0/System.Runtime.DurableInstancing.dll</library_output>
     <project dir="class/System.Runtime.DurableInstancing" library="System.Runtime.DurableInstancing-tests-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -r:./../../class/lib/net_4_0/System.Runtime.DurableInstancing.dll -r:System.dll -r:System.Xml.dll -r:System.Runtime.Serialization.dll -r:System.Core.dll -r:System.Xml.Linq.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize -r:./../../class/lib/net_4_0/System.Runtime.DurableInstancing.dll -r:System.dll -r:System.Xml.dll -r:System.Runtime.Serialization.dll -r:System.Core.dll -r:System.Xml.Linq.dll</flags>
       <output>System.Runtime.DurableInstancing_test_net_4_0.dll</output>
       <built_sources></built_sources>
       <library_output>System.Runtime.DurableInstancing_test_net_4_0.dll</library_output>
     <project dir="class/Mono.Parallel" library="Mono.Parallel-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll /noconfig -d:INSIDE_MONO_PARALLEL -r:mscorlib.dll -r:System.Core.dll -r:System.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize /noconfig -d:INSIDE_MONO_PARALLEL -r:mscorlib.dll -r:System.Core.dll -r:System.dll</flags>
       <output>Mono.Parallel.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_0/Mono.Parallel.dll</library_output>
     <project dir="class/Mono.Parallel" library="Mono.Parallel-tests-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -r:./../../class/lib/net_4_0/Mono.Parallel.dll /r:System.Core.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize -r:./../../class/lib/net_4_0/Mono.Parallel.dll /r:System.Core.dll</flags>
       <output>Mono.Parallel_test_net_4_0.dll</output>
       <built_sources></built_sources>
       <library_output>Mono.Parallel_test_net_4_0.dll</library_output>
     <project dir="class/Microsoft.Web.Infrastructure" library="Microsoft.Web.Infrastructure-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll /noconfig -r:System.dll -r:System.Configuration.dll -r:System.Web.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize /noconfig -r:System.dll -r:System.Configuration.dll -r:System.Web.dll</flags>
       <output>Microsoft.Web.Infrastructure.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_0/Microsoft.Web.Infrastructure.dll</library_output>
     <project dir="class/WebMatrix.Data" library="WebMatrix.Data-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll /noconfig -r:mscorlib.dll -r:System.dll -r:System.Data.dll -r:System.Core.dll -r:System.Configuration.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize /noconfig -r:mscorlib.dll -r:System.dll -r:System.Data.dll -r:System.Core.dll -r:System.Configuration.dll</flags>
       <output>WebMatrix.Data.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_0/WebMatrix.Data.dll</library_output>
     <project dir="class/WebMatrix.Data" library="WebMatrix.Data-tests-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -r:./../../class/lib/net_4_0/WebMatrix.Data.dll -r:System.dll -r:System.Core.dll -r:System.Data.dll -r:Mono.Data.Sqlite.dll -r:Microsoft.CSharp.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize -r:./../../class/lib/net_4_0/WebMatrix.Data.dll -r:System.dll -r:System.Core.dll -r:System.Data.dll -r:Mono.Data.Sqlite.dll -r:Microsoft.CSharp.dll</flags>
       <output>WebMatrix.Data_test_net_4_0.dll</output>
       <built_sources></built_sources>
       <library_output>WebMatrix.Data_test_net_4_0.dll</library_output>
     <project dir="class/System.Data.Services.Client" library="System.Data.Services.Client-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll /noconfig -d:NET_3_5 -r:System.dll -r:System.Core.dll -r:System.Xml.Linq.dll -r:System.Data.dll -r:System.Xml.dll -resource:Client/System.Data.Services.Client.resources -warn:2 -r:WindowsBase</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize /noconfig -d:NET_3_5 -r:System.dll -r:System.Core.dll -r:System.Xml.Linq.dll -r:System.Data.dll -r:System.Xml.dll -resource:Client/System.Data.Services.Client.resources -warn:2 -r:WindowsBase</flags>
       <output>System.Data.Services.Client.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_0/System.Data.Services.Client.dll</library_output>
     <project dir="class/System.Data.Services" library="System.Data.Services-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll /noconfig -d:NET_3_5 -r:System.dll -r:System.Core.dll -r:System.ServiceModel.dll -r:System.ServiceModel.Web.dll -r:System.Data.Services.Client.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize /noconfig -d:NET_3_5 -r:System.dll -r:System.Core.dll -r:System.ServiceModel.dll -r:System.ServiceModel.Web.dll -r:System.Data.Services.Client.dll</flags>
       <output>System.Data.Services.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_0/System.Data.Services.dll</library_output>
     <project dir="class/System.Data.Services" library="System.Data.Services-tests-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -r:./../../class/lib/net_4_0/System.Data.Services.dll -r:System.ServiceModel.dll -r:System.Core.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize -r:./../../class/lib/net_4_0/System.Data.Services.dll -r:System.ServiceModel.dll -r:System.Core.dll</flags>
       <output>System.Data.Services_test_net_4_0.dll</output>
       <built_sources></built_sources>
       <library_output>System.Data.Services_test_net_4_0.dll</library_output>
     <project dir="class/System.Json" library="System.Json-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll /noconfig /d:ASPNETMVC -keyfile:../winfx.pub -delaysign /r:System.dll /r:System.Xml.dll /r:System.Core.dll /r:System.Runtime.Serialization.dll /r:System.ServiceModel.Web.dll /resource:System.Json.Properties.Resources.resources /r:Microsoft.CSharp.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize /noconfig /d:ASPNETMVC -keyfile:../winfx.pub -delaysign /r:System.dll /r:System.Xml.dll /r:System.Core.dll /r:System.Runtime.Serialization.dll /r:System.ServiceModel.Web.dll /resource:System.Json.Properties.Resources.resources /r:Microsoft.CSharp.dll</flags>
       <output>System.Json.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_0/System.Json.dll</library_output>
     <project dir="class/System.Json" library="System.Json-tests-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -r:./../../class/lib/net_4_0/System.Json.dll /d:ASPNETMVC -keyfile:../winfx.pub -delaysign /r:System.dll /r:System.Xml.dll /r:System.Core.dll /r:System.Runtime.Serialization.dll /r:System.ServiceModel.Web.dll /resource:System.Json.Properties.Resources.resources /r:Microsoft.CSharp.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize -r:./../../class/lib/net_4_0/System.Json.dll /d:ASPNETMVC -keyfile:../winfx.pub -delaysign /r:System.dll /r:System.Xml.dll /r:System.Core.dll /r:System.Runtime.Serialization.dll /r:System.ServiceModel.Web.dll /resource:System.Json.Properties.Resources.resources /r:Microsoft.CSharp.dll</flags>
       <output>System.Json_test_net_4_0.dll</output>
       <built_sources></built_sources>
       <library_output>System.Json_test_net_4_0.dll</library_output>
     <project dir="class/System.ComponentModel.Composition" library="System.ComponentModel.Composition-net_4_0">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll /noconfig -r:System.dll -r:System.Core.dll -d:CLR40 -resource:Microsoft.Internal.Strings.resources</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_0 -r:mscorlib.dll -optimize /noconfig -r:System.dll -r:System.Core.dll -d:CLR40 -resource:Microsoft.Internal.Strings.resources</flags>
       <output>System.ComponentModel.Composition.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_0/System.ComponentModel.Composition.dll</library_output>
     <project dir="mcs" library="mcs-net_4_5">
       <boot></boot>
       <mcs>MONO_PATH=./../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -lib:./../class/lib/build -debug -d:STATIC,NO_SYMBOL_WRITER -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig</flags>
+      <flags>/codepage:65001 -lib:./../class/lib/build -debug -d:STATIC,NO_SYMBOL_WRITER -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig</flags>
       <output>mcs.exe</output>
       <built_sources>cs-parser.cs</built_sources>
       <library_output>mcs.exe</library_output>
     <project dir="class/corlib" library="corlib-net_4_5">
       <boot>true</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -unsafe -nostdlib -nowarn:612,618 -d:INSIDE_CORLIB -d:LIBC -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -debug /noconfig -resource:resources/collation.core.bin -resource:resources/collation.tailoring.bin -resource:resources/collation.cjkCHS.bin -resource:resources/collation.cjkCHT.bin -resource:resources/collation.cjkJA.bin -resource:resources/collation.cjkKO.bin -resource:resources/collation.cjkKOlv2.bin --runtime:v4</flags>
+      <flags>/codepage:65001 -unsafe -nostdlib -nowarn:612,618 -d:INSIDE_CORLIB -d:LIBC -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -debug -optimize /noconfig -resource:resources/collation.core.bin -resource:resources/collation.tailoring.bin -resource:resources/collation.cjkCHS.bin -resource:resources/collation.cjkCHT.bin -resource:resources/collation.cjkJA.bin -resource:resources/collation.cjkKO.bin -resource:resources/collation.cjkKOlv2.bin --runtime:v4</flags>
       <output>mscorlib.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/tmp/mscorlib.dll</library_output>
     <project dir="class/corlib" library="corlib-tests-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -unsafe -nostdlib -nowarn:612,618 -d:INSIDE_CORLIB -d:LIBC -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -debug -r:./../../class/lib/net_4_5/mscorlib.dll -debug+ -debug:full -nowarn:168,219,618,672 -unsafe -r:Mono.Posix.dll -r:System.Core.dll -define:MONO_DATACONVERTER_STATIC_METHODS</flags>
+      <flags>/codepage:65001 -unsafe -nostdlib -nowarn:612,618 -d:INSIDE_CORLIB -d:LIBC -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -debug -optimize -r:./../../class/lib/net_4_5/mscorlib.dll -debug+ -debug:full -nowarn:168,219,618,672 -unsafe -r:Mono.Posix.dll -r:System.Core.dll -define:MONO_DATACONVERTER_STATIC_METHODS</flags>
       <output>corlib_test_net_4_5.dll</output>
       <built_sources></built_sources>
       <library_output>corlib_test_net_4_5.dll</library_output>
     <project dir="class/System" library="System-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig -nowarn:618 -d:CONFIGURATION_2_0 -unsafe -resource:resources/Asterisk.wav -resource:resources/Beep.wav -resource:resources/Exclamation.wav -resource:resources/Hand.wav -resource:resources/Question.wav -r:PrebuiltSystem=../lib/net_4_5/System.dll -d:XML_DEP -r:System.Xml.dll -d:SECURITY_DEP -r:Mono.Security.dll -d:CONFIGURATION_DEP -r:System.Configuration.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig -nowarn:618 -d:CONFIGURATION_2_0 -unsafe -resource:resources/Asterisk.wav -resource:resources/Beep.wav -resource:resources/Exclamation.wav -resource:resources/Hand.wav -resource:resources/Question.wav -r:PrebuiltSystem=../lib/net_4_5/System.dll -d:XML_DEP -r:System.Xml.dll -d:SECURITY_DEP -r:Mono.Security.dll -d:CONFIGURATION_DEP -r:System.Configuration.dll</flags>
       <output>System.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/tmp/System.dll</library_output>
     <project dir="class/System" library="System-tests-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -r:./../../class/lib/net_4_5/System.dll -r:System.Drawing.dll -r:Mono.Security.dll -r:System.Data -r:System.Xml.dll -r:System.Core.dll -nowarn:0618 -nowarn:219 -nowarn:67 -nowarn:169 -nowarn:612 -resource:Test/System/test-uri-props.txt,test-uri-props.txt -resource:Test/System/test-uri-props-manual.txt,test-uri-props-manual.txt -resource:Test/System/test-uri-relative-props.txt,test-uri-relative-props.txt -r:System.Configuration</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_5/System.dll -r:System.Drawing.dll -r:Mono.Security.dll -r:System.Data -r:System.Xml.dll -r:System.Core.dll -nowarn:0618 -nowarn:219 -nowarn:67 -nowarn:169 -nowarn:612 -resource:Test/System/test-uri-props.txt,test-uri-props.txt -resource:Test/System/test-uri-props-manual.txt,test-uri-props-manual.txt -resource:Test/System/test-uri-relative-props.txt,test-uri-relative-props.txt -r:System.Configuration</flags>
       <output>System_test_net_4_5.dll</output>
       <built_sources></built_sources>
       <library_output>System_test_net_4_5.dll</library_output>
     <project dir="class/System.XML" library="System.Xml-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig -r:mscorlib.dll -r:System.dll -nowarn:0618,0612,0642</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig -r:mscorlib.dll -r:System.dll -nowarn:0618,0612,0642</flags>
       <output>System.Xml.dll</output>
       <built_sources>System.Xml.XPath/Parser.cs Mono.Xml.Xsl/PatternParser.cs Mono.Xml.Xsl/PatternTokenizer.cs</built_sources>
       <library_output>./../../class/lib/net_4_5/tmp/System.Xml.dll</library_output>
     <project dir="class/System.XML" library="System.Xml-tests-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -r:./../../class/lib/net_4_5/System.Xml.dll -r:mscorlib.dll -r:System.dll -nowarn:0618,0612,0642 -nowarn:0618 -nowarn:219 -nowarn:169 -r:System.Data.dll -r:System.Core.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_5/System.Xml.dll -r:mscorlib.dll -r:System.dll -nowarn:0618,0612,0642 -nowarn:0618 -nowarn:219 -nowarn:169 -r:System.Data.dll -r:System.Core.dll</flags>
       <output>System.Xml_test_net_4_5.dll</output>
       <built_sources>System.Xml.XPath/Parser.cs Mono.Xml.Xsl/PatternParser.cs Mono.Xml.Xsl/PatternTokenizer.cs</built_sources>
       <library_output>System.Xml_test_net_4_5.dll</library_output>
     <project dir="class/Mono.CompilerServices.SymbolWriter" library="Mono.CompilerServices.SymbolWriter-net_4_5">
       <boot>true</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig /r:System.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig /r:System.dll</flags>
       <output>Mono.CompilerServices.SymbolWriter.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/tmp/Mono.CompilerServices.SymbolWriter.dll</library_output>
     <project dir="class/Mono.Posix" library="Mono.Posix-net_4_5">
       <boot>true</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig /unsafe /r:mscorlib.dll /r:System.dll /nowarn:0618,612</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig /unsafe /r:mscorlib.dll /r:System.dll /nowarn:0618,612</flags>
       <output>Mono.Posix.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/Mono.Posix.dll</library_output>
     <project dir="class/Mono.Posix" library="Mono.Posix-tests-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -r:./../../class/lib/net_4_5/Mono.Posix.dll /r:Mono.Posix.dll /r:System.dll /nowarn:0219,0618</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_5/Mono.Posix.dll /r:Mono.Posix.dll /r:System.dll /nowarn:0219,0618</flags>
       <output>Mono.Posix_test_net_4_5.dll</output>
       <built_sources></built_sources>
       <library_output>Mono.Posix_test_net_4_5.dll</library_output>
     <project dir="class/System.Core" library="System.Core-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig -d:INSIDE_SYSCORE -d:LIBC /r:mscorlib.dll /r:System.dll -unsafe -d:NET_3_5 -nowarn:1720 -d:FEATURE_CORE_DLR,FEATURE_REFEMIT,FEATURE_PDBEMIT -r:Mono.Posix.dll -unsafe</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig -d:INSIDE_SYSCORE -d:LIBC /r:mscorlib.dll /r:System.dll -unsafe -d:NET_3_5 -nowarn:1720 -d:FEATURE_CORE_DLR,FEATURE_REFEMIT,FEATURE_PDBEMIT -r:Mono.Posix.dll -unsafe</flags>
       <output>System.Core.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/System.Core.dll</library_output>
     <project dir="class/System.Core" library="System.Core-tests-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -r:./../../class/lib/net_4_5/System.Core.dll -d:INSIDE_SYSCORE -d:LIBC /r:mscorlib.dll /r:System.dll -unsafe -d:NET_3_5 -nowarn:1720 -d:FEATURE_CORE_DLR,FEATURE_REFEMIT,FEATURE_PDBEMIT -r:Mono.Posix.dll -unsafe</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_5/System.Core.dll -d:INSIDE_SYSCORE -d:LIBC /r:mscorlib.dll /r:System.dll -unsafe -d:NET_3_5 -nowarn:1720 -d:FEATURE_CORE_DLR,FEATURE_REFEMIT,FEATURE_PDBEMIT -r:Mono.Posix.dll -unsafe</flags>
       <output>System.Core_test_net_4_5.dll</output>
       <built_sources></built_sources>
       <library_output>System.Core_test_net_4_5.dll</library_output>
     <project dir="class/Mono.Security" library="Mono.Security-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig -r:System.dll -unsafe -nowarn:1030</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig -r:System.dll -unsafe -nowarn:1030</flags>
       <output>Mono.Security.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/tmp/Mono.Security.dll</library_output>
     <project dir="class/Mono.Security" library="Mono.Security-tests-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -r:./../../class/lib/net_4_5/Mono.Security.dll -r:System.dll -unsafe -nowarn:1030 -nowarn:169,219,618,672</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_5/Mono.Security.dll -r:System.dll -unsafe -nowarn:1030 -nowarn:169,219,618,672</flags>
       <output>Mono.Security_test_net_4_5.dll</output>
       <built_sources></built_sources>
       <library_output>Mono.Security_test_net_4_5.dll</library_output>
     <project dir="class/System" library="System-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig -nowarn:618 -d:CONFIGURATION_2_0 -unsafe -resource:resources/Asterisk.wav -resource:resources/Beep.wav -resource:resources/Exclamation.wav -resource:resources/Hand.wav -resource:resources/Question.wav -r:PrebuiltSystem=../lib/net_4_5/System.dll -d:XML_DEP -r:System.Xml.dll -d:SECURITY_DEP -r:Mono.Security.dll -d:CONFIGURATION_DEP -r:System.Configuration.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig -nowarn:618 -d:CONFIGURATION_2_0 -unsafe -resource:resources/Asterisk.wav -resource:resources/Beep.wav -resource:resources/Exclamation.wav -resource:resources/Hand.wav -resource:resources/Question.wav -r:PrebuiltSystem=../lib/net_4_5/System.dll -d:XML_DEP -r:System.Xml.dll -d:SECURITY_DEP -r:Mono.Security.dll -d:CONFIGURATION_DEP -r:System.Configuration.dll</flags>
       <output>System.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/tmp/System.dll</library_output>
     <project dir="class/System" library="System-tests-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -r:./../../class/lib/net_4_5/System.dll -r:System.Drawing.dll -r:Mono.Security.dll -r:System.Data -r:System.Xml.dll -r:System.Core.dll -nowarn:0618 -nowarn:219 -nowarn:67 -nowarn:169 -nowarn:612 -resource:Test/System/test-uri-props.txt,test-uri-props.txt -resource:Test/System/test-uri-props-manual.txt,test-uri-props-manual.txt -resource:Test/System/test-uri-relative-props.txt,test-uri-relative-props.txt -r:System.Configuration</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_5/System.dll -r:System.Drawing.dll -r:Mono.Security.dll -r:System.Data -r:System.Xml.dll -r:System.Core.dll -nowarn:0618 -nowarn:219 -nowarn:67 -nowarn:169 -nowarn:612 -resource:Test/System/test-uri-props.txt,test-uri-props.txt -resource:Test/System/test-uri-props-manual.txt,test-uri-props-manual.txt -resource:Test/System/test-uri-relative-props.txt,test-uri-relative-props.txt -r:System.Configuration</flags>
       <output>System_test_net_4_5.dll</output>
       <built_sources></built_sources>
       <library_output>System_test_net_4_5.dll</library_output>
     <project dir="class/System.Security" library="System.Security-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig -nowarn:618 -r:mscorlib.dll -r:System.dll -r:System.Xml.dll -r:Mono.Security.dll -nowarn:414 -d:SECURITY_DEP</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig -nowarn:618 -r:mscorlib.dll -r:System.dll -r:System.Xml.dll -r:Mono.Security.dll -nowarn:414 -d:SECURITY_DEP</flags>
       <output>System.Security.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/System.Security.dll</library_output>
     <project dir="class/System.Security" library="System.Security-tests-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -r:./../../class/lib/net_4_5/System.Security.dll -nowarn:618 -r:mscorlib.dll -r:System.dll -r:System.Xml.dll -r:Mono.Security.dll -nowarn:414 -d:SECURITY_DEP -nowarn:169,219,1595 -nowarn:168,183,414</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_5/System.Security.dll -nowarn:618 -r:mscorlib.dll -r:System.dll -r:System.Xml.dll -r:Mono.Security.dll -nowarn:414 -d:SECURITY_DEP -nowarn:169,219,1595 -nowarn:168,183,414</flags>
       <output>System.Security_test_net_4_5.dll</output>
       <built_sources></built_sources>
       <library_output>System.Security_test_net_4_5.dll</library_output>
     <project dir="class/System.Configuration" library="System.Configuration-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig -r:mscorlib.dll -r:System.dll -r:System.Xml.dll -r:System.Security.dll -nowarn:618</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig -r:mscorlib.dll -r:System.dll -r:System.Xml.dll -r:System.Security.dll -nowarn:618</flags>
       <output>System.Configuration.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/tmp/System.Configuration.dll</library_output>
     <project dir="class/System.Configuration" library="System.Configuration-tests-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -r:./../../class/lib/net_4_5/System.Configuration.dll -r:mscorlib.dll -r:System.dll -r:System.Xml.dll -r:System.Security.dll -nowarn:618</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_5/System.Configuration.dll -r:mscorlib.dll -r:System.dll -r:System.Xml.dll -r:System.Security.dll -nowarn:618</flags>
       <output>System.Configuration_test_net_4_5.dll</output>
       <built_sources></built_sources>
       <library_output>System.Configuration_test_net_4_5.dll</library_output>
     <project dir="class/System" library="System-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig -nowarn:618 -d:CONFIGURATION_2_0 -unsafe -resource:resources/Asterisk.wav -resource:resources/Beep.wav -resource:resources/Exclamation.wav -resource:resources/Hand.wav -resource:resources/Question.wav -r:PrebuiltSystem=../lib/net_4_5/System.dll -d:XML_DEP -r:System.Xml.dll -d:SECURITY_DEP -r:Mono.Security.dll -d:CONFIGURATION_DEP -r:System.Configuration.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig -nowarn:618 -d:CONFIGURATION_2_0 -unsafe -resource:resources/Asterisk.wav -resource:resources/Beep.wav -resource:resources/Exclamation.wav -resource:resources/Hand.wav -resource:resources/Question.wav -r:PrebuiltSystem=../lib/net_4_5/System.dll -d:XML_DEP -r:System.Xml.dll -d:SECURITY_DEP -r:Mono.Security.dll -d:CONFIGURATION_DEP -r:System.Configuration.dll</flags>
       <output>System.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/tmp/System.dll</library_output>
     <project dir="class/System" library="System-tests-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -r:./../../class/lib/net_4_5/System.dll -r:System.Drawing.dll -r:Mono.Security.dll -r:System.Data -r:System.Xml.dll -r:System.Core.dll -nowarn:0618 -nowarn:219 -nowarn:67 -nowarn:169 -nowarn:612 -resource:Test/System/test-uri-props.txt,test-uri-props.txt -resource:Test/System/test-uri-props-manual.txt,test-uri-props-manual.txt -resource:Test/System/test-uri-relative-props.txt,test-uri-relative-props.txt -r:System.Configuration</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_5/System.dll -r:System.Drawing.dll -r:Mono.Security.dll -r:System.Data -r:System.Xml.dll -r:System.Core.dll -nowarn:0618 -nowarn:219 -nowarn:67 -nowarn:169 -nowarn:612 -resource:Test/System/test-uri-props.txt,test-uri-props.txt -resource:Test/System/test-uri-props-manual.txt,test-uri-props-manual.txt -resource:Test/System/test-uri-relative-props.txt,test-uri-relative-props.txt -r:System.Configuration</flags>
       <output>System_test_net_4_5.dll</output>
       <built_sources></built_sources>
       <library_output>System_test_net_4_5.dll</library_output>
     <project dir="class/System.XML" library="System.Xml-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig -r:mscorlib.dll -r:System.dll -nowarn:0618,0612,0642</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig -r:mscorlib.dll -r:System.dll -nowarn:0618,0612,0642</flags>
       <output>System.Xml.dll</output>
       <built_sources>System.Xml.XPath/Parser.cs Mono.Xml.Xsl/PatternParser.cs Mono.Xml.Xsl/PatternTokenizer.cs</built_sources>
       <library_output>./../../class/lib/net_4_5/tmp/System.Xml.dll</library_output>
     <project dir="class/System.XML" library="System.Xml-tests-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -r:./../../class/lib/net_4_5/System.Xml.dll -r:mscorlib.dll -r:System.dll -nowarn:0618,0612,0642 -nowarn:0618 -nowarn:219 -nowarn:169 -r:System.Data.dll -r:System.Core.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_5/System.Xml.dll -r:mscorlib.dll -r:System.dll -nowarn:0618,0612,0642 -nowarn:0618 -nowarn:219 -nowarn:169 -r:System.Data.dll -r:System.Core.dll</flags>
       <output>System.Xml_test_net_4_5.dll</output>
       <built_sources>System.Xml.XPath/Parser.cs Mono.Xml.Xsl/PatternParser.cs Mono.Xml.Xsl/PatternTokenizer.cs</built_sources>
       <library_output>System.Xml_test_net_4_5.dll</library_output>
     <project dir="class/I18N/Common" library="I18N-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 /r:mscorlib.dll /unsafe /define:DISABLE_UNSAFE -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig</flags>
+      <flags>/codepage:65001 /r:mscorlib.dll /unsafe /define:DISABLE_UNSAFE -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig</flags>
       <output>I18N.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_5/tmp/I18N.dll</library_output>
     <project dir="class/I18N/West" library="I18N.West-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 /r:mscorlib.dll /r:I18N.dll /unsafe -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig</flags>
+      <flags>/codepage:65001 /r:mscorlib.dll /r:I18N.dll /unsafe -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig</flags>
       <output>I18N.West.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_5/tmp/I18N.West.dll</library_output>
     <project dir="class/I18N/West" library="I18N.West-tests-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 /r:mscorlib.dll /r:I18N.dll /unsafe -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_5 -r:mscorlib.dll -debug -r:./../../../class/lib/net_4_5/I18N.West.dll</flags>
+      <flags>/codepage:65001 /r:mscorlib.dll /r:I18N.dll /unsafe -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize -r:./../../../class/lib/net_4_5/I18N.West.dll</flags>
       <output>I18N.West_test_net_4_5.dll</output>
       <built_sources></built_sources>
       <library_output>I18N.West_test_net_4_5.dll</library_output>
     <project dir="class/I18N/MidEast" library="I18N.MidEast-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 /r:mscorlib.dll /r:I18N.dll /unsafe -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig</flags>
+      <flags>/codepage:65001 /r:mscorlib.dll /r:I18N.dll /unsafe -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig</flags>
       <output>I18N.MidEast.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_5/tmp/I18N.MidEast.dll</library_output>
     <project dir="class/I18N/Other" library="I18N.Other-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 /r:mscorlib.dll /r:I18N.dll /unsafe -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig</flags>
+      <flags>/codepage:65001 /r:mscorlib.dll /r:I18N.dll /unsafe -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig</flags>
       <output>I18N.Other.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_5/tmp/I18N.Other.dll</library_output>
     <project dir="class/I18N/Rare" library="I18N.Rare-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 /r:mscorlib.dll /r:I18N.dll /unsafe -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig</flags>
+      <flags>/codepage:65001 /r:mscorlib.dll /r:I18N.dll /unsafe -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig</flags>
       <output>I18N.Rare.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_5/tmp/I18N.Rare.dll</library_output>
     <project dir="class/I18N/CJK" library="I18N.CJK-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 /unsafe /resource:big5.table /resource:gb2312.table /resource:jis.table /resource:ks.table /resource:gb18030.table /r:mscorlib.dll /r:I18N.dll /define:DISABLE_UNSAFE -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig</flags>
+      <flags>/codepage:65001 /unsafe /resource:big5.table /resource:gb2312.table /resource:jis.table /resource:ks.table /resource:gb18030.table /r:mscorlib.dll /r:I18N.dll /define:DISABLE_UNSAFE -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig</flags>
       <output>I18N.CJK.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_5/tmp/I18N.CJK.dll</library_output>
     <project dir="class/I18N/CJK" library="I18N.CJK-tests-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 /unsafe /resource:big5.table /resource:gb2312.table /resource:jis.table /resource:ks.table /resource:gb18030.table /r:mscorlib.dll /r:I18N.dll /define:DISABLE_UNSAFE -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_5 -r:mscorlib.dll -debug -r:./../../../class/lib/net_4_5/I18N.CJK.dll</flags>
+      <flags>/codepage:65001 /unsafe /resource:big5.table /resource:gb2312.table /resource:jis.table /resource:ks.table /resource:gb18030.table /r:mscorlib.dll /r:I18N.dll /define:DISABLE_UNSAFE -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize -r:./../../../class/lib/net_4_5/I18N.CJK.dll</flags>
       <output>I18N.CJK_test_net_4_5.dll</output>
       <built_sources></built_sources>
       <library_output>I18N.CJK_test_net_4_5.dll</library_output>
     <project dir="tools/resgen" library="resgen-net_4_5">
       <boot></boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig</flags>
       <output>resgen.exe</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/resgen.exe</library_output>
     <project dir="class/System.Drawing" library="System.Drawing-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig /unsafe /r:mscorlib.dll /r:System.dll -resource:Assembly/Mono.ico,Mono.ico -resource:Assembly/Information.ico,Information.ico -resource:Assembly/Error.ico,Error.ico -resource:Assembly/Warning.ico,Warning.ico -resource:Assembly/Question.ico,Question.ico</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig /unsafe /r:mscorlib.dll /r:System.dll -resource:Assembly/Mono.ico,Mono.ico -resource:Assembly/Information.ico,Information.ico -resource:Assembly/Error.ico,Error.ico -resource:Assembly/Warning.ico,Warning.ico -resource:Assembly/Question.ico,Question.ico</flags>
       <output>System.Drawing.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/System.Drawing.dll</library_output>
     <project dir="class/System.Drawing" library="System.Drawing-tests-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -r:./../../class/lib/net_4_5/System.Drawing.dll /unsafe /r:mscorlib.dll /r:System.dll -resource:Assembly/Mono.ico,Mono.ico -resource:Assembly/Information.ico,Information.ico -resource:Assembly/Error.ico,Error.ico -resource:Assembly/Warning.ico,Warning.ico -resource:Assembly/Question.ico,Question.ico -define:TEST -resource:Test/resources/indexed.png,indexed.png -r:System.Drawing.dll -r:System.Runtime.Serialization.Formatters.Soap.dll -r:System.Xml.dll -nowarn:0618 -nowarn:219 -nowarn:169 -nowarn:1595</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_5/System.Drawing.dll /unsafe /r:mscorlib.dll /r:System.dll -resource:Assembly/Mono.ico,Mono.ico -resource:Assembly/Information.ico,Information.ico -resource:Assembly/Error.ico,Error.ico -resource:Assembly/Warning.ico,Warning.ico -resource:Assembly/Question.ico,Question.ico -define:TEST -resource:Test/resources/indexed.png,indexed.png -r:System.Drawing.dll -r:System.Runtime.Serialization.Formatters.Soap.dll -r:System.Xml.dll -nowarn:0618 -nowarn:219 -nowarn:169 -nowarn:1595</flags>
       <output>System.Drawing_test_net_4_5.dll</output>
       <built_sources></built_sources>
       <library_output>System.Drawing_test_net_4_5.dll</library_output>
     <project dir="class/System.Transactions" library="System.Transactions-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig /r:mscorlib.dll /r:System.dll /r:System.Configuration.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig /r:mscorlib.dll /r:System.dll /r:System.Configuration.dll</flags>
       <output>System.Transactions.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/System.Transactions.dll</library_output>
     <project dir="class/System.Transactions" library="System.Transactions-tests-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -r:./../../class/lib/net_4_5/System.Transactions.dll /nowarn:1595 /r:mscorlib.dll /r:System.dll /r:System.Configuration.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_5/System.Transactions.dll /nowarn:1595 /r:mscorlib.dll /r:System.dll /r:System.Configuration.dll</flags>
       <output>System.Transactions_test_net_4_5.dll</output>
       <built_sources></built_sources>
       <library_output>System.Transactions_test_net_4_5.dll</library_output>
     <project dir="class/System.EnterpriseServices" library="System.EnterpriseServices-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig /nowarn:0168 /nowarn:0162 /r:mscorlib.dll /r:System.Transactions.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig /nowarn:0168 /nowarn:0162 /r:mscorlib.dll /r:System.Transactions.dll</flags>
       <output>System.EnterpriseServices.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/System.EnterpriseServices.dll</library_output>
     <project dir="class/Mono.Data.Tds" library="Mono.Data.Tds-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig /r:mscorlib.dll /r:System.dll /r:System.Xml.dll /r:Mono.Security.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig /r:mscorlib.dll /r:System.dll /r:System.Xml.dll /r:Mono.Security.dll</flags>
       <output>Mono.Data.Tds.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/Mono.Data.Tds.dll</library_output>
     <project dir="class/Mono.Data.Tds" library="Mono.Data.Tds-tests-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -r:./../../class/lib/net_4_5/Mono.Data.Tds.dll /r:System.dll /r:System.Net.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_5/Mono.Data.Tds.dll /r:System.dll /r:System.Net.dll</flags>
       <output>Mono.Data.Tds_test_net_4_5.dll</output>
       <built_sources></built_sources>
       <library_output>Mono.Data.Tds_test_net_4_5.dll</library_output>
     <project dir="class/System.Data" library="System.Data-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig -nowarn:649 -unsafe -r:mscorlib.dll -r:./../../class/lib/net_4_5/System.dll -r:System.Xml.dll -r:System.EnterpriseServices.dll -r:Mono.Data.Tds.dll -r:System.Configuration.dll -r:System.Transactions.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig -nowarn:649 -unsafe -r:mscorlib.dll -r:./../../class/lib/net_4_5/System.dll -r:System.Xml.dll -r:System.EnterpriseServices.dll -r:Mono.Data.Tds.dll -r:System.Configuration.dll -r:System.Transactions.dll</flags>
       <output>System.Data.dll</output>
       <built_sources>Mono.Data.SqlExpressions/Parser.cs</built_sources>
       <library_output>./../../class/lib/net_4_5/System.Data.dll</library_output>
     <project dir="class/System.Data" library="System.Data-tests-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -r:./../../class/lib/net_4_5/System.Data.dll -nowarn:649 -unsafe -r:mscorlib.dll -r:./../../class/lib/net_4_5/System.dll -r:System.Xml.dll -r:System.EnterpriseServices.dll -r:Mono.Data.Tds.dll -r:System.Configuration.dll -r:System.Transactions.dll -r:System.Core.dll -r:Mono.Data.Sqlite.dll -nowarn:618,169,612,219,168</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_5/System.Data.dll -nowarn:649 -unsafe -r:mscorlib.dll -r:./../../class/lib/net_4_5/System.dll -r:System.Xml.dll -r:System.EnterpriseServices.dll -r:Mono.Data.Tds.dll -r:System.Configuration.dll -r:System.Transactions.dll -r:System.Core.dll -r:Mono.Data.Sqlite.dll -nowarn:618,169,612,219,168</flags>
       <output>System.Data_test_net_4_5.dll</output>
       <built_sources>Mono.Data.SqlExpressions/Parser.cs</built_sources>
       <library_output>System.Data_test_net_4_5.dll</library_output>
     <project dir="class/Accessibility" library="Accessibility-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig /r:mscorlib.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig /r:mscorlib.dll</flags>
       <output>Accessibility.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/Accessibility.dll</library_output>
     <project dir="class/Mono.WebBrowser" library="Mono.WebBrowser-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig -r:System.dll -warn:1</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig -r:System.dll -warn:1</flags>
       <output>Mono.WebBrowser.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/Mono.WebBrowser.dll</library_output>
     <project dir="class/Managed.Windows.Forms" library="System.Windows.Forms-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig /unsafe /r:mscorlib.dll /r:System.dll /r:System.Xml.dll /r:System.Drawing.dll /r:Accessibility.dll /r:System.Data.dll /r:Mono.Posix.dll /r:Mono.WebBrowser /r:System.Configuration.dll @System.Windows.Forms.dll.resources -nowarn:618,612,809</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig /unsafe /r:mscorlib.dll /r:System.dll /r:System.Xml.dll /r:System.Drawing.dll /r:Accessibility.dll /r:System.Data.dll /r:Mono.Posix.dll /r:Mono.WebBrowser /r:System.Configuration.dll @System.Windows.Forms.dll.resources -nowarn:618,612,809</flags>
       <output>System.Windows.Forms.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/System.Windows.Forms.dll</library_output>
     <project dir="class/Managed.Windows.Forms" library="System.Windows.Forms-tests-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -r:./../../class/lib/net_4_5/System.Windows.Forms.dll /r:System.Data.dll /r:System.Drawing.dll /r:Accessibility.dll -r:System.dll -r:System.Xml.dll -resource:Test/resources/a.cur,a.cur -resource:Test/resources/32x32.ico,32x32.ico -nowarn:618,612</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_5/System.Windows.Forms.dll /r:System.Data.dll /r:System.Drawing.dll /r:Accessibility.dll -r:System.dll -r:System.Xml.dll -resource:Test/resources/a.cur,a.cur -resource:Test/resources/32x32.ico,32x32.ico -nowarn:618,612</flags>
       <output>System.Windows.Forms_test_net_4_5.dll</output>
       <built_sources></built_sources>
       <library_output>System.Windows.Forms_test_net_4_5.dll</library_output>
     <project dir="class/Mono.Data.Sqlite" library="Mono.Data.Sqlite-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig /unsafe /r:System.dll /r:System.Data.dll /r:System.Transactions.dll /r:System.Xml.dll -resource:resources/SR.resources -resource:resources/SQLiteCommand.bmp -resource:resources/SQLiteConnection.bmp -resource:resources/SQLiteDataAdapter.bmp -d:SQLITE_STANDARD</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig /unsafe /r:System.dll /r:System.Data.dll /r:System.Transactions.dll /r:System.Xml.dll -resource:resources/SR.resources -resource:resources/SQLiteCommand.bmp -resource:resources/SQLiteConnection.bmp -resource:resources/SQLiteDataAdapter.bmp -d:SQLITE_STANDARD</flags>
       <output>Mono.Data.Sqlite.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/Mono.Data.Sqlite.dll</library_output>
     <project dir="class/Mono.Data.Sqlite" library="Mono.Data.Sqlite-tests-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -r:./../../class/lib/net_4_5/Mono.Data.Sqlite.dll /unsafe /r:System.dll /r:System.Data.dll /r:System.Transactions.dll /r:System.Xml.dll -resource:resources/SR.resources -resource:resources/SQLiteCommand.bmp -resource:resources/SQLiteConnection.bmp -resource:resources/SQLiteDataAdapter.bmp -d:SQLITE_STANDARD /nowarn:618</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_5/Mono.Data.Sqlite.dll /unsafe /r:System.dll /r:System.Data.dll /r:System.Transactions.dll /r:System.Xml.dll -resource:resources/SR.resources -resource:resources/SQLiteCommand.bmp -resource:resources/SQLiteConnection.bmp -resource:resources/SQLiteDataAdapter.bmp -d:SQLITE_STANDARD /nowarn:618</flags>
       <output>Mono.Data.Sqlite_test_net_4_5.dll</output>
       <built_sources></built_sources>
       <library_output>Mono.Data.Sqlite_test_net_4_5.dll</library_output>
     <project dir="class/System.Web.ApplicationServices" library="System.Web.ApplicationServices-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig -r:System.dll -r:System.Configuration.dll -d:SYSTEM_WEB_APPLICATIONSERVICES</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig -r:System.dll -r:System.Configuration.dll -d:SYSTEM_WEB_APPLICATIONSERVICES</flags>
       <output>System.Web.ApplicationServices.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/System.Web.ApplicationServices.dll</library_output>
     <project dir="class/System.Web" library="System.Web-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig -unsafe -nowarn:612,618 -r:mscorlib.dll -r:System.dll -r:System.Drawing.dll -r:System.Data.dll -r:System.Xml.dll -r:System.EnterpriseServices.dll -d:INSIDE_SYSTEM_WEB -nowarn:618 -r:System.Configuration.dll -r:Mono.Data.Sqlite.dll -r:System.Web.ApplicationServices.dll /resource:resources/TranslationResources.resources /resource:resources/WebUIValidation.js /resource:resources/folder.gif /resource:resources/file.gif /resource:resources/computer.gif /resource:resources/arrow_minus.gif /resource:resources/arrow_noexpand.gif /resource:resources/arrow_plus.gif /resource:resources/arrow_up.gif /resource:resources/arrow_down.gif /resource:resources/box_full.gif /resource:resources/box_empty.gif /resource:resources/box_minus.gif /resource:resources/box_noexpand.gif /resource:resources/box_plus.gif /resource:resources/contact.gif /resource:resources/dot_empty.gif /resource:resources/dot_full.gif /resource:resources/dots.gif /resource:resources/inbox.gif /resource:resources/star_empty.gif /resource:resources/star_full.gif /resource:resources/warning.gif /resource:resources/TreeView_noexpand.gif /resource:resources/TreeView_dash.gif /resource:resources/TreeView_dashminus.gif /resource:resources/TreeView_dashplus.gif /resource:resources/TreeView_i.gif /resource:resources/TreeView_l.gif /resource:resources/TreeView_lminus.gif /resource:resources/TreeView_lplus.gif /resource:resources/TreeView_minus.gif /resource:resources/TreeView_plus.gif /resource:resources/TreeView_r.gif /resource:resources/TreeView_rminus.gif /resource:resources/TreeView_rplus.gif /resource:resources/TreeView_t.gif /resource:resources/TreeView_tminus.gif /resource:resources/TreeView_tplus.gif /resource:resources/transparent.gif /resource:resources/webform.js /resource:resources/WebUIValidation_2.0.js /resource:resources/ErrorTemplateCommon_Top.html /resource:resources/DefaultErrorTemplate_CustomErrorDefault.html /resource:resources/ErrorTemplateCommon_Bottom.html /resource:resources/DefaultErrorTemplate_StandardPage.html /resource:resources/HtmlizedExceptionPage_Top.html /resource:resources/HtmlizedExceptionPage_FileLongSource.html /resource:resources/HtmlizedExceptionPage_FileShortSource.html /resource:resources/HtmlizedExceptionPage_CompilerOutput.html /resource:System.Web.UI.WebControls/GridView.js /resource:System.Web.UI.WebControls/DetailsView.js /resource:System.Web.UI.WebControls/TreeView.js /resource:System.Web.UI.WebControls/Menu.js /resource:System.Web.UI.WebControls/MenuModern.js -define:WEBSERVICES_DEP -r:System.Web.Services.dll -define:MONOWEB_DEP -r:Mono.Web.dll -define:SYSTEMCORE_DEP -r:System.Core.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig -unsafe -nowarn:612,618 -r:mscorlib.dll -r:System.dll -r:System.Drawing.dll -r:System.Data.dll -r:System.Xml.dll -r:System.EnterpriseServices.dll -d:INSIDE_SYSTEM_WEB -nowarn:618 -r:System.Configuration.dll -r:Mono.Data.Sqlite.dll -r:System.Web.ApplicationServices.dll /resource:resources/TranslationResources.resources /resource:resources/WebUIValidation.js /resource:resources/folder.gif /resource:resources/file.gif /resource:resources/computer.gif /resource:resources/arrow_minus.gif /resource:resources/arrow_noexpand.gif /resource:resources/arrow_plus.gif /resource:resources/arrow_up.gif /resource:resources/arrow_down.gif /resource:resources/box_full.gif /resource:resources/box_empty.gif /resource:resources/box_minus.gif /resource:resources/box_noexpand.gif /resource:resources/box_plus.gif /resource:resources/contact.gif /resource:resources/dot_empty.gif /resource:resources/dot_full.gif /resource:resources/dots.gif /resource:resources/inbox.gif /resource:resources/star_empty.gif /resource:resources/star_full.gif /resource:resources/warning.gif /resource:resources/TreeView_noexpand.gif /resource:resources/TreeView_dash.gif /resource:resources/TreeView_dashminus.gif /resource:resources/TreeView_dashplus.gif /resource:resources/TreeView_i.gif /resource:resources/TreeView_l.gif /resource:resources/TreeView_lminus.gif /resource:resources/TreeView_lplus.gif /resource:resources/TreeView_minus.gif /resource:resources/TreeView_plus.gif /resource:resources/TreeView_r.gif /resource:resources/TreeView_rminus.gif /resource:resources/TreeView_rplus.gif /resource:resources/TreeView_t.gif /resource:resources/TreeView_tminus.gif /resource:resources/TreeView_tplus.gif /resource:resources/transparent.gif /resource:resources/webform.js /resource:resources/WebUIValidation_2.0.js /resource:resources/ErrorTemplateCommon_Top.html /resource:resources/DefaultErrorTemplate_CustomErrorDefault.html /resource:resources/ErrorTemplateCommon_Bottom.html /resource:resources/DefaultErrorTemplate_StandardPage.html /resource:resources/HtmlizedExceptionPage_Top.html /resource:resources/HtmlizedExceptionPage_FileLongSource.html /resource:resources/HtmlizedExceptionPage_FileShortSource.html /resource:resources/HtmlizedExceptionPage_CompilerOutput.html /resource:System.Web.UI.WebControls/GridView.js /resource:System.Web.UI.WebControls/DetailsView.js /resource:System.Web.UI.WebControls/TreeView.js /resource:System.Web.UI.WebControls/Menu.js /resource:System.Web.UI.WebControls/MenuModern.js -define:WEBSERVICES_DEP -r:System.Web.Services.dll -define:MONOWEB_DEP -r:Mono.Web.dll -define:SYSTEMCORE_DEP -r:System.Core.dll</flags>
       <output>System.Web.dll</output>
       <built_sources>System.Web/UplevelHelper.cs</built_sources>
       <library_output>./../../class/lib/net_4_5/tmp/System.Web.dll</library_output>
     <project dir="class/System.Web" library="System.Web-tests-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -r:./../../class/lib/net_4_5/System.Web.dll -unsafe -nowarn:612,618 -r:mscorlib.dll -r:System.dll -r:System.Drawing.dll -r:System.Data.dll -r:System.Xml.dll -r:System.EnterpriseServices.dll -d:INSIDE_SYSTEM_WEB -nowarn:618 -r:System.Configuration.dll -r:Mono.Data.Sqlite.dll -r:System.Web.ApplicationServices.dll /resource:resources/TranslationResources.resources /resource:resources/WebUIValidation.js /resource:resources/folder.gif /resource:resources/file.gif /resource:resources/computer.gif /resource:resources/arrow_minus.gif /resource:resources/arrow_noexpand.gif /resource:resources/arrow_plus.gif /resource:resources/arrow_up.gif /resource:resources/arrow_down.gif /resource:resources/box_full.gif /resource:resources/box_empty.gif /resource:resources/box_minus.gif /resource:resources/box_noexpand.gif /resource:resources/box_plus.gif /resource:resources/contact.gif /resource:resources/dot_empty.gif /resource:resources/dot_full.gif /resource:resources/dots.gif /resource:resources/inbox.gif /resource:resources/star_empty.gif /resource:resources/star_full.gif /resource:resources/warning.gif /resource:resources/TreeView_noexpand.gif /resource:resources/TreeView_dash.gif /resource:resources/TreeView_dashminus.gif /resource:resources/TreeView_dashplus.gif /resource:resources/TreeView_i.gif /resource:resources/TreeView_l.gif /resource:resources/TreeView_lminus.gif /resource:resources/TreeView_lplus.gif /resource:resources/TreeView_minus.gif /resource:resources/TreeView_plus.gif /resource:resources/TreeView_r.gif /resource:resources/TreeView_rminus.gif /resource:resources/TreeView_rplus.gif /resource:resources/TreeView_t.gif /resource:resources/TreeView_tminus.gif /resource:resources/TreeView_tplus.gif /resource:resources/transparent.gif /resource:resources/webform.js /resource:resources/WebUIValidation_2.0.js /resource:resources/ErrorTemplateCommon_Top.html /resource:resources/DefaultErrorTemplate_CustomErrorDefault.html /resource:resources/ErrorTemplateCommon_Bottom.html /resource:resources/DefaultErrorTemplate_StandardPage.html /resource:resources/HtmlizedExceptionPage_Top.html /resource:resources/HtmlizedExceptionPage_FileLongSource.html /resource:resources/HtmlizedExceptionPage_FileShortSource.html /resource:resources/HtmlizedExceptionPage_CompilerOutput.html /resource:System.Web.UI.WebControls/GridView.js /resource:System.Web.UI.WebControls/DetailsView.js /resource:System.Web.UI.WebControls/TreeView.js /resource:System.Web.UI.WebControls/Menu.js /resource:System.Web.UI.WebControls/MenuModern.js -define:WEBSERVICES_DEP -r:System.Web.Services.dll -define:MONOWEB_DEP -r:Mono.Web.dll -define:SYSTEMCORE_DEP -r:System.Core.dll -doc:System.Web_test_net_4_5.xml -nowarn:219,169,1591 -r:SystemWebTestShim.dll /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/Global.asax /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/My.ashx /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/My.master /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/MyPage.aspx /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/MyPage.aspx.cs /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/MyPageWithMaster.aspx /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/Web.mono.config /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/Web.mono.config.4.0 /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/sub_map_01.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_01.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_02.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_03.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_04.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_05.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_06.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_07.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_08.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_09.sitemap /resource:Test/mainsoft/NunitWebResources/menuclass.aspx /resource:Test/mainsoft/NunitWebResources/FormView.aspx /resource:Test/mainsoft/NunitWebResources/PostBackMenuTest.aspx /resource:Test/mainsoft/NunitWebResources/PageWithStyleSheet.aspx /resource:Test/mainsoft/NunitWebResources/PageWithTheme.aspx /resource:Test/mainsoft/NunitWebResources/ResolveUrl.ascx /resource:Test/mainsoft/NunitWebResources/ResolveUrl.aspx /resource:Test/mainsoft/NunitWebResources/RunTimeSetTheme.aspx /resource:Test/mainsoft/NunitWebResources/ReadOnlyPropertyBind.aspx /resource:Test/mainsoft/NunitWebResources/ReadOnlyPropertyControl.ascx /resource:Test/mainsoft/NunitWebResources/Theme1.skin /resource:Test/mainsoft/NunitWebResources/Theme2.skin /resource:Test/mainsoft/NunitWebResources/UrlProperty.aspx /resource:Test/mainsoft/NunitWebResources/UrlProperty.ascx /resource:Test/mainsoft/NunitWebResources/UrlProperty.ascx.cs /resource:Test/mainsoft/NunitWebResources/Web.sitemap /resource:Test/mainsoft/NunitWebResources/WizardTest.skin /resource:Test/mainsoft/NunitWebResources/FooterTemplateTest.aspx /resource:Test/mainsoft/NunitWebResources/DataGrid.aspx /resource:Test/mainsoft/NunitWebResources/DetailsViewTemplates.aspx /resource:Test/mainsoft/NunitWebResources/DetailsViewTemplates_2.aspx /resource:Test/mainsoft/NunitWebResources/DetailsViewTemplates_3.aspx /resource:Test/mainsoft/NunitWebResources/DetailsViewDataActions.aspx /resource:Test/mainsoft/NunitWebResources/DetailsViewProperties1.aspx /resource:Test/mainsoft/NunitWebResources/Bluehills.jpg /resource:Test/mainsoft/NunitWebResources/FormViewTest1.aspx /resource:Test/mainsoft/NunitWebResources/FormViewTest1_2.aspx /resource:Test/mainsoft/NunitWebResources/FormViewTest1_3.aspx /resource:Test/mainsoft/NunitWebResources/FormViewTest1_4.aspx /resource:Test/mainsoft/NunitWebResources/FormViewInsertEditDelete.aspx /resource:Test/mainsoft/NunitWebResources/GridViewUpdate.aspx /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest.xml /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest.xsl /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest1.aspx /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest2.aspx /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest3.aspx /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest4.aspx /resource:Test/mainsoft/NunitWebResources/LoginViewTest1.aspx /resource:Test/mainsoft/NunitWebResources/WebControl.config /resource:Test/mainsoft/NunitWebResources/WebLogin.config /resource:Test/mainsoft/NunitWebResources/CallbackTest1.aspx /resource:Test/mainsoft/NunitWebResources/CallbackTest2.aspx /resource:Test/mainsoft/NunitWebResources/EventValidationTest2.aspx /resource:Test/mainsoft/NunitWebResources/EventValidationTest1.aspx /resource:Test/mainsoft/NunitWebResources/ClientScript.js /resource:Test/mainsoft/NunitWebResources/EvalTest.aspx /resource:Test/mainsoft/NunitWebResources/TemplateUserControl.ascx /resource:Test/mainsoft/NunitWebResources/WebMapping.config /resource:Test/mainsoft/NunitWebResources/Mapping.aspx /resource:Test/mainsoft/NunitWebResources/Mapping1.aspx /resource:Test/mainsoft/NunitWebResources/CrossPagePosting1.aspx /resource:Test/mainsoft/NunitWebResources/CrossPagePosting2.aspx /resource:Test/mainsoft/NunitWebResources/MyDerived.master /resource:Test/mainsoft/NunitWebResources/MyPageWithDerivedMaster.aspx /resource:Test/mainsoft/NunitWebResources/MasterTypeTest1.aspx /resource:Test/mainsoft/NunitWebResources/MasterTypeTest2.aspx /resource:Test/mainsoft/NunitWebResources/PageLifecycleTest.aspx /resource:Test/mainsoft/NunitWebResources/PageValidationTest.aspx /resource:Test/mainsoft/NunitWebResources/AsyncPage.aspx /resource:Test/mainsoft/NunitWebResources/PageCultureTest.aspx /resource:Test/mainsoft/NunitWebResources/adapters.browser /resource:Test/mainsoft/NunitWebResources/NoEventValidation.aspx /resource:Test/mainsoft/NunitWebResources/ListControlPage.aspx /resource:Test/mainsoft/NunitWebResources/TextBoxTestlPage.aspx /resource:Test/mainsoft/NunitWebResources/ClearErrorOnError.aspx /resource:Test/mainsoft/NunitWebResources/RedirectOnError.aspx /resource:Test/mainsoft/NunitWebResources/TestCapability.browser /resource:Test/mainsoft/NunitWebResources/PageWithAdapter.aspx /resource:Test/mainsoft/NunitWebResources/InvalidPropertyBind1.aspx /resource:Test/mainsoft/NunitWebResources/InvalidPropertyBind2.aspx /resource:Test/mainsoft/NunitWebResources/InvalidPropertyBind3.aspx /resource:Test/mainsoft/NunitWebResources/InvalidPropertyBind4.aspx /resource:Test/mainsoft/NunitWebResources/ValidPropertyBind1.aspx /resource:Test/mainsoft/NunitWebResources/ValidPropertyBind2.aspx /resource:Test/mainsoft/NunitWebResources/ValidPropertyBind3.aspx /resource:Test/mainsoft/NunitWebResources/ValidPropertyBind4.aspx /resource:Test/mainsoft/NunitWebResources/ValidPropertyBind5.aspx /resource:Test/mainsoft/NunitWebResources/ReadWritePropertyControl.ascx /resource:Test/mainsoft/MainsoftWebTest/nunitweb_config.xml /resource:Test/mainsoft/NunitWebResources/TemplateControlParsingTest.aspx /resource:Test/mainsoft/NunitWebResources/ContentPlaceHolderInTemplate.aspx /resource:Test/mainsoft/NunitWebResources/ContentPlaceHolderInTemplate.master /resource:Test/mainsoft/NunitWebResources/MissingMasterFile.aspx /resource:Test/mainsoft/NunitWebResources/CustomSectionEmptyCollection.aspx /resource:Test/mainsoft/NunitWebResources/NoDoubleOnInitOnRemoveAdd.aspx /resource:Test/mainsoft/NunitWebResources/NoDoubleOnInitOnRemoveAdd.aspx.cs /resource:Test/mainsoft/NunitWebResources/LoginDisplayRememberMe.aspx /resource:Test/mainsoft/NunitWebResources/NoBindForMethodsWithBindInName.aspx /resource:Test/mainsoft/NunitWebResources/LinkInHeadWithEmbeddedExpression.aspx /resource:Test/mainsoft/NunitWebResources/ExpressionInListControl.aspx /resource:Test/mainsoft/NunitWebResources/ServerSideControlsInScriptBlock.aspx /resource:Test/mainsoft/NunitWebResources/ServerControlInClientSideComment.aspx /resource:Test/mainsoft/NunitWebResources/PreprocessorDirectivesInMarkup.aspx /resource:Test/mainsoft/NunitWebResources/UnquotedAngleBrackets.aspx /resource:Test/mainsoft/NunitWebResources/FullTagsInText.aspx /resource:Test/mainsoft/NunitWebResources/TagsExpressionsAndCommentsInText.aspx /resource:Test/mainsoft/NunitWebResources/NewlineInCodeExpression.aspx /resource:Test/mainsoft/NunitWebResources/DuplicateControlsInClientComment.aspx /resource:Test/mainsoft/NunitWebResources/TagsNestedInClientTag.aspx /resource:Test/mainsoft/NunitWebResources/ConditionalClientComments.aspx /resource:Test/mainsoft/NunitWebResources/OneLetterIdentifierInCodeRender.aspx /resource:Test/mainsoft/NunitWebResources/GlobalResourcesLocalization.aspx /resource:Test/mainsoft/NunitWebResources/TableSections_Bug551666.aspx /resource:Test/mainsoft/NunitWebResources/TableSections_Bug551666.aspx.cs /resource:Test/mainsoft/NunitWebResources/NestedParserFileText.aspx /resource:Test/mainsoft/NunitWebResources/StateFormatter_CorrectConverter.aspx /resource:Test/mainsoft/NunitWebResources/StateFormatter_CollectionConverter.aspx /resource:Test/mainsoft/NunitWebResources/StateFormatter_CollectionConverter.aspx.cs /resource:Test/mainsoft/NunitWebResources/ChangePasswordContainer_FindControl.aspx /resource:Test/mainsoft/NunitWebResources/TagWithExpressionWithinAttribute.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxList_Bug377703_1.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxList_Bug377703_2.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxList_Bug578770.aspx /resource:Test/mainsoft/NunitWebResources/EnumConverter_Bug578586.aspx /resource:Test/mainsoft/NunitWebResources/ButtonColor_Bug325489.aspx /resource:Test/mainsoft/NunitWebResources/SqlDataSource_OnInit_Bug572781.aspx /resource:Test/mainsoft/NunitWebResources/FormViewPagerVisibility.aspx /resource:Test/mainsoft/NunitWebResources/OverridenControlsPropertyAndPostBack_Bug594238.aspx /resource:Test/mainsoft/NunitWebResources/GlobalizationEncodingName.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_0.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_1.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_2.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_5.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_6.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_7.aspx /resource:Test/mainsoft/NunitWebResources/GridView_Bug595567.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxList_Bug600415.aspx /resource:Test/mainsoft/NunitWebResources/BoundField_Bug646505.aspx /resource:Test/mainsoft/NunitWebResources/BoundField_Bug646505.aspx.cs /resource:Test/mainsoft/NunitWebResources/HtmlTitleCodeRender_Bug662918.aspx /resource:Test/mainsoft/NunitWebResources/App_Code/EnumConverterControl.cs,App_Code/EnumConverterControl.cs /resource:Test/mainsoft/NunitWebResources/App_Code/MyContainer.cs,App_Code/MyContainer.cs /resource:Test/mainsoft/NunitWebResources/App_Code/CustomCheckBoxColumn.cs,App_Code/CustomCheckBoxColumn.cs /resource:Test/mainsoft/NunitWebResources/App_GlobalResources/Common.resx,App_GlobalResources/Common.resx /resource:Test/mainsoft/NunitWebResources/App_GlobalResources/Common.fr-FR.resx,App_GlobalResources/Common.fr-FR.resx /resource:Test/mainsoft/NunitWebResources/App_GlobalResources/Resource1.resx,App_GlobalResources/Resource1.resx</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_5/System.Web.dll -unsafe -nowarn:612,618 -r:mscorlib.dll -r:System.dll -r:System.Drawing.dll -r:System.Data.dll -r:System.Xml.dll -r:System.EnterpriseServices.dll -d:INSIDE_SYSTEM_WEB -nowarn:618 -r:System.Configuration.dll -r:Mono.Data.Sqlite.dll -r:System.Web.ApplicationServices.dll /resource:resources/TranslationResources.resources /resource:resources/WebUIValidation.js /resource:resources/folder.gif /resource:resources/file.gif /resource:resources/computer.gif /resource:resources/arrow_minus.gif /resource:resources/arrow_noexpand.gif /resource:resources/arrow_plus.gif /resource:resources/arrow_up.gif /resource:resources/arrow_down.gif /resource:resources/box_full.gif /resource:resources/box_empty.gif /resource:resources/box_minus.gif /resource:resources/box_noexpand.gif /resource:resources/box_plus.gif /resource:resources/contact.gif /resource:resources/dot_empty.gif /resource:resources/dot_full.gif /resource:resources/dots.gif /resource:resources/inbox.gif /resource:resources/star_empty.gif /resource:resources/star_full.gif /resource:resources/warning.gif /resource:resources/TreeView_noexpand.gif /resource:resources/TreeView_dash.gif /resource:resources/TreeView_dashminus.gif /resource:resources/TreeView_dashplus.gif /resource:resources/TreeView_i.gif /resource:resources/TreeView_l.gif /resource:resources/TreeView_lminus.gif /resource:resources/TreeView_lplus.gif /resource:resources/TreeView_minus.gif /resource:resources/TreeView_plus.gif /resource:resources/TreeView_r.gif /resource:resources/TreeView_rminus.gif /resource:resources/TreeView_rplus.gif /resource:resources/TreeView_t.gif /resource:resources/TreeView_tminus.gif /resource:resources/TreeView_tplus.gif /resource:resources/transparent.gif /resource:resources/webform.js /resource:resources/WebUIValidation_2.0.js /resource:resources/ErrorTemplateCommon_Top.html /resource:resources/DefaultErrorTemplate_CustomErrorDefault.html /resource:resources/ErrorTemplateCommon_Bottom.html /resource:resources/DefaultErrorTemplate_StandardPage.html /resource:resources/HtmlizedExceptionPage_Top.html /resource:resources/HtmlizedExceptionPage_FileLongSource.html /resource:resources/HtmlizedExceptionPage_FileShortSource.html /resource:resources/HtmlizedExceptionPage_CompilerOutput.html /resource:System.Web.UI.WebControls/GridView.js /resource:System.Web.UI.WebControls/DetailsView.js /resource:System.Web.UI.WebControls/TreeView.js /resource:System.Web.UI.WebControls/Menu.js /resource:System.Web.UI.WebControls/MenuModern.js -define:WEBSERVICES_DEP -r:System.Web.Services.dll -define:MONOWEB_DEP -r:Mono.Web.dll -define:SYSTEMCORE_DEP -r:System.Core.dll -doc:System.Web_test_net_4_5.xml -nowarn:219,169,1591 -r:SystemWebTestShim.dll /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/Global.asax /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/My.ashx /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/My.master /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/MyPage.aspx /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/MyPage.aspx.cs /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/MyPageWithMaster.aspx /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/Web.mono.config /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/Web.mono.config.4.0 /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/sub_map_01.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_01.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_02.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_03.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_04.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_05.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_06.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_07.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_08.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_09.sitemap /resource:Test/mainsoft/NunitWebResources/menuclass.aspx /resource:Test/mainsoft/NunitWebResources/FormView.aspx /resource:Test/mainsoft/NunitWebResources/PostBackMenuTest.aspx /resource:Test/mainsoft/NunitWebResources/PageWithStyleSheet.aspx /resource:Test/mainsoft/NunitWebResources/PageWithTheme.aspx /resource:Test/mainsoft/NunitWebResources/ResolveUrl.ascx /resource:Test/mainsoft/NunitWebResources/ResolveUrl.aspx /resource:Test/mainsoft/NunitWebResources/RunTimeSetTheme.aspx /resource:Test/mainsoft/NunitWebResources/ReadOnlyPropertyBind.aspx /resource:Test/mainsoft/NunitWebResources/ReadOnlyPropertyControl.ascx /resource:Test/mainsoft/NunitWebResources/Theme1.skin /resource:Test/mainsoft/NunitWebResources/Theme2.skin /resource:Test/mainsoft/NunitWebResources/UrlProperty.aspx /resource:Test/mainsoft/NunitWebResources/UrlProperty.ascx /resource:Test/mainsoft/NunitWebResources/UrlProperty.ascx.cs /resource:Test/mainsoft/NunitWebResources/Web.sitemap /resource:Test/mainsoft/NunitWebResources/WizardTest.skin /resource:Test/mainsoft/NunitWebResources/FooterTemplateTest.aspx /resource:Test/mainsoft/NunitWebResources/DataGrid.aspx /resource:Test/mainsoft/NunitWebResources/DetailsViewTemplates.aspx /resource:Test/mainsoft/NunitWebResources/DetailsViewTemplates_2.aspx /resource:Test/mainsoft/NunitWebResources/DetailsViewTemplates_3.aspx /resource:Test/mainsoft/NunitWebResources/DetailsViewDataActions.aspx /resource:Test/mainsoft/NunitWebResources/DetailsViewProperties1.aspx /resource:Test/mainsoft/NunitWebResources/Bluehills.jpg /resource:Test/mainsoft/NunitWebResources/FormViewTest1.aspx /resource:Test/mainsoft/NunitWebResources/FormViewTest1_2.aspx /resource:Test/mainsoft/NunitWebResources/FormViewTest1_3.aspx /resource:Test/mainsoft/NunitWebResources/FormViewTest1_4.aspx /resource:Test/mainsoft/NunitWebResources/FormViewInsertEditDelete.aspx /resource:Test/mainsoft/NunitWebResources/GridViewUpdate.aspx /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest.xml /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest.xsl /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest1.aspx /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest2.aspx /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest3.aspx /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest4.aspx /resource:Test/mainsoft/NunitWebResources/LoginViewTest1.aspx /resource:Test/mainsoft/NunitWebResources/WebControl.config /resource:Test/mainsoft/NunitWebResources/WebLogin.config /resource:Test/mainsoft/NunitWebResources/CallbackTest1.aspx /resource:Test/mainsoft/NunitWebResources/CallbackTest2.aspx /resource:Test/mainsoft/NunitWebResources/EventValidationTest2.aspx /resource:Test/mainsoft/NunitWebResources/EventValidationTest1.aspx /resource:Test/mainsoft/NunitWebResources/ClientScript.js /resource:Test/mainsoft/NunitWebResources/EvalTest.aspx /resource:Test/mainsoft/NunitWebResources/TemplateUserControl.ascx /resource:Test/mainsoft/NunitWebResources/WebMapping.config /resource:Test/mainsoft/NunitWebResources/Mapping.aspx /resource:Test/mainsoft/NunitWebResources/Mapping1.aspx /resource:Test/mainsoft/NunitWebResources/CrossPagePosting1.aspx /resource:Test/mainsoft/NunitWebResources/CrossPagePosting2.aspx /resource:Test/mainsoft/NunitWebResources/MyDerived.master /resource:Test/mainsoft/NunitWebResources/MyPageWithDerivedMaster.aspx /resource:Test/mainsoft/NunitWebResources/MasterTypeTest1.aspx /resource:Test/mainsoft/NunitWebResources/MasterTypeTest2.aspx /resource:Test/mainsoft/NunitWebResources/PageLifecycleTest.aspx /resource:Test/mainsoft/NunitWebResources/PageValidationTest.aspx /resource:Test/mainsoft/NunitWebResources/AsyncPage.aspx /resource:Test/mainsoft/NunitWebResources/PageCultureTest.aspx /resource:Test/mainsoft/NunitWebResources/adapters.browser /resource:Test/mainsoft/NunitWebResources/NoEventValidation.aspx /resource:Test/mainsoft/NunitWebResources/ListControlPage.aspx /resource:Test/mainsoft/NunitWebResources/TextBoxTestlPage.aspx /resource:Test/mainsoft/NunitWebResources/ClearErrorOnError.aspx /resource:Test/mainsoft/NunitWebResources/RedirectOnError.aspx /resource:Test/mainsoft/NunitWebResources/TestCapability.browser /resource:Test/mainsoft/NunitWebResources/PageWithAdapter.aspx /resource:Test/mainsoft/NunitWebResources/InvalidPropertyBind1.aspx /resource:Test/mainsoft/NunitWebResources/InvalidPropertyBind2.aspx /resource:Test/mainsoft/NunitWebResources/InvalidPropertyBind3.aspx /resource:Test/mainsoft/NunitWebResources/InvalidPropertyBind4.aspx /resource:Test/mainsoft/NunitWebResources/ValidPropertyBind1.aspx /resource:Test/mainsoft/NunitWebResources/ValidPropertyBind2.aspx /resource:Test/mainsoft/NunitWebResources/ValidPropertyBind3.aspx /resource:Test/mainsoft/NunitWebResources/ValidPropertyBind4.aspx /resource:Test/mainsoft/NunitWebResources/ValidPropertyBind5.aspx /resource:Test/mainsoft/NunitWebResources/ReadWritePropertyControl.ascx /resource:Test/mainsoft/MainsoftWebTest/nunitweb_config.xml /resource:Test/mainsoft/NunitWebResources/TemplateControlParsingTest.aspx /resource:Test/mainsoft/NunitWebResources/ContentPlaceHolderInTemplate.aspx /resource:Test/mainsoft/NunitWebResources/ContentPlaceHolderInTemplate.master /resource:Test/mainsoft/NunitWebResources/MissingMasterFile.aspx /resource:Test/mainsoft/NunitWebResources/CustomSectionEmptyCollection.aspx /resource:Test/mainsoft/NunitWebResources/NoDoubleOnInitOnRemoveAdd.aspx /resource:Test/mainsoft/NunitWebResources/NoDoubleOnInitOnRemoveAdd.aspx.cs /resource:Test/mainsoft/NunitWebResources/LoginDisplayRememberMe.aspx /resource:Test/mainsoft/NunitWebResources/NoBindForMethodsWithBindInName.aspx /resource:Test/mainsoft/NunitWebResources/LinkInHeadWithEmbeddedExpression.aspx /resource:Test/mainsoft/NunitWebResources/ExpressionInListControl.aspx /resource:Test/mainsoft/NunitWebResources/ServerSideControlsInScriptBlock.aspx /resource:Test/mainsoft/NunitWebResources/ServerControlInClientSideComment.aspx /resource:Test/mainsoft/NunitWebResources/PreprocessorDirectivesInMarkup.aspx /resource:Test/mainsoft/NunitWebResources/UnquotedAngleBrackets.aspx /resource:Test/mainsoft/NunitWebResources/FullTagsInText.aspx /resource:Test/mainsoft/NunitWebResources/TagsExpressionsAndCommentsInText.aspx /resource:Test/mainsoft/NunitWebResources/NewlineInCodeExpression.aspx /resource:Test/mainsoft/NunitWebResources/DuplicateControlsInClientComment.aspx /resource:Test/mainsoft/NunitWebResources/TagsNestedInClientTag.aspx /resource:Test/mainsoft/NunitWebResources/ConditionalClientComments.aspx /resource:Test/mainsoft/NunitWebResources/OneLetterIdentifierInCodeRender.aspx /resource:Test/mainsoft/NunitWebResources/GlobalResourcesLocalization.aspx /resource:Test/mainsoft/NunitWebResources/TableSections_Bug551666.aspx /resource:Test/mainsoft/NunitWebResources/TableSections_Bug551666.aspx.cs /resource:Test/mainsoft/NunitWebResources/NestedParserFileText.aspx /resource:Test/mainsoft/NunitWebResources/StateFormatter_CorrectConverter.aspx /resource:Test/mainsoft/NunitWebResources/StateFormatter_CollectionConverter.aspx /resource:Test/mainsoft/NunitWebResources/StateFormatter_CollectionConverter.aspx.cs /resource:Test/mainsoft/NunitWebResources/ChangePasswordContainer_FindControl.aspx /resource:Test/mainsoft/NunitWebResources/TagWithExpressionWithinAttribute.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxList_Bug377703_1.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxList_Bug377703_2.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxList_Bug578770.aspx /resource:Test/mainsoft/NunitWebResources/EnumConverter_Bug578586.aspx /resource:Test/mainsoft/NunitWebResources/ButtonColor_Bug325489.aspx /resource:Test/mainsoft/NunitWebResources/SqlDataSource_OnInit_Bug572781.aspx /resource:Test/mainsoft/NunitWebResources/FormViewPagerVisibility.aspx /resource:Test/mainsoft/NunitWebResources/OverridenControlsPropertyAndPostBack_Bug594238.aspx /resource:Test/mainsoft/NunitWebResources/GlobalizationEncodingName.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_0.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_1.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_2.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_5.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_6.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_7.aspx /resource:Test/mainsoft/NunitWebResources/GridView_Bug595567.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxList_Bug600415.aspx /resource:Test/mainsoft/NunitWebResources/BoundField_Bug646505.aspx /resource:Test/mainsoft/NunitWebResources/BoundField_Bug646505.aspx.cs /resource:Test/mainsoft/NunitWebResources/HtmlTitleCodeRender_Bug662918.aspx /resource:Test/mainsoft/NunitWebResources/App_Code/EnumConverterControl.cs,App_Code/EnumConverterControl.cs /resource:Test/mainsoft/NunitWebResources/App_Code/MyContainer.cs,App_Code/MyContainer.cs /resource:Test/mainsoft/NunitWebResources/App_Code/CustomCheckBoxColumn.cs,App_Code/CustomCheckBoxColumn.cs /resource:Test/mainsoft/NunitWebResources/App_GlobalResources/Common.resx,App_GlobalResources/Common.resx /resource:Test/mainsoft/NunitWebResources/App_GlobalResources/Common.fr-FR.resx,App_GlobalResources/Common.fr-FR.resx /resource:Test/mainsoft/NunitWebResources/App_GlobalResources/Resource1.resx,App_GlobalResources/Resource1.resx</flags>
       <output>System.Web_test_net_4_5.dll</output>
       <built_sources>System.Web/UplevelHelper.cs</built_sources>
       <library_output>System.Web_test_net_4_5.dll</library_output>
     <project dir="class/Mono.Web" library="Mono.Web-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig -r:mscorlib.dll -r:System.dll -r:System.Xml.dll -r:System.Web.dll -r:System.Configuration.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig -r:mscorlib.dll -r:System.dll -r:System.Xml.dll -r:System.Web.dll -r:System.Configuration.dll</flags>
       <output>Mono.Web.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/Mono.Web.dll</library_output>
     <project dir="class/System.Web.Services" library="System.Web.Services-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig -nowarn:649 -nowarn:169 -r:mscorlib.dll -r:System.dll -r:System.EnterpriseServices.dll -r:System.Xml.dll -r:System.Web.dll -r:System.Configuration.dll -resource:System.Web.Services.Description/wsdl-1.1.xsd,wsdl-1.1.xsd -resource:System.Web.Services.Description/wsdl-1.1-soap.xsd,wsdl-1.1-soap.xsd -resource:System.Web.Services.Description/web-reference.xsd,web-reference.xsd</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig -nowarn:649 -nowarn:169 -r:mscorlib.dll -r:System.dll -r:System.EnterpriseServices.dll -r:System.Xml.dll -r:System.Web.dll -r:System.Configuration.dll -resource:System.Web.Services.Description/wsdl-1.1.xsd,wsdl-1.1.xsd -resource:System.Web.Services.Description/wsdl-1.1-soap.xsd,wsdl-1.1-soap.xsd -resource:System.Web.Services.Description/web-reference.xsd,web-reference.xsd</flags>
       <output>System.Web.Services.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/System.Web.Services.dll</library_output>
     <project dir="class/System.Web.Services" library="System.Web.Services-tests-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -r:./../../class/lib/net_4_5/System.Web.Services.dll -nowarn:649 -nowarn:169 -r:mscorlib.dll -r:System.dll -r:System.EnterpriseServices.dll -r:System.Xml.dll -r:System.Web.dll -r:System.Configuration.dll -resource:System.Web.Services.Description/wsdl-1.1.xsd,wsdl-1.1.xsd -resource:System.Web.Services.Description/wsdl-1.1-soap.xsd,wsdl-1.1-soap.xsd -resource:System.Web.Services.Description/web-reference.xsd,web-reference.xsd -nowarn:618</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_5/System.Web.Services.dll -nowarn:649 -nowarn:169 -r:mscorlib.dll -r:System.dll -r:System.EnterpriseServices.dll -r:System.Xml.dll -r:System.Web.dll -r:System.Configuration.dll -resource:System.Web.Services.Description/wsdl-1.1.xsd,wsdl-1.1.xsd -resource:System.Web.Services.Description/wsdl-1.1-soap.xsd,wsdl-1.1-soap.xsd -resource:System.Web.Services.Description/web-reference.xsd,web-reference.xsd -nowarn:618</flags>
       <output>System.Web.Services_test_net_4_5.dll</output>
       <built_sources></built_sources>
       <library_output>System.Web.Services_test_net_4_5.dll</library_output>
     <project dir="class/System.Web" library="System.Web-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig -unsafe -nowarn:612,618 -r:mscorlib.dll -r:System.dll -r:System.Drawing.dll -r:System.Data.dll -r:System.Xml.dll -r:System.EnterpriseServices.dll -d:INSIDE_SYSTEM_WEB -nowarn:618 -r:System.Configuration.dll -r:Mono.Data.Sqlite.dll -r:System.Web.ApplicationServices.dll /resource:resources/TranslationResources.resources /resource:resources/WebUIValidation.js /resource:resources/folder.gif /resource:resources/file.gif /resource:resources/computer.gif /resource:resources/arrow_minus.gif /resource:resources/arrow_noexpand.gif /resource:resources/arrow_plus.gif /resource:resources/arrow_up.gif /resource:resources/arrow_down.gif /resource:resources/box_full.gif /resource:resources/box_empty.gif /resource:resources/box_minus.gif /resource:resources/box_noexpand.gif /resource:resources/box_plus.gif /resource:resources/contact.gif /resource:resources/dot_empty.gif /resource:resources/dot_full.gif /resource:resources/dots.gif /resource:resources/inbox.gif /resource:resources/star_empty.gif /resource:resources/star_full.gif /resource:resources/warning.gif /resource:resources/TreeView_noexpand.gif /resource:resources/TreeView_dash.gif /resource:resources/TreeView_dashminus.gif /resource:resources/TreeView_dashplus.gif /resource:resources/TreeView_i.gif /resource:resources/TreeView_l.gif /resource:resources/TreeView_lminus.gif /resource:resources/TreeView_lplus.gif /resource:resources/TreeView_minus.gif /resource:resources/TreeView_plus.gif /resource:resources/TreeView_r.gif /resource:resources/TreeView_rminus.gif /resource:resources/TreeView_rplus.gif /resource:resources/TreeView_t.gif /resource:resources/TreeView_tminus.gif /resource:resources/TreeView_tplus.gif /resource:resources/transparent.gif /resource:resources/webform.js /resource:resources/WebUIValidation_2.0.js /resource:resources/ErrorTemplateCommon_Top.html /resource:resources/DefaultErrorTemplate_CustomErrorDefault.html /resource:resources/ErrorTemplateCommon_Bottom.html /resource:resources/DefaultErrorTemplate_StandardPage.html /resource:resources/HtmlizedExceptionPage_Top.html /resource:resources/HtmlizedExceptionPage_FileLongSource.html /resource:resources/HtmlizedExceptionPage_FileShortSource.html /resource:resources/HtmlizedExceptionPage_CompilerOutput.html /resource:System.Web.UI.WebControls/GridView.js /resource:System.Web.UI.WebControls/DetailsView.js /resource:System.Web.UI.WebControls/TreeView.js /resource:System.Web.UI.WebControls/Menu.js /resource:System.Web.UI.WebControls/MenuModern.js -define:WEBSERVICES_DEP -r:System.Web.Services.dll -define:MONOWEB_DEP -r:Mono.Web.dll -define:SYSTEMCORE_DEP -r:System.Core.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig -unsafe -nowarn:612,618 -r:mscorlib.dll -r:System.dll -r:System.Drawing.dll -r:System.Data.dll -r:System.Xml.dll -r:System.EnterpriseServices.dll -d:INSIDE_SYSTEM_WEB -nowarn:618 -r:System.Configuration.dll -r:Mono.Data.Sqlite.dll -r:System.Web.ApplicationServices.dll /resource:resources/TranslationResources.resources /resource:resources/WebUIValidation.js /resource:resources/folder.gif /resource:resources/file.gif /resource:resources/computer.gif /resource:resources/arrow_minus.gif /resource:resources/arrow_noexpand.gif /resource:resources/arrow_plus.gif /resource:resources/arrow_up.gif /resource:resources/arrow_down.gif /resource:resources/box_full.gif /resource:resources/box_empty.gif /resource:resources/box_minus.gif /resource:resources/box_noexpand.gif /resource:resources/box_plus.gif /resource:resources/contact.gif /resource:resources/dot_empty.gif /resource:resources/dot_full.gif /resource:resources/dots.gif /resource:resources/inbox.gif /resource:resources/star_empty.gif /resource:resources/star_full.gif /resource:resources/warning.gif /resource:resources/TreeView_noexpand.gif /resource:resources/TreeView_dash.gif /resource:resources/TreeView_dashminus.gif /resource:resources/TreeView_dashplus.gif /resource:resources/TreeView_i.gif /resource:resources/TreeView_l.gif /resource:resources/TreeView_lminus.gif /resource:resources/TreeView_lplus.gif /resource:resources/TreeView_minus.gif /resource:resources/TreeView_plus.gif /resource:resources/TreeView_r.gif /resource:resources/TreeView_rminus.gif /resource:resources/TreeView_rplus.gif /resource:resources/TreeView_t.gif /resource:resources/TreeView_tminus.gif /resource:resources/TreeView_tplus.gif /resource:resources/transparent.gif /resource:resources/webform.js /resource:resources/WebUIValidation_2.0.js /resource:resources/ErrorTemplateCommon_Top.html /resource:resources/DefaultErrorTemplate_CustomErrorDefault.html /resource:resources/ErrorTemplateCommon_Bottom.html /resource:resources/DefaultErrorTemplate_StandardPage.html /resource:resources/HtmlizedExceptionPage_Top.html /resource:resources/HtmlizedExceptionPage_FileLongSource.html /resource:resources/HtmlizedExceptionPage_FileShortSource.html /resource:resources/HtmlizedExceptionPage_CompilerOutput.html /resource:System.Web.UI.WebControls/GridView.js /resource:System.Web.UI.WebControls/DetailsView.js /resource:System.Web.UI.WebControls/TreeView.js /resource:System.Web.UI.WebControls/Menu.js /resource:System.Web.UI.WebControls/MenuModern.js -define:WEBSERVICES_DEP -r:System.Web.Services.dll -define:MONOWEB_DEP -r:Mono.Web.dll -define:SYSTEMCORE_DEP -r:System.Core.dll</flags>
       <output>System.Web.dll</output>
       <built_sources>System.Web/UplevelHelper.cs</built_sources>
       <library_output>./../../class/lib/net_4_5/tmp/System.Web.dll</library_output>
     <project dir="class/System.Web" library="System.Web-tests-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -r:./../../class/lib/net_4_5/System.Web.dll -unsafe -nowarn:612,618 -r:mscorlib.dll -r:System.dll -r:System.Drawing.dll -r:System.Data.dll -r:System.Xml.dll -r:System.EnterpriseServices.dll -d:INSIDE_SYSTEM_WEB -nowarn:618 -r:System.Configuration.dll -r:Mono.Data.Sqlite.dll -r:System.Web.ApplicationServices.dll /resource:resources/TranslationResources.resources /resource:resources/WebUIValidation.js /resource:resources/folder.gif /resource:resources/file.gif /resource:resources/computer.gif /resource:resources/arrow_minus.gif /resource:resources/arrow_noexpand.gif /resource:resources/arrow_plus.gif /resource:resources/arrow_up.gif /resource:resources/arrow_down.gif /resource:resources/box_full.gif /resource:resources/box_empty.gif /resource:resources/box_minus.gif /resource:resources/box_noexpand.gif /resource:resources/box_plus.gif /resource:resources/contact.gif /resource:resources/dot_empty.gif /resource:resources/dot_full.gif /resource:resources/dots.gif /resource:resources/inbox.gif /resource:resources/star_empty.gif /resource:resources/star_full.gif /resource:resources/warning.gif /resource:resources/TreeView_noexpand.gif /resource:resources/TreeView_dash.gif /resource:resources/TreeView_dashminus.gif /resource:resources/TreeView_dashplus.gif /resource:resources/TreeView_i.gif /resource:resources/TreeView_l.gif /resource:resources/TreeView_lminus.gif /resource:resources/TreeView_lplus.gif /resource:resources/TreeView_minus.gif /resource:resources/TreeView_plus.gif /resource:resources/TreeView_r.gif /resource:resources/TreeView_rminus.gif /resource:resources/TreeView_rplus.gif /resource:resources/TreeView_t.gif /resource:resources/TreeView_tminus.gif /resource:resources/TreeView_tplus.gif /resource:resources/transparent.gif /resource:resources/webform.js /resource:resources/WebUIValidation_2.0.js /resource:resources/ErrorTemplateCommon_Top.html /resource:resources/DefaultErrorTemplate_CustomErrorDefault.html /resource:resources/ErrorTemplateCommon_Bottom.html /resource:resources/DefaultErrorTemplate_StandardPage.html /resource:resources/HtmlizedExceptionPage_Top.html /resource:resources/HtmlizedExceptionPage_FileLongSource.html /resource:resources/HtmlizedExceptionPage_FileShortSource.html /resource:resources/HtmlizedExceptionPage_CompilerOutput.html /resource:System.Web.UI.WebControls/GridView.js /resource:System.Web.UI.WebControls/DetailsView.js /resource:System.Web.UI.WebControls/TreeView.js /resource:System.Web.UI.WebControls/Menu.js /resource:System.Web.UI.WebControls/MenuModern.js -define:WEBSERVICES_DEP -r:System.Web.Services.dll -define:MONOWEB_DEP -r:Mono.Web.dll -define:SYSTEMCORE_DEP -r:System.Core.dll -doc:System.Web_test_net_4_5.xml -nowarn:219,169,1591 -r:SystemWebTestShim.dll /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/Global.asax /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/My.ashx /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/My.master /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/MyPage.aspx /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/MyPage.aspx.cs /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/MyPageWithMaster.aspx /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/Web.mono.config /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/Web.mono.config.4.0 /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/sub_map_01.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_01.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_02.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_03.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_04.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_05.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_06.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_07.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_08.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_09.sitemap /resource:Test/mainsoft/NunitWebResources/menuclass.aspx /resource:Test/mainsoft/NunitWebResources/FormView.aspx /resource:Test/mainsoft/NunitWebResources/PostBackMenuTest.aspx /resource:Test/mainsoft/NunitWebResources/PageWithStyleSheet.aspx /resource:Test/mainsoft/NunitWebResources/PageWithTheme.aspx /resource:Test/mainsoft/NunitWebResources/ResolveUrl.ascx /resource:Test/mainsoft/NunitWebResources/ResolveUrl.aspx /resource:Test/mainsoft/NunitWebResources/RunTimeSetTheme.aspx /resource:Test/mainsoft/NunitWebResources/ReadOnlyPropertyBind.aspx /resource:Test/mainsoft/NunitWebResources/ReadOnlyPropertyControl.ascx /resource:Test/mainsoft/NunitWebResources/Theme1.skin /resource:Test/mainsoft/NunitWebResources/Theme2.skin /resource:Test/mainsoft/NunitWebResources/UrlProperty.aspx /resource:Test/mainsoft/NunitWebResources/UrlProperty.ascx /resource:Test/mainsoft/NunitWebResources/UrlProperty.ascx.cs /resource:Test/mainsoft/NunitWebResources/Web.sitemap /resource:Test/mainsoft/NunitWebResources/WizardTest.skin /resource:Test/mainsoft/NunitWebResources/FooterTemplateTest.aspx /resource:Test/mainsoft/NunitWebResources/DataGrid.aspx /resource:Test/mainsoft/NunitWebResources/DetailsViewTemplates.aspx /resource:Test/mainsoft/NunitWebResources/DetailsViewTemplates_2.aspx /resource:Test/mainsoft/NunitWebResources/DetailsViewTemplates_3.aspx /resource:Test/mainsoft/NunitWebResources/DetailsViewDataActions.aspx /resource:Test/mainsoft/NunitWebResources/DetailsViewProperties1.aspx /resource:Test/mainsoft/NunitWebResources/Bluehills.jpg /resource:Test/mainsoft/NunitWebResources/FormViewTest1.aspx /resource:Test/mainsoft/NunitWebResources/FormViewTest1_2.aspx /resource:Test/mainsoft/NunitWebResources/FormViewTest1_3.aspx /resource:Test/mainsoft/NunitWebResources/FormViewTest1_4.aspx /resource:Test/mainsoft/NunitWebResources/FormViewInsertEditDelete.aspx /resource:Test/mainsoft/NunitWebResources/GridViewUpdate.aspx /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest.xml /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest.xsl /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest1.aspx /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest2.aspx /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest3.aspx /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest4.aspx /resource:Test/mainsoft/NunitWebResources/LoginViewTest1.aspx /resource:Test/mainsoft/NunitWebResources/WebControl.config /resource:Test/mainsoft/NunitWebResources/WebLogin.config /resource:Test/mainsoft/NunitWebResources/CallbackTest1.aspx /resource:Test/mainsoft/NunitWebResources/CallbackTest2.aspx /resource:Test/mainsoft/NunitWebResources/EventValidationTest2.aspx /resource:Test/mainsoft/NunitWebResources/EventValidationTest1.aspx /resource:Test/mainsoft/NunitWebResources/ClientScript.js /resource:Test/mainsoft/NunitWebResources/EvalTest.aspx /resource:Test/mainsoft/NunitWebResources/TemplateUserControl.ascx /resource:Test/mainsoft/NunitWebResources/WebMapping.config /resource:Test/mainsoft/NunitWebResources/Mapping.aspx /resource:Test/mainsoft/NunitWebResources/Mapping1.aspx /resource:Test/mainsoft/NunitWebResources/CrossPagePosting1.aspx /resource:Test/mainsoft/NunitWebResources/CrossPagePosting2.aspx /resource:Test/mainsoft/NunitWebResources/MyDerived.master /resource:Test/mainsoft/NunitWebResources/MyPageWithDerivedMaster.aspx /resource:Test/mainsoft/NunitWebResources/MasterTypeTest1.aspx /resource:Test/mainsoft/NunitWebResources/MasterTypeTest2.aspx /resource:Test/mainsoft/NunitWebResources/PageLifecycleTest.aspx /resource:Test/mainsoft/NunitWebResources/PageValidationTest.aspx /resource:Test/mainsoft/NunitWebResources/AsyncPage.aspx /resource:Test/mainsoft/NunitWebResources/PageCultureTest.aspx /resource:Test/mainsoft/NunitWebResources/adapters.browser /resource:Test/mainsoft/NunitWebResources/NoEventValidation.aspx /resource:Test/mainsoft/NunitWebResources/ListControlPage.aspx /resource:Test/mainsoft/NunitWebResources/TextBoxTestlPage.aspx /resource:Test/mainsoft/NunitWebResources/ClearErrorOnError.aspx /resource:Test/mainsoft/NunitWebResources/RedirectOnError.aspx /resource:Test/mainsoft/NunitWebResources/TestCapability.browser /resource:Test/mainsoft/NunitWebResources/PageWithAdapter.aspx /resource:Test/mainsoft/NunitWebResources/InvalidPropertyBind1.aspx /resource:Test/mainsoft/NunitWebResources/InvalidPropertyBind2.aspx /resource:Test/mainsoft/NunitWebResources/InvalidPropertyBind3.aspx /resource:Test/mainsoft/NunitWebResources/InvalidPropertyBind4.aspx /resource:Test/mainsoft/NunitWebResources/ValidPropertyBind1.aspx /resource:Test/mainsoft/NunitWebResources/ValidPropertyBind2.aspx /resource:Test/mainsoft/NunitWebResources/ValidPropertyBind3.aspx /resource:Test/mainsoft/NunitWebResources/ValidPropertyBind4.aspx /resource:Test/mainsoft/NunitWebResources/ValidPropertyBind5.aspx /resource:Test/mainsoft/NunitWebResources/ReadWritePropertyControl.ascx /resource:Test/mainsoft/MainsoftWebTest/nunitweb_config.xml /resource:Test/mainsoft/NunitWebResources/TemplateControlParsingTest.aspx /resource:Test/mainsoft/NunitWebResources/ContentPlaceHolderInTemplate.aspx /resource:Test/mainsoft/NunitWebResources/ContentPlaceHolderInTemplate.master /resource:Test/mainsoft/NunitWebResources/MissingMasterFile.aspx /resource:Test/mainsoft/NunitWebResources/CustomSectionEmptyCollection.aspx /resource:Test/mainsoft/NunitWebResources/NoDoubleOnInitOnRemoveAdd.aspx /resource:Test/mainsoft/NunitWebResources/NoDoubleOnInitOnRemoveAdd.aspx.cs /resource:Test/mainsoft/NunitWebResources/LoginDisplayRememberMe.aspx /resource:Test/mainsoft/NunitWebResources/NoBindForMethodsWithBindInName.aspx /resource:Test/mainsoft/NunitWebResources/LinkInHeadWithEmbeddedExpression.aspx /resource:Test/mainsoft/NunitWebResources/ExpressionInListControl.aspx /resource:Test/mainsoft/NunitWebResources/ServerSideControlsInScriptBlock.aspx /resource:Test/mainsoft/NunitWebResources/ServerControlInClientSideComment.aspx /resource:Test/mainsoft/NunitWebResources/PreprocessorDirectivesInMarkup.aspx /resource:Test/mainsoft/NunitWebResources/UnquotedAngleBrackets.aspx /resource:Test/mainsoft/NunitWebResources/FullTagsInText.aspx /resource:Test/mainsoft/NunitWebResources/TagsExpressionsAndCommentsInText.aspx /resource:Test/mainsoft/NunitWebResources/NewlineInCodeExpression.aspx /resource:Test/mainsoft/NunitWebResources/DuplicateControlsInClientComment.aspx /resource:Test/mainsoft/NunitWebResources/TagsNestedInClientTag.aspx /resource:Test/mainsoft/NunitWebResources/ConditionalClientComments.aspx /resource:Test/mainsoft/NunitWebResources/OneLetterIdentifierInCodeRender.aspx /resource:Test/mainsoft/NunitWebResources/GlobalResourcesLocalization.aspx /resource:Test/mainsoft/NunitWebResources/TableSections_Bug551666.aspx /resource:Test/mainsoft/NunitWebResources/TableSections_Bug551666.aspx.cs /resource:Test/mainsoft/NunitWebResources/NestedParserFileText.aspx /resource:Test/mainsoft/NunitWebResources/StateFormatter_CorrectConverter.aspx /resource:Test/mainsoft/NunitWebResources/StateFormatter_CollectionConverter.aspx /resource:Test/mainsoft/NunitWebResources/StateFormatter_CollectionConverter.aspx.cs /resource:Test/mainsoft/NunitWebResources/ChangePasswordContainer_FindControl.aspx /resource:Test/mainsoft/NunitWebResources/TagWithExpressionWithinAttribute.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxList_Bug377703_1.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxList_Bug377703_2.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxList_Bug578770.aspx /resource:Test/mainsoft/NunitWebResources/EnumConverter_Bug578586.aspx /resource:Test/mainsoft/NunitWebResources/ButtonColor_Bug325489.aspx /resource:Test/mainsoft/NunitWebResources/SqlDataSource_OnInit_Bug572781.aspx /resource:Test/mainsoft/NunitWebResources/FormViewPagerVisibility.aspx /resource:Test/mainsoft/NunitWebResources/OverridenControlsPropertyAndPostBack_Bug594238.aspx /resource:Test/mainsoft/NunitWebResources/GlobalizationEncodingName.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_0.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_1.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_2.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_5.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_6.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_7.aspx /resource:Test/mainsoft/NunitWebResources/GridView_Bug595567.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxList_Bug600415.aspx /resource:Test/mainsoft/NunitWebResources/BoundField_Bug646505.aspx /resource:Test/mainsoft/NunitWebResources/BoundField_Bug646505.aspx.cs /resource:Test/mainsoft/NunitWebResources/HtmlTitleCodeRender_Bug662918.aspx /resource:Test/mainsoft/NunitWebResources/App_Code/EnumConverterControl.cs,App_Code/EnumConverterControl.cs /resource:Test/mainsoft/NunitWebResources/App_Code/MyContainer.cs,App_Code/MyContainer.cs /resource:Test/mainsoft/NunitWebResources/App_Code/CustomCheckBoxColumn.cs,App_Code/CustomCheckBoxColumn.cs /resource:Test/mainsoft/NunitWebResources/App_GlobalResources/Common.resx,App_GlobalResources/Common.resx /resource:Test/mainsoft/NunitWebResources/App_GlobalResources/Common.fr-FR.resx,App_GlobalResources/Common.fr-FR.resx /resource:Test/mainsoft/NunitWebResources/App_GlobalResources/Resource1.resx,App_GlobalResources/Resource1.resx</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_5/System.Web.dll -unsafe -nowarn:612,618 -r:mscorlib.dll -r:System.dll -r:System.Drawing.dll -r:System.Data.dll -r:System.Xml.dll -r:System.EnterpriseServices.dll -d:INSIDE_SYSTEM_WEB -nowarn:618 -r:System.Configuration.dll -r:Mono.Data.Sqlite.dll -r:System.Web.ApplicationServices.dll /resource:resources/TranslationResources.resources /resource:resources/WebUIValidation.js /resource:resources/folder.gif /resource:resources/file.gif /resource:resources/computer.gif /resource:resources/arrow_minus.gif /resource:resources/arrow_noexpand.gif /resource:resources/arrow_plus.gif /resource:resources/arrow_up.gif /resource:resources/arrow_down.gif /resource:resources/box_full.gif /resource:resources/box_empty.gif /resource:resources/box_minus.gif /resource:resources/box_noexpand.gif /resource:resources/box_plus.gif /resource:resources/contact.gif /resource:resources/dot_empty.gif /resource:resources/dot_full.gif /resource:resources/dots.gif /resource:resources/inbox.gif /resource:resources/star_empty.gif /resource:resources/star_full.gif /resource:resources/warning.gif /resource:resources/TreeView_noexpand.gif /resource:resources/TreeView_dash.gif /resource:resources/TreeView_dashminus.gif /resource:resources/TreeView_dashplus.gif /resource:resources/TreeView_i.gif /resource:resources/TreeView_l.gif /resource:resources/TreeView_lminus.gif /resource:resources/TreeView_lplus.gif /resource:resources/TreeView_minus.gif /resource:resources/TreeView_plus.gif /resource:resources/TreeView_r.gif /resource:resources/TreeView_rminus.gif /resource:resources/TreeView_rplus.gif /resource:resources/TreeView_t.gif /resource:resources/TreeView_tminus.gif /resource:resources/TreeView_tplus.gif /resource:resources/transparent.gif /resource:resources/webform.js /resource:resources/WebUIValidation_2.0.js /resource:resources/ErrorTemplateCommon_Top.html /resource:resources/DefaultErrorTemplate_CustomErrorDefault.html /resource:resources/ErrorTemplateCommon_Bottom.html /resource:resources/DefaultErrorTemplate_StandardPage.html /resource:resources/HtmlizedExceptionPage_Top.html /resource:resources/HtmlizedExceptionPage_FileLongSource.html /resource:resources/HtmlizedExceptionPage_FileShortSource.html /resource:resources/HtmlizedExceptionPage_CompilerOutput.html /resource:System.Web.UI.WebControls/GridView.js /resource:System.Web.UI.WebControls/DetailsView.js /resource:System.Web.UI.WebControls/TreeView.js /resource:System.Web.UI.WebControls/Menu.js /resource:System.Web.UI.WebControls/MenuModern.js -define:WEBSERVICES_DEP -r:System.Web.Services.dll -define:MONOWEB_DEP -r:Mono.Web.dll -define:SYSTEMCORE_DEP -r:System.Core.dll -doc:System.Web_test_net_4_5.xml -nowarn:219,169,1591 -r:SystemWebTestShim.dll /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/Global.asax /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/My.ashx /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/My.master /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/MyPage.aspx /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/MyPage.aspx.cs /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/MyPageWithMaster.aspx /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/Web.mono.config /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/Web.mono.config.4.0 /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/sub_map_01.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_01.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_02.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_03.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_04.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_05.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_06.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_07.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_08.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_09.sitemap /resource:Test/mainsoft/NunitWebResources/menuclass.aspx /resource:Test/mainsoft/NunitWebResources/FormView.aspx /resource:Test/mainsoft/NunitWebResources/PostBackMenuTest.aspx /resource:Test/mainsoft/NunitWebResources/PageWithStyleSheet.aspx /resource:Test/mainsoft/NunitWebResources/PageWithTheme.aspx /resource:Test/mainsoft/NunitWebResources/ResolveUrl.ascx /resource:Test/mainsoft/NunitWebResources/ResolveUrl.aspx /resource:Test/mainsoft/NunitWebResources/RunTimeSetTheme.aspx /resource:Test/mainsoft/NunitWebResources/ReadOnlyPropertyBind.aspx /resource:Test/mainsoft/NunitWebResources/ReadOnlyPropertyControl.ascx /resource:Test/mainsoft/NunitWebResources/Theme1.skin /resource:Test/mainsoft/NunitWebResources/Theme2.skin /resource:Test/mainsoft/NunitWebResources/UrlProperty.aspx /resource:Test/mainsoft/NunitWebResources/UrlProperty.ascx /resource:Test/mainsoft/NunitWebResources/UrlProperty.ascx.cs /resource:Test/mainsoft/NunitWebResources/Web.sitemap /resource:Test/mainsoft/NunitWebResources/WizardTest.skin /resource:Test/mainsoft/NunitWebResources/FooterTemplateTest.aspx /resource:Test/mainsoft/NunitWebResources/DataGrid.aspx /resource:Test/mainsoft/NunitWebResources/DetailsViewTemplates.aspx /resource:Test/mainsoft/NunitWebResources/DetailsViewTemplates_2.aspx /resource:Test/mainsoft/NunitWebResources/DetailsViewTemplates_3.aspx /resource:Test/mainsoft/NunitWebResources/DetailsViewDataActions.aspx /resource:Test/mainsoft/NunitWebResources/DetailsViewProperties1.aspx /resource:Test/mainsoft/NunitWebResources/Bluehills.jpg /resource:Test/mainsoft/NunitWebResources/FormViewTest1.aspx /resource:Test/mainsoft/NunitWebResources/FormViewTest1_2.aspx /resource:Test/mainsoft/NunitWebResources/FormViewTest1_3.aspx /resource:Test/mainsoft/NunitWebResources/FormViewTest1_4.aspx /resource:Test/mainsoft/NunitWebResources/FormViewInsertEditDelete.aspx /resource:Test/mainsoft/NunitWebResources/GridViewUpdate.aspx /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest.xml /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest.xsl /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest1.aspx /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest2.aspx /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest3.aspx /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest4.aspx /resource:Test/mainsoft/NunitWebResources/LoginViewTest1.aspx /resource:Test/mainsoft/NunitWebResources/WebControl.config /resource:Test/mainsoft/NunitWebResources/WebLogin.config /resource:Test/mainsoft/NunitWebResources/CallbackTest1.aspx /resource:Test/mainsoft/NunitWebResources/CallbackTest2.aspx /resource:Test/mainsoft/NunitWebResources/EventValidationTest2.aspx /resource:Test/mainsoft/NunitWebResources/EventValidationTest1.aspx /resource:Test/mainsoft/NunitWebResources/ClientScript.js /resource:Test/mainsoft/NunitWebResources/EvalTest.aspx /resource:Test/mainsoft/NunitWebResources/TemplateUserControl.ascx /resource:Test/mainsoft/NunitWebResources/WebMapping.config /resource:Test/mainsoft/NunitWebResources/Mapping.aspx /resource:Test/mainsoft/NunitWebResources/Mapping1.aspx /resource:Test/mainsoft/NunitWebResources/CrossPagePosting1.aspx /resource:Test/mainsoft/NunitWebResources/CrossPagePosting2.aspx /resource:Test/mainsoft/NunitWebResources/MyDerived.master /resource:Test/mainsoft/NunitWebResources/MyPageWithDerivedMaster.aspx /resource:Test/mainsoft/NunitWebResources/MasterTypeTest1.aspx /resource:Test/mainsoft/NunitWebResources/MasterTypeTest2.aspx /resource:Test/mainsoft/NunitWebResources/PageLifecycleTest.aspx /resource:Test/mainsoft/NunitWebResources/PageValidationTest.aspx /resource:Test/mainsoft/NunitWebResources/AsyncPage.aspx /resource:Test/mainsoft/NunitWebResources/PageCultureTest.aspx /resource:Test/mainsoft/NunitWebResources/adapters.browser /resource:Test/mainsoft/NunitWebResources/NoEventValidation.aspx /resource:Test/mainsoft/NunitWebResources/ListControlPage.aspx /resource:Test/mainsoft/NunitWebResources/TextBoxTestlPage.aspx /resource:Test/mainsoft/NunitWebResources/ClearErrorOnError.aspx /resource:Test/mainsoft/NunitWebResources/RedirectOnError.aspx /resource:Test/mainsoft/NunitWebResources/TestCapability.browser /resource:Test/mainsoft/NunitWebResources/PageWithAdapter.aspx /resource:Test/mainsoft/NunitWebResources/InvalidPropertyBind1.aspx /resource:Test/mainsoft/NunitWebResources/InvalidPropertyBind2.aspx /resource:Test/mainsoft/NunitWebResources/InvalidPropertyBind3.aspx /resource:Test/mainsoft/NunitWebResources/InvalidPropertyBind4.aspx /resource:Test/mainsoft/NunitWebResources/ValidPropertyBind1.aspx /resource:Test/mainsoft/NunitWebResources/ValidPropertyBind2.aspx /resource:Test/mainsoft/NunitWebResources/ValidPropertyBind3.aspx /resource:Test/mainsoft/NunitWebResources/ValidPropertyBind4.aspx /resource:Test/mainsoft/NunitWebResources/ValidPropertyBind5.aspx /resource:Test/mainsoft/NunitWebResources/ReadWritePropertyControl.ascx /resource:Test/mainsoft/MainsoftWebTest/nunitweb_config.xml /resource:Test/mainsoft/NunitWebResources/TemplateControlParsingTest.aspx /resource:Test/mainsoft/NunitWebResources/ContentPlaceHolderInTemplate.aspx /resource:Test/mainsoft/NunitWebResources/ContentPlaceHolderInTemplate.master /resource:Test/mainsoft/NunitWebResources/MissingMasterFile.aspx /resource:Test/mainsoft/NunitWebResources/CustomSectionEmptyCollection.aspx /resource:Test/mainsoft/NunitWebResources/NoDoubleOnInitOnRemoveAdd.aspx /resource:Test/mainsoft/NunitWebResources/NoDoubleOnInitOnRemoveAdd.aspx.cs /resource:Test/mainsoft/NunitWebResources/LoginDisplayRememberMe.aspx /resource:Test/mainsoft/NunitWebResources/NoBindForMethodsWithBindInName.aspx /resource:Test/mainsoft/NunitWebResources/LinkInHeadWithEmbeddedExpression.aspx /resource:Test/mainsoft/NunitWebResources/ExpressionInListControl.aspx /resource:Test/mainsoft/NunitWebResources/ServerSideControlsInScriptBlock.aspx /resource:Test/mainsoft/NunitWebResources/ServerControlInClientSideComment.aspx /resource:Test/mainsoft/NunitWebResources/PreprocessorDirectivesInMarkup.aspx /resource:Test/mainsoft/NunitWebResources/UnquotedAngleBrackets.aspx /resource:Test/mainsoft/NunitWebResources/FullTagsInText.aspx /resource:Test/mainsoft/NunitWebResources/TagsExpressionsAndCommentsInText.aspx /resource:Test/mainsoft/NunitWebResources/NewlineInCodeExpression.aspx /resource:Test/mainsoft/NunitWebResources/DuplicateControlsInClientComment.aspx /resource:Test/mainsoft/NunitWebResources/TagsNestedInClientTag.aspx /resource:Test/mainsoft/NunitWebResources/ConditionalClientComments.aspx /resource:Test/mainsoft/NunitWebResources/OneLetterIdentifierInCodeRender.aspx /resource:Test/mainsoft/NunitWebResources/GlobalResourcesLocalization.aspx /resource:Test/mainsoft/NunitWebResources/TableSections_Bug551666.aspx /resource:Test/mainsoft/NunitWebResources/TableSections_Bug551666.aspx.cs /resource:Test/mainsoft/NunitWebResources/NestedParserFileText.aspx /resource:Test/mainsoft/NunitWebResources/StateFormatter_CorrectConverter.aspx /resource:Test/mainsoft/NunitWebResources/StateFormatter_CollectionConverter.aspx /resource:Test/mainsoft/NunitWebResources/StateFormatter_CollectionConverter.aspx.cs /resource:Test/mainsoft/NunitWebResources/ChangePasswordContainer_FindControl.aspx /resource:Test/mainsoft/NunitWebResources/TagWithExpressionWithinAttribute.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxList_Bug377703_1.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxList_Bug377703_2.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxList_Bug578770.aspx /resource:Test/mainsoft/NunitWebResources/EnumConverter_Bug578586.aspx /resource:Test/mainsoft/NunitWebResources/ButtonColor_Bug325489.aspx /resource:Test/mainsoft/NunitWebResources/SqlDataSource_OnInit_Bug572781.aspx /resource:Test/mainsoft/NunitWebResources/FormViewPagerVisibility.aspx /resource:Test/mainsoft/NunitWebResources/OverridenControlsPropertyAndPostBack_Bug594238.aspx /resource:Test/mainsoft/NunitWebResources/GlobalizationEncodingName.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_0.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_1.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_2.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_5.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_6.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_7.aspx /resource:Test/mainsoft/NunitWebResources/GridView_Bug595567.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxList_Bug600415.aspx /resource:Test/mainsoft/NunitWebResources/BoundField_Bug646505.aspx /resource:Test/mainsoft/NunitWebResources/BoundField_Bug646505.aspx.cs /resource:Test/mainsoft/NunitWebResources/HtmlTitleCodeRender_Bug662918.aspx /resource:Test/mainsoft/NunitWebResources/App_Code/EnumConverterControl.cs,App_Code/EnumConverterControl.cs /resource:Test/mainsoft/NunitWebResources/App_Code/MyContainer.cs,App_Code/MyContainer.cs /resource:Test/mainsoft/NunitWebResources/App_Code/CustomCheckBoxColumn.cs,App_Code/CustomCheckBoxColumn.cs /resource:Test/mainsoft/NunitWebResources/App_GlobalResources/Common.resx,App_GlobalResources/Common.resx /resource:Test/mainsoft/NunitWebResources/App_GlobalResources/Common.fr-FR.resx,App_GlobalResources/Common.fr-FR.resx /resource:Test/mainsoft/NunitWebResources/App_GlobalResources/Resource1.resx,App_GlobalResources/Resource1.resx</flags>
       <output>System.Web_test_net_4_5.dll</output>
       <built_sources>System.Web/UplevelHelper.cs</built_sources>
       <library_output>System.Web_test_net_4_5.dll</library_output>
     <project dir="class/System.Runtime.Serialization.Formatters.Soap" library="System.Runtime.Serialization.Formatters.Soap-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig /r:mscorlib.dll /r:System.Xml.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig /r:mscorlib.dll /r:System.Xml.dll</flags>
       <output>System.Runtime.Serialization.Formatters.Soap.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/System.Runtime.Serialization.Formatters.Soap.dll</library_output>
     <project dir="class/System.Runtime.Serialization.Formatters.Soap" library="System.Runtime.Serialization.Formatters.Soap-tests-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -r:./../../class/lib/net_4_5/System.Runtime.Serialization.Formatters.Soap.dll /r:mscorlib.dll /r:System.Xml.dll -nowarn:0618 -nowarn:219 -nowarn:169</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_5/System.Runtime.Serialization.Formatters.Soap.dll /r:mscorlib.dll /r:System.Xml.dll -nowarn:0618 -nowarn:219 -nowarn:169</flags>
       <output>System.Runtime.Serialization.Formatters.Soap_test_net_4_5.dll</output>
       <built_sources></built_sources>
       <library_output>System.Runtime.Serialization.Formatters.Soap_test_net_4_5.dll</library_output>
     <project dir="class/System.Runtime.Remoting" library="System.Runtime.Remoting-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig /r:mscorlib.dll /r:System.dll /r:System.Web.dll /r:System.Xml.dll /r:System.Runtime.Serialization.Formatters.Soap.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig /r:mscorlib.dll /r:System.dll /r:System.Web.dll /r:System.Xml.dll /r:System.Runtime.Serialization.Formatters.Soap.dll</flags>
       <output>System.Runtime.Remoting.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/System.Runtime.Remoting.dll</library_output>
     <project dir="class/System.Runtime.Remoting" library="System.Runtime.Remoting-tests-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -r:./../../class/lib/net_4_5/System.Runtime.Remoting.dll /r:mscorlib.dll /r:System.dll /r:System.Web.dll /r:System.Xml.dll /r:System.Runtime.Serialization.Formatters.Soap.dll -nowarn:618 /r:System.Runtime.Remoting.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_5/System.Runtime.Remoting.dll /r:mscorlib.dll /r:System.dll /r:System.Web.dll /r:System.Xml.dll /r:System.Runtime.Serialization.Formatters.Soap.dll -nowarn:618 /r:System.Runtime.Remoting.dll</flags>
       <output>System.Runtime.Remoting_test_net_4_5.dll</output>
       <built_sources></built_sources>
       <library_output>System.Runtime.Remoting_test_net_4_5.dll</library_output>
     <project dir="class/System.Configuration.Install" library="System.Configuration.Install-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig /r:mscorlib.dll /r:System.dll /r:System.Xml.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig /r:mscorlib.dll /r:System.dll /r:System.Xml.dll</flags>
       <output>System.Configuration.Install.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/System.Configuration.Install.dll</library_output>
     <project dir="class/System.Management" library="System.Management-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig /r:mscorlib.dll /r:System.dll /r:System.Configuration.Install.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig /r:mscorlib.dll /r:System.dll /r:System.Configuration.Install.dll</flags>
       <output>System.Management.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/System.Management.dll</library_output>
     <project dir="class/System.Data.OracleClient" library="System.Data.OracleClient-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig /r:mscorlib.dll /r:System.dll /r:System.Xml.dll /r:System.Data.dll /r:System.EnterpriseServices.dll /r:System.Drawing.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig /r:mscorlib.dll /r:System.dll /r:System.Xml.dll /r:System.Data.dll /r:System.EnterpriseServices.dll /r:System.Drawing.dll</flags>
       <output>System.Data.OracleClient.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/System.Data.OracleClient.dll</library_output>
     <project dir="class/System.Data.OracleClient" library="System.Data.OracleClient-tests-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -r:./../../class/lib/net_4_5/System.Data.OracleClient.dll /r:mscorlib.dll /r:System.dll /r:System.Xml.dll /r:System.Data.dll /r:System.EnterpriseServices.dll /r:System.Drawing.dll /nowarn:618</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_5/System.Data.OracleClient.dll /r:mscorlib.dll /r:System.dll /r:System.Xml.dll /r:System.Data.dll /r:System.EnterpriseServices.dll /r:System.Drawing.dll /nowarn:618</flags>
       <output>System.Data.OracleClient_test_net_4_5.dll</output>
       <built_sources></built_sources>
       <library_output>System.Data.OracleClient_test_net_4_5.dll</library_output>
     <project dir="class/Microsoft.VisualC" library="Microsoft.VisualC-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig /r:mscorlib.dll /r:System.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig /r:mscorlib.dll /r:System.dll</flags>
       <output>Microsoft.VisualC.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/Microsoft.VisualC.dll</library_output>
     <project dir="class/Cscompmgd" library="Cscompmgd-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig /r:mscorlib.dll /r:System.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig /r:mscorlib.dll /r:System.dll</flags>
       <output>cscompmgd.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/cscompmgd.dll</library_output>
     <project dir="class/Cscompmgd" library="Cscompmgd-tests-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -r:./../../class/lib/net_4_5/cscompmgd.dll /r:mscorlib.dll /r:System.dll -nowarn:0618 -nowarn:219 -nowarn:169</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_5/cscompmgd.dll /r:mscorlib.dll /r:System.dll -nowarn:0618 -nowarn:219 -nowarn:169</flags>
       <output>Cscompmgd_test_net_4_5.dll</output>
       <built_sources></built_sources>
       <library_output>Cscompmgd_test_net_4_5.dll</library_output>
     <project dir="class/System.Design" library="System.Design-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig -r:mscorlib.dll -r:System.dll -r:System.Xml.dll -r:System.Web.dll -r:System.Windows.Forms.dll -r:System.Drawing.dll -r:Accessibility.dll -r:System.Data.dll -r:System.Configuration.dll -define:DRAWING_DESIGN_DEP -r:System.Drawing.Design.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig -r:mscorlib.dll -r:System.dll -r:System.Xml.dll -r:System.Web.dll -r:System.Windows.Forms.dll -r:System.Drawing.dll -r:Accessibility.dll -r:System.Data.dll -r:System.Configuration.dll -define:DRAWING_DESIGN_DEP -r:System.Drawing.Design.dll</flags>
       <output>System.Design.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/tmp/System.Design.dll</library_output>
     <project dir="class/System.Design" library="System.Design-tests-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -r:./../../class/lib/net_4_5/System.Design.dll /r:System.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_5/System.Design.dll /r:System.dll</flags>
       <output>System.Design_test_net_4_5.dll</output>
       <built_sources></built_sources>
       <library_output>System.Design_test_net_4_5.dll</library_output>
     <project dir="class/PEAPI" library="PEAPI-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig /r:mscorlib.dll /r:System.dll -nowarn:414,618</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig /r:mscorlib.dll /r:System.dll -nowarn:414,618</flags>
       <output>PEAPI.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/PEAPI.dll</library_output>
     <project dir="class/Npgsql" library="Npgsql-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig /r:mscorlib.dll /r:System.dll /r:System.Xml.dll /r:System.Data.dll /r:Mono.Security.dll -warn:1 @Npgsql.dll.resources</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig /r:mscorlib.dll /r:System.dll /r:System.Xml.dll /r:System.Data.dll /r:Mono.Security.dll -warn:1 @Npgsql.dll.resources</flags>
       <output>Npgsql.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/Npgsql.dll</library_output>
     <project dir="class/Npgsql" library="Npgsql-tests-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -r:./../../class/lib/net_4_5/Npgsql.dll /r:mscorlib.dll /r:System.dll /r:System.Xml.dll /r:System.Web.dll /r:System.Data.dll -nowarn:0618 -nowarn:219 -nowarn:169</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_5/Npgsql.dll /r:mscorlib.dll /r:System.dll /r:System.Xml.dll /r:System.Web.dll /r:System.Data.dll -nowarn:0618 -nowarn:219 -nowarn:169</flags>
       <output>Npgsql_test_net_4_5.dll</output>
       <built_sources></built_sources>
       <library_output>Npgsql_test_net_4_5.dll</library_output>
     <project dir="class/Commons.Xml.Relaxng" library="Commons.Xml.Relaxng-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig /r:mscorlib.dll /r:System.dll /r:System.Xml.dll /resource:resources/relaxng.rng,relaxng.rng</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig /r:mscorlib.dll /r:System.dll /r:System.Xml.dll /resource:resources/relaxng.rng,relaxng.rng</flags>
       <output>Commons.Xml.Relaxng.dll</output>
       <built_sources>Commons.Xml.Relaxng.Rnc/RncParser.cs</built_sources>
       <library_output>./../../class/lib/net_4_5/Commons.Xml.Relaxng.dll</library_output>
     <project dir="class/Commons.Xml.Relaxng" library="Commons.Xml.Relaxng-tests-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -r:./../../class/lib/net_4_5/Commons.Xml.Relaxng.dll /r:mscorlib.dll /r:System.dll /r:System.Xml.dll /resource:resources/relaxng.rng,relaxng.rng -nowarn:0618 -nowarn:219 -nowarn:169</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_5/Commons.Xml.Relaxng.dll /r:mscorlib.dll /r:System.dll /r:System.Xml.dll /resource:resources/relaxng.rng,relaxng.rng -nowarn:0618 -nowarn:219 -nowarn:169</flags>
       <output>Commons.Xml.Relaxng_test_net_4_5.dll</output>
       <built_sources>Commons.Xml.Relaxng.Rnc/RncParser.cs</built_sources>
       <library_output>Commons.Xml.Relaxng_test_net_4_5.dll</library_output>
     <project dir="class/Novell.Directory.Ldap" library="Novell.Directory.Ldap-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig -warn:1 -nowarn:612 -r:mscorlib.dll -r:System.dll -r:Mono.Security.dll /res:Novell.Directory.Ldap.Utilclass/ResultCodeMessages.resources</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig -warn:1 -nowarn:612 -r:mscorlib.dll -r:System.dll -r:Mono.Security.dll /res:Novell.Directory.Ldap.Utilclass/ResultCodeMessages.resources</flags>
       <output>Novell.Directory.Ldap.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/Novell.Directory.Ldap.dll</library_output>
     <project dir="class/Novell.Directory.Ldap" library="Novell.Directory.Ldap-tests-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -r:./../../class/lib/net_4_5/Novell.Directory.Ldap.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_5/Novell.Directory.Ldap.dll</flags>
       <output>Novell.Directory.Ldap_test_net_4_5.dll</output>
       <built_sources></built_sources>
       <library_output>Novell.Directory.Ldap_test_net_4_5.dll</library_output>
     <project dir="class/Mono.Security.Win32" library="Mono.Security.Win32-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig /unsafe</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig /unsafe</flags>
       <output>Mono.Security.Win32.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/Mono.Security.Win32.dll</library_output>
     <project dir="class/System.DirectoryServices" library="System.DirectoryServices-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig /r:mscorlib.dll /r:System.dll /r:Novell.Directory.Ldap.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig /r:mscorlib.dll /r:System.dll /r:Novell.Directory.Ldap.dll</flags>
       <output>System.DirectoryServices.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/System.DirectoryServices.dll</library_output>
     <project dir="class/System.DirectoryServices" library="System.DirectoryServices-tests-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -r:./../../class/lib/net_4_5/System.DirectoryServices.dll /r:mscorlib.dll /r:System.dll /r:Novell.Directory.Ldap.dll -nowarn:0618 -nowarn:219 -nowarn:169</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_5/System.DirectoryServices.dll /r:mscorlib.dll /r:System.dll /r:Novell.Directory.Ldap.dll -nowarn:0618 -nowarn:219 -nowarn:169</flags>
       <output>System.DirectoryServices_test_net_4_5.dll</output>
       <built_sources></built_sources>
       <library_output>System.DirectoryServices_test_net_4_5.dll</library_output>
     <project dir="class/RabbitMQ.Client/src/apigen" library="RabbitMQ.Client.Apigen-net_4_5">
       <boot></boot>
       <mcs>MONO_PATH=./../../../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 /r:System.dll /r:System.Xml.dll /main:RabbitMQ.Client.Apigen.Apigen -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig</flags>
+      <flags>/codepage:65001 /r:System.dll /r:System.Xml.dll /main:RabbitMQ.Client.Apigen.Apigen -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig</flags>
       <output>RabbitMQ.Client.Apigen.exe</output>
       <built_sources></built_sources>
       <library_output>./../../../../class/lib/net_4_5/RabbitMQ.Client.Apigen.exe</library_output>
     <project dir="class/RabbitMQ.Client/src/client" library="RabbitMQ.Client-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig -r:System.dll -r:System.Xml.dll -nowarn:618</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig -r:System.dll -r:System.Xml.dll -nowarn:618</flags>
       <output>RabbitMQ.Client.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../../class/lib/net_4_5/RabbitMQ.Client.dll</library_output>
     <project dir="class/Mono.Messaging" library="Mono.Messaging-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig /r:System.dll /r:System.Configuration</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig /r:System.dll /r:System.Configuration</flags>
       <output>Mono.Messaging.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/Mono.Messaging.dll</library_output>
     <project dir="class/Mono.Messaging" library="Mono.Messaging-tests-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -r:./../../class/lib/net_4_5/Mono.Messaging.dll /r:System.dll /r:System.Configuration -nowarn:0618 -nowarn:219 -nowarn:169 /r:System.Messaging.dll /r:nunit.mocks.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_5/Mono.Messaging.dll /r:System.dll /r:System.Configuration -nowarn:0618 -nowarn:219 -nowarn:169 /r:System.Messaging.dll /r:nunit.mocks.dll</flags>
       <output>Mono.Messaging_test_net_4_5.dll</output>
       <built_sources></built_sources>
       <library_output>Mono.Messaging_test_net_4_5.dll</library_output>
     <project dir="class/System.Messaging" library="System.Messaging-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig /resource:System.Messaging/MessageQueue.resx /r:System.dll /r:System.Configuration.Install.dll /r:System.Drawing.dll /r:System.Windows.Forms.dll /r:System.Xml /r:Mono.Messaging.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig /resource:System.Messaging/MessageQueue.resx /r:System.dll /r:System.Configuration.Install.dll /r:System.Drawing.dll /r:System.Windows.Forms.dll /r:System.Xml /r:Mono.Messaging.dll</flags>
       <output>System.Messaging.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/System.Messaging.dll</library_output>
     <project dir="class/System.Messaging" library="System.Messaging-tests-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -r:./../../class/lib/net_4_5/System.Messaging.dll /resource:System.Messaging/MessageQueue.resx /r:System.dll /r:System.Configuration.Install.dll /r:System.Drawing.dll /r:System.Windows.Forms.dll /r:System.Xml /r:Mono.Messaging.dll -nowarn:0618 -nowarn:219 -nowarn:169 /r:nunit.mocks.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_5/System.Messaging.dll /resource:System.Messaging/MessageQueue.resx /r:System.dll /r:System.Configuration.Install.dll /r:System.Drawing.dll /r:System.Windows.Forms.dll /r:System.Xml /r:Mono.Messaging.dll -nowarn:0618 -nowarn:219 -nowarn:169 /r:nunit.mocks.dll</flags>
       <output>System.Messaging_test_net_4_5.dll</output>
       <built_sources></built_sources>
       <library_output>System.Messaging_test_net_4_5.dll</library_output>
     <project dir="class/Mono.Messaging.RabbitMQ" library="Mono.Messaging.RabbitMQ-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig /r:System.dll /r:System.Messaging.dll /r:Mono.Messaging.dll /r:RabbitMQ.Client -nowarn:618</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig /r:System.dll /r:System.Messaging.dll /r:Mono.Messaging.dll /r:RabbitMQ.Client -nowarn:618</flags>
       <output>Mono.Messaging.RabbitMQ.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/Mono.Messaging.RabbitMQ.dll</library_output>
     <project dir="class/Mono.Messaging.RabbitMQ" library="Mono.Messaging.RabbitMQ-tests-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -r:./../../class/lib/net_4_5/Mono.Messaging.RabbitMQ.dll /r:System.dll /r:System.Messaging.dll /r:Mono.Messaging.dll /r:RabbitMQ.Client -nowarn:618 -nowarn:0618 -nowarn:219 -nowarn:169 /r:nunit.mocks.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_5/Mono.Messaging.RabbitMQ.dll /r:System.dll /r:System.Messaging.dll /r:Mono.Messaging.dll /r:RabbitMQ.Client -nowarn:618 -nowarn:0618 -nowarn:219 -nowarn:169 /r:nunit.mocks.dll</flags>
       <output>Mono.Messaging.RabbitMQ_test_net_4_5.dll</output>
       <built_sources></built_sources>
       <library_output>Mono.Messaging.RabbitMQ_test_net_4_5.dll</library_output>
     <project dir="class/System.ServiceProcess" library="System.ServiceProcess-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig /r:System.dll /r:System.Configuration.Install.dll /r:System.Windows.Forms.dll /nowarn:0618</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig /r:System.dll /r:System.Configuration.Install.dll /r:System.Windows.Forms.dll /nowarn:0618</flags>
       <output>System.ServiceProcess.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/System.ServiceProcess.dll</library_output>
     <project dir="class/System.ServiceProcess" library="System.ServiceProcess-tests-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -r:./../../class/lib/net_4_5/System.ServiceProcess.dll /r:System.dll /r:System.Configuration.Install.dll /r:System.Windows.Forms.dll /nowarn:0618</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_5/System.ServiceProcess.dll /r:System.dll /r:System.Configuration.Install.dll /r:System.Windows.Forms.dll /nowarn:0618</flags>
       <output>System.ServiceProcess_test_net_4_5.dll</output>
       <built_sources></built_sources>
       <library_output>System.ServiceProcess_test_net_4_5.dll</library_output>
     <project dir="class/System.Drawing.Design" library="System.Drawing.Design-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig /r:mscorlib.dll /r:System.dll /r:System.Drawing.dll /r:System.Windows.Forms.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig /r:mscorlib.dll /r:System.dll /r:System.Drawing.dll /r:System.Windows.Forms.dll</flags>
       <output>System.Drawing.Design.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/System.Drawing.Design.dll</library_output>
     <project dir="class/System.Design" library="System.Design-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig -r:mscorlib.dll -r:System.dll -r:System.Xml.dll -r:System.Web.dll -r:System.Windows.Forms.dll -r:System.Drawing.dll -r:Accessibility.dll -r:System.Data.dll -r:System.Configuration.dll -define:DRAWING_DESIGN_DEP -r:System.Drawing.Design.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig -r:mscorlib.dll -r:System.dll -r:System.Xml.dll -r:System.Web.dll -r:System.Windows.Forms.dll -r:System.Drawing.dll -r:Accessibility.dll -r:System.Data.dll -r:System.Configuration.dll -define:DRAWING_DESIGN_DEP -r:System.Drawing.Design.dll</flags>
       <output>System.Design.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/tmp/System.Design.dll</library_output>
     <project dir="class/System.Design" library="System.Design-tests-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -r:./../../class/lib/net_4_5/System.Design.dll /r:System.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_5/System.Design.dll /r:System.dll</flags>
       <output>System.Design_test_net_4_5.dll</output>
       <built_sources></built_sources>
       <library_output>System.Design_test_net_4_5.dll</library_output>
     <project dir="class/ICSharpCode.SharpZipLib" library="ICSharpCode.SharpZipLib-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig /r:mscorlib.dll /r:System.dll /r:System.Xml.dll -warn:1</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig /r:mscorlib.dll /r:System.dll /r:System.Xml.dll -warn:1</flags>
       <output>ICSharpCode.SharpZipLib.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/ICSharpCode.SharpZipLib.dll</library_output>
     <project dir="class/Mono.Http" library="Mono.Http-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig -r:mscorlib.dll -r:System.dll -r:System.Xml.dll -r:System.Web.dll -r:ICSharpCode.SharpZipLib.dll -r:Mono.Security.dll -nowarn:618</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig -r:mscorlib.dll -r:System.dll -r:System.Xml.dll -r:System.Web.dll -r:ICSharpCode.SharpZipLib.dll -r:Mono.Security.dll -nowarn:618</flags>
       <output>Mono.Http.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/Mono.Http.dll</library_output>
     <project dir="class/Mono.Cairo" library="Mono.Cairo-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig</flags>
       <output>Mono.Cairo.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/Mono.Cairo.dll</library_output>
     <project dir="class/IBM.Data.DB2" library="IBM.Data.DB2-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig /unsafe /r:mscorlib.dll /r:System.dll /r:System.Xml.dll /r:System.Data.dll -warn:1</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig /unsafe /r:mscorlib.dll /r:System.dll /r:System.Xml.dll /r:System.Data.dll -warn:1</flags>
       <output>IBM.Data.DB2.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/IBM.Data.DB2.dll</library_output>
     <project dir="class/CustomMarshalers" library="CustomMarshalers-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig /r:mscorlib.dll /r:System.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig /r:mscorlib.dll /r:System.dll</flags>
       <output>CustomMarshalers.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/CustomMarshalers.dll</library_output>
     <project dir="class/OpenSystem.C" library="OpenSystem.C-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig</flags>
       <output>OpenSystem.C.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/OpenSystem.C.dll</library_output>
     <project dir="class/Mono.Cecil" library="Mono.Cecil-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig /r:mscorlib.dll -keyfile:../mono.snk -r:System.Core.dll -d:NET_3_5</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig /r:mscorlib.dll -keyfile:../mono.snk -r:System.Core.dll -d:NET_3_5</flags>
       <output>Mono.Cecil.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/Mono.Cecil.dll</library_output>
     <project dir="class/Mono.Cecil.Mdb" library="Mono.Cecil.Mdb-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig /r:mscorlib.dll /r:System.dll /r:Mono.Cecil.dll /d:CECIL -keyfile:../mono.snk</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig /r:mscorlib.dll /r:System.dll /r:Mono.Cecil.dll /d:CECIL -keyfile:../mono.snk</flags>
       <output>Mono.Cecil.Mdb.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/Mono.Cecil.Mdb.dll</library_output>
     <project dir="class/Mono.Debugger.Soft" library="Mono.Debugger.Soft-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig /r:mscorlib.dll /r:System.dll /r:Mono.Cecil.dll /r:System.Core.dll /unsafe -D:MONO_DATACONVERTER_STATIC_METHODS -keyfile:../mono.snk</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig /r:mscorlib.dll /r:System.dll /r:Mono.Cecil.dll /r:System.Core.dll /unsafe -D:MONO_DATACONVERTER_STATIC_METHODS -keyfile:../mono.snk</flags>
       <output>Mono.Debugger.Soft.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/Mono.Debugger.Soft.dll</library_output>
     <project dir="class/Mono.Debugger.Soft" library="Mono.Debugger.Soft-tests-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -r:./../../class/lib/net_4_5/Mono.Debugger.Soft.dll /r:Mono.Cecil.dll /r:System.dll /r:System.Core.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_5/Mono.Debugger.Soft.dll /r:Mono.Cecil.dll /r:System.dll /r:System.Core.dll</flags>
       <output>Mono.Debugger.Soft_test_net_4_5.dll</output>
       <built_sources></built_sources>
       <library_output>Mono.Debugger.Soft_test_net_4_5.dll</library_output>
     <project dir="class/SystemWebTestShim" library="SystemWebTestShim-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig -r:System.Web.dll -r:System.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig -r:System.Web.dll -r:System.dll</flags>
       <output>SystemWebTestShim.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/SystemWebTestShim.dll</library_output>
     <project dir="class/Microsoft.Build.Framework" library="Microsoft.Build.Framework-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig /r:mscorlib.dll /r:System.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig /r:mscorlib.dll /r:System.dll</flags>
       <output>Microsoft.Build.Framework.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/Microsoft.Build.Framework.dll</library_output>
     <project dir="class/Microsoft.Build.Framework" library="Microsoft.Build.Framework-tests-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -r:./../../class/lib/net_4_5/Microsoft.Build.Framework.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_5/Microsoft.Build.Framework.dll</flags>
       <output>Microsoft.Build.Framework_test_net_4_5.dll</output>
       <built_sources></built_sources>
       <library_output>Microsoft.Build.Framework_test_net_4_5.dll</library_output>
     <project dir="class/Microsoft.Build.Utilities" library="Microsoft.Build.Utilities-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig /r:mscorlib.dll /r:System.dll /r:Microsoft.Build.Framework.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig /r:mscorlib.dll /r:System.dll /r:Microsoft.Build.Framework.dll</flags>
       <output>Microsoft.Build.Utilities.v4.0.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/Microsoft.Build.Utilities.v4.0.dll</library_output>
     <project dir="class/Microsoft.Build.Utilities" library="Microsoft.Build.Utilities-tests-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -r:./../../class/lib/net_4_5/Microsoft.Build.Utilities.v4.0.dll /r:Microsoft.Build.Framework.dll -r:System.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_5/Microsoft.Build.Utilities.v4.0.dll /r:Microsoft.Build.Framework.dll -r:System.dll</flags>
       <output>Microsoft.Build.Utilities_test_net_4_5.dll</output>
       <built_sources></built_sources>
       <library_output>Microsoft.Build.Utilities_test_net_4_5.dll</library_output>
     <project dir="class/Microsoft.Build.Engine" library="Microsoft.Build.Engine-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig /r:mscorlib.dll /r:System.dll /r:System.Core.dll /r:System.Xml.dll /r:Microsoft.Build.Framework.dll /r:Microsoft.Build.Utilities.v4.0.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig /r:mscorlib.dll /r:System.dll /r:System.Core.dll /r:System.Xml.dll /r:Microsoft.Build.Framework.dll /r:Microsoft.Build.Utilities.v4.0.dll</flags>
       <output>Microsoft.Build.Engine.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/Microsoft.Build.Engine.dll</library_output>
     <project dir="class/Microsoft.Build.Engine" library="Microsoft.Build.Engine-tests-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -r:./../../class/lib/net_4_5/Microsoft.Build.Engine.dll /r:Microsoft.Build.Framework.dll /r:Microsoft.Build.Utilities.v4.0.dll /r:System.Xml.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_5/Microsoft.Build.Engine.dll /r:Microsoft.Build.Framework.dll /r:Microsoft.Build.Utilities.v4.0.dll /r:System.Xml.dll</flags>
       <output>Microsoft.Build.Engine_test_net_4_5.dll</output>
       <built_sources></built_sources>
       <library_output>Microsoft.Build.Engine_test_net_4_5.dll</library_output>
     <project dir="class/Microsoft.Build.Tasks" library="Microsoft.Build.Tasks-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig /r:mscorlib.dll /r:System.dll /r:System.Core.dll /r:System.Xml.dll /r:System.Windows.Forms.dll /r:Microsoft.Build.Utilities.v4.0.dll /r:Microsoft.Build.Framework.dll /r:Microsoft.Build.Engine.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig /r:mscorlib.dll /r:System.dll /r:System.Core.dll /r:System.Xml.dll /r:System.Windows.Forms.dll /r:Microsoft.Build.Utilities.v4.0.dll /r:Microsoft.Build.Framework.dll /r:Microsoft.Build.Engine.dll</flags>
       <output>Microsoft.Build.Tasks.v4.0.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/Microsoft.Build.Tasks.v4.0.dll</library_output>
     <project dir="class/Microsoft.Build.Tasks" library="Microsoft.Build.Tasks-tests-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -r:./../../class/lib/net_4_5/Microsoft.Build.Tasks.v4.0.dll /r:Microsoft.Build.Engine.dll /r:Microsoft.Build.Framework.dll /r:Microsoft.Build.Utilities.v4.0.dll /r:System.Core.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_5/Microsoft.Build.Tasks.v4.0.dll /r:Microsoft.Build.Engine.dll /r:Microsoft.Build.Framework.dll /r:Microsoft.Build.Utilities.v4.0.dll /r:System.Core.dll</flags>
       <output>Microsoft.Build.Tasks_test_net_4_5.dll</output>
       <built_sources></built_sources>
       <library_output>Microsoft.Build.Tasks_test_net_4_5.dll</library_output>
     <project dir="class/System.Xml.Linq" library="System.Xml.Linq-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig -r:System.dll -r:System.Core.dll -r:System.Xml.dll -d:NET_3_5 -nowarn:1720</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig -r:System.dll -r:System.Core.dll -r:System.Xml.dll -d:NET_3_5 -nowarn:1720</flags>
       <output>System.Xml.Linq.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/System.Xml.Linq.dll</library_output>
     <project dir="class/System.Xml.Linq" library="System.Xml.Linq-tests-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -r:./../../class/lib/net_4_5/System.Xml.Linq.dll -r:System.dll -r:System.Core.dll -r:System.Xml.dll -d:NET_3_5 -nowarn:1720</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_5/System.Xml.Linq.dll -r:System.dll -r:System.Core.dll -r:System.Xml.dll -d:NET_3_5 -nowarn:1720</flags>
       <output>System.Xml.Linq_test_net_4_5.dll</output>
       <built_sources></built_sources>
       <library_output>System.Xml.Linq_test_net_4_5.dll</library_output>
     <project dir="class/System.Runtime.Serialization" library="System.Runtime.Serialization-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig /nowarn:168,169,219,414 /r:System.dll /r:System.Xml.dll /r:System.Core.dll /resource:resources/mstypes.schema /d:NET_3_0 /r:System.Data.dll /r:System.Configuration.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig /nowarn:168,169,219,414 /r:System.dll /r:System.Xml.dll /r:System.Core.dll /resource:resources/mstypes.schema /d:NET_3_0 /r:System.Data.dll /r:System.Configuration.dll</flags>
       <output>System.Runtime.Serialization.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/System.Runtime.Serialization.dll</library_output>
     <project dir="class/System.Runtime.Serialization" library="System.Runtime.Serialization-tests-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -r:./../../class/lib/net_4_5/System.Runtime.Serialization.dll /nowarn:168,169,219,414 /r:System.dll /r:System.Xml.dll /r:System.Core.dll /resource:resources/mstypes.schema /d:NET_3_0 /r:System.Data.dll /r:System.Configuration.dll /r:System.ServiceModel.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_5/System.Runtime.Serialization.dll /nowarn:168,169,219,414 /r:System.dll /r:System.Xml.dll /r:System.Core.dll /resource:resources/mstypes.schema /d:NET_3_0 /r:System.Data.dll /r:System.Configuration.dll /r:System.ServiceModel.dll</flags>
       <output>System.Runtime.Serialization_test_net_4_5.dll</output>
       <built_sources></built_sources>
       <library_output>System.Runtime.Serialization_test_net_4_5.dll</library_output>
     <project dir="class/System.Data.DataSetExtensions" library="System.Data.DataSetExtensions-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig -r:mscorlib.dll -r:System.Core.dll -r:System.dll -r:System.Data.dll -r:System.Xml.dll -r:System.Web.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig -r:mscorlib.dll -r:System.Core.dll -r:System.dll -r:System.Data.dll -r:System.Xml.dll -r:System.Web.dll</flags>
       <output>System.Data.DataSetExtensions.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/System.Data.DataSetExtensions.dll</library_output>
     <project dir="class/System.Data.DataSetExtensions" library="System.Data.DataSetExtensions-tests-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -r:./../../class/lib/net_4_5/System.Data.DataSetExtensions.dll -r:mscorlib.dll -r:System.Core.dll -r:System.dll -r:System.Data.dll -r:System.Xml.dll -r:System.Web.dll -doc:System.Data.DataSetExtensions_test_net_4_5.xml -nowarn:219 -nowarn:169</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_5/System.Data.DataSetExtensions.dll -r:mscorlib.dll -r:System.Core.dll -r:System.dll -r:System.Data.dll -r:System.Xml.dll -r:System.Web.dll -doc:System.Data.DataSetExtensions_test_net_4_5.xml -nowarn:219 -nowarn:169</flags>
       <output>System.Data.DataSetExtensions_test_net_4_5.dll</output>
       <built_sources></built_sources>
       <library_output>System.Data.DataSetExtensions_test_net_4_5.dll</library_output>
     <project dir="class/System.Data.Linq" library="System.Data.Linq-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig /r:System.dll /r:System.Core.dll /r:System.Xml.dll /r:System.Data.dll /r:System.Runtime.Serialization.dll /resource:./src/DbLinq/Schema/Dbml/DbmlSchema.xsd,DbLinq.Schema.Dbml.DbmlSchema.xsd /d:MONO_STRICT /d:MONO_DEPLOY -warn:1</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig /r:System.dll /r:System.Core.dll /r:System.Xml.dll /r:System.Data.dll /r:System.Runtime.Serialization.dll /resource:./src/DbLinq/Schema/Dbml/DbmlSchema.xsd,DbLinq.Schema.Dbml.DbmlSchema.xsd /d:MONO_STRICT /d:MONO_DEPLOY -warn:1</flags>
       <output>System.Data.Linq.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/System.Data.Linq.dll</library_output>
     <project dir="class/System.Data.Linq" library="System.Data.Linq-tests-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -r:./../../class/lib/net_4_5/System.Data.Linq.dll /r:System.dll /r:System.Core.dll /r:System.Xml.dll /r:System.Data.dll /r:System.Runtime.Serialization.dll /resource:./src/DbLinq/Schema/Dbml/DbmlSchema.xsd,DbLinq.Schema.Dbml.DbmlSchema.xsd /d:MONO_STRICT /d:MONO_DEPLOY -warn:1</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_5/System.Data.Linq.dll /r:System.dll /r:System.Core.dll /r:System.Xml.dll /r:System.Data.dll /r:System.Runtime.Serialization.dll /resource:./src/DbLinq/Schema/Dbml/DbmlSchema.xsd,DbLinq.Schema.Dbml.DbmlSchema.xsd /d:MONO_STRICT /d:MONO_DEPLOY -warn:1</flags>
       <output>System.Data.Linq_test_net_4_5.dll</output>
       <built_sources></built_sources>
       <library_output>System.Data.Linq_test_net_4_5.dll</library_output>
     <project dir="class/System.Web" library="System.Web-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig -unsafe -nowarn:612,618 -r:mscorlib.dll -r:System.dll -r:System.Drawing.dll -r:System.Data.dll -r:System.Xml.dll -r:System.EnterpriseServices.dll -d:INSIDE_SYSTEM_WEB -nowarn:618 -r:System.Configuration.dll -r:Mono.Data.Sqlite.dll -r:System.Web.ApplicationServices.dll /resource:resources/TranslationResources.resources /resource:resources/WebUIValidation.js /resource:resources/folder.gif /resource:resources/file.gif /resource:resources/computer.gif /resource:resources/arrow_minus.gif /resource:resources/arrow_noexpand.gif /resource:resources/arrow_plus.gif /resource:resources/arrow_up.gif /resource:resources/arrow_down.gif /resource:resources/box_full.gif /resource:resources/box_empty.gif /resource:resources/box_minus.gif /resource:resources/box_noexpand.gif /resource:resources/box_plus.gif /resource:resources/contact.gif /resource:resources/dot_empty.gif /resource:resources/dot_full.gif /resource:resources/dots.gif /resource:resources/inbox.gif /resource:resources/star_empty.gif /resource:resources/star_full.gif /resource:resources/warning.gif /resource:resources/TreeView_noexpand.gif /resource:resources/TreeView_dash.gif /resource:resources/TreeView_dashminus.gif /resource:resources/TreeView_dashplus.gif /resource:resources/TreeView_i.gif /resource:resources/TreeView_l.gif /resource:resources/TreeView_lminus.gif /resource:resources/TreeView_lplus.gif /resource:resources/TreeView_minus.gif /resource:resources/TreeView_plus.gif /resource:resources/TreeView_r.gif /resource:resources/TreeView_rminus.gif /resource:resources/TreeView_rplus.gif /resource:resources/TreeView_t.gif /resource:resources/TreeView_tminus.gif /resource:resources/TreeView_tplus.gif /resource:resources/transparent.gif /resource:resources/webform.js /resource:resources/WebUIValidation_2.0.js /resource:resources/ErrorTemplateCommon_Top.html /resource:resources/DefaultErrorTemplate_CustomErrorDefault.html /resource:resources/ErrorTemplateCommon_Bottom.html /resource:resources/DefaultErrorTemplate_StandardPage.html /resource:resources/HtmlizedExceptionPage_Top.html /resource:resources/HtmlizedExceptionPage_FileLongSource.html /resource:resources/HtmlizedExceptionPage_FileShortSource.html /resource:resources/HtmlizedExceptionPage_CompilerOutput.html /resource:System.Web.UI.WebControls/GridView.js /resource:System.Web.UI.WebControls/DetailsView.js /resource:System.Web.UI.WebControls/TreeView.js /resource:System.Web.UI.WebControls/Menu.js /resource:System.Web.UI.WebControls/MenuModern.js -define:WEBSERVICES_DEP -r:System.Web.Services.dll -define:MONOWEB_DEP -r:Mono.Web.dll -define:SYSTEMCORE_DEP -r:System.Core.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig -unsafe -nowarn:612,618 -r:mscorlib.dll -r:System.dll -r:System.Drawing.dll -r:System.Data.dll -r:System.Xml.dll -r:System.EnterpriseServices.dll -d:INSIDE_SYSTEM_WEB -nowarn:618 -r:System.Configuration.dll -r:Mono.Data.Sqlite.dll -r:System.Web.ApplicationServices.dll /resource:resources/TranslationResources.resources /resource:resources/WebUIValidation.js /resource:resources/folder.gif /resource:resources/file.gif /resource:resources/computer.gif /resource:resources/arrow_minus.gif /resource:resources/arrow_noexpand.gif /resource:resources/arrow_plus.gif /resource:resources/arrow_up.gif /resource:resources/arrow_down.gif /resource:resources/box_full.gif /resource:resources/box_empty.gif /resource:resources/box_minus.gif /resource:resources/box_noexpand.gif /resource:resources/box_plus.gif /resource:resources/contact.gif /resource:resources/dot_empty.gif /resource:resources/dot_full.gif /resource:resources/dots.gif /resource:resources/inbox.gif /resource:resources/star_empty.gif /resource:resources/star_full.gif /resource:resources/warning.gif /resource:resources/TreeView_noexpand.gif /resource:resources/TreeView_dash.gif /resource:resources/TreeView_dashminus.gif /resource:resources/TreeView_dashplus.gif /resource:resources/TreeView_i.gif /resource:resources/TreeView_l.gif /resource:resources/TreeView_lminus.gif /resource:resources/TreeView_lplus.gif /resource:resources/TreeView_minus.gif /resource:resources/TreeView_plus.gif /resource:resources/TreeView_r.gif /resource:resources/TreeView_rminus.gif /resource:resources/TreeView_rplus.gif /resource:resources/TreeView_t.gif /resource:resources/TreeView_tminus.gif /resource:resources/TreeView_tplus.gif /resource:resources/transparent.gif /resource:resources/webform.js /resource:resources/WebUIValidation_2.0.js /resource:resources/ErrorTemplateCommon_Top.html /resource:resources/DefaultErrorTemplate_CustomErrorDefault.html /resource:resources/ErrorTemplateCommon_Bottom.html /resource:resources/DefaultErrorTemplate_StandardPage.html /resource:resources/HtmlizedExceptionPage_Top.html /resource:resources/HtmlizedExceptionPage_FileLongSource.html /resource:resources/HtmlizedExceptionPage_FileShortSource.html /resource:resources/HtmlizedExceptionPage_CompilerOutput.html /resource:System.Web.UI.WebControls/GridView.js /resource:System.Web.UI.WebControls/DetailsView.js /resource:System.Web.UI.WebControls/TreeView.js /resource:System.Web.UI.WebControls/Menu.js /resource:System.Web.UI.WebControls/MenuModern.js -define:WEBSERVICES_DEP -r:System.Web.Services.dll -define:MONOWEB_DEP -r:Mono.Web.dll -define:SYSTEMCORE_DEP -r:System.Core.dll</flags>
       <output>System.Web.dll</output>
       <built_sources>System.Web/UplevelHelper.cs</built_sources>
       <library_output>./../../class/lib/net_4_5/tmp/System.Web.dll</library_output>
     <project dir="class/System.Web" library="System.Web-tests-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -r:./../../class/lib/net_4_5/System.Web.dll -unsafe -nowarn:612,618 -r:mscorlib.dll -r:System.dll -r:System.Drawing.dll -r:System.Data.dll -r:System.Xml.dll -r:System.EnterpriseServices.dll -d:INSIDE_SYSTEM_WEB -nowarn:618 -r:System.Configuration.dll -r:Mono.Data.Sqlite.dll -r:System.Web.ApplicationServices.dll /resource:resources/TranslationResources.resources /resource:resources/WebUIValidation.js /resource:resources/folder.gif /resource:resources/file.gif /resource:resources/computer.gif /resource:resources/arrow_minus.gif /resource:resources/arrow_noexpand.gif /resource:resources/arrow_plus.gif /resource:resources/arrow_up.gif /resource:resources/arrow_down.gif /resource:resources/box_full.gif /resource:resources/box_empty.gif /resource:resources/box_minus.gif /resource:resources/box_noexpand.gif /resource:resources/box_plus.gif /resource:resources/contact.gif /resource:resources/dot_empty.gif /resource:resources/dot_full.gif /resource:resources/dots.gif /resource:resources/inbox.gif /resource:resources/star_empty.gif /resource:resources/star_full.gif /resource:resources/warning.gif /resource:resources/TreeView_noexpand.gif /resource:resources/TreeView_dash.gif /resource:resources/TreeView_dashminus.gif /resource:resources/TreeView_dashplus.gif /resource:resources/TreeView_i.gif /resource:resources/TreeView_l.gif /resource:resources/TreeView_lminus.gif /resource:resources/TreeView_lplus.gif /resource:resources/TreeView_minus.gif /resource:resources/TreeView_plus.gif /resource:resources/TreeView_r.gif /resource:resources/TreeView_rminus.gif /resource:resources/TreeView_rplus.gif /resource:resources/TreeView_t.gif /resource:resources/TreeView_tminus.gif /resource:resources/TreeView_tplus.gif /resource:resources/transparent.gif /resource:resources/webform.js /resource:resources/WebUIValidation_2.0.js /resource:resources/ErrorTemplateCommon_Top.html /resource:resources/DefaultErrorTemplate_CustomErrorDefault.html /resource:resources/ErrorTemplateCommon_Bottom.html /resource:resources/DefaultErrorTemplate_StandardPage.html /resource:resources/HtmlizedExceptionPage_Top.html /resource:resources/HtmlizedExceptionPage_FileLongSource.html /resource:resources/HtmlizedExceptionPage_FileShortSource.html /resource:resources/HtmlizedExceptionPage_CompilerOutput.html /resource:System.Web.UI.WebControls/GridView.js /resource:System.Web.UI.WebControls/DetailsView.js /resource:System.Web.UI.WebControls/TreeView.js /resource:System.Web.UI.WebControls/Menu.js /resource:System.Web.UI.WebControls/MenuModern.js -define:WEBSERVICES_DEP -r:System.Web.Services.dll -define:MONOWEB_DEP -r:Mono.Web.dll -define:SYSTEMCORE_DEP -r:System.Core.dll -doc:System.Web_test_net_4_5.xml -nowarn:219,169,1591 -r:SystemWebTestShim.dll /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/Global.asax /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/My.ashx /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/My.master /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/MyPage.aspx /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/MyPage.aspx.cs /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/MyPageWithMaster.aspx /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/Web.mono.config /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/Web.mono.config.4.0 /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/sub_map_01.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_01.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_02.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_03.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_04.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_05.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_06.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_07.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_08.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_09.sitemap /resource:Test/mainsoft/NunitWebResources/menuclass.aspx /resource:Test/mainsoft/NunitWebResources/FormView.aspx /resource:Test/mainsoft/NunitWebResources/PostBackMenuTest.aspx /resource:Test/mainsoft/NunitWebResources/PageWithStyleSheet.aspx /resource:Test/mainsoft/NunitWebResources/PageWithTheme.aspx /resource:Test/mainsoft/NunitWebResources/ResolveUrl.ascx /resource:Test/mainsoft/NunitWebResources/ResolveUrl.aspx /resource:Test/mainsoft/NunitWebResources/RunTimeSetTheme.aspx /resource:Test/mainsoft/NunitWebResources/ReadOnlyPropertyBind.aspx /resource:Test/mainsoft/NunitWebResources/ReadOnlyPropertyControl.ascx /resource:Test/mainsoft/NunitWebResources/Theme1.skin /resource:Test/mainsoft/NunitWebResources/Theme2.skin /resource:Test/mainsoft/NunitWebResources/UrlProperty.aspx /resource:Test/mainsoft/NunitWebResources/UrlProperty.ascx /resource:Test/mainsoft/NunitWebResources/UrlProperty.ascx.cs /resource:Test/mainsoft/NunitWebResources/Web.sitemap /resource:Test/mainsoft/NunitWebResources/WizardTest.skin /resource:Test/mainsoft/NunitWebResources/FooterTemplateTest.aspx /resource:Test/mainsoft/NunitWebResources/DataGrid.aspx /resource:Test/mainsoft/NunitWebResources/DetailsViewTemplates.aspx /resource:Test/mainsoft/NunitWebResources/DetailsViewTemplates_2.aspx /resource:Test/mainsoft/NunitWebResources/DetailsViewTemplates_3.aspx /resource:Test/mainsoft/NunitWebResources/DetailsViewDataActions.aspx /resource:Test/mainsoft/NunitWebResources/DetailsViewProperties1.aspx /resource:Test/mainsoft/NunitWebResources/Bluehills.jpg /resource:Test/mainsoft/NunitWebResources/FormViewTest1.aspx /resource:Test/mainsoft/NunitWebResources/FormViewTest1_2.aspx /resource:Test/mainsoft/NunitWebResources/FormViewTest1_3.aspx /resource:Test/mainsoft/NunitWebResources/FormViewTest1_4.aspx /resource:Test/mainsoft/NunitWebResources/FormViewInsertEditDelete.aspx /resource:Test/mainsoft/NunitWebResources/GridViewUpdate.aspx /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest.xml /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest.xsl /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest1.aspx /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest2.aspx /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest3.aspx /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest4.aspx /resource:Test/mainsoft/NunitWebResources/LoginViewTest1.aspx /resource:Test/mainsoft/NunitWebResources/WebControl.config /resource:Test/mainsoft/NunitWebResources/WebLogin.config /resource:Test/mainsoft/NunitWebResources/CallbackTest1.aspx /resource:Test/mainsoft/NunitWebResources/CallbackTest2.aspx /resource:Test/mainsoft/NunitWebResources/EventValidationTest2.aspx /resource:Test/mainsoft/NunitWebResources/EventValidationTest1.aspx /resource:Test/mainsoft/NunitWebResources/ClientScript.js /resource:Test/mainsoft/NunitWebResources/EvalTest.aspx /resource:Test/mainsoft/NunitWebResources/TemplateUserControl.ascx /resource:Test/mainsoft/NunitWebResources/WebMapping.config /resource:Test/mainsoft/NunitWebResources/Mapping.aspx /resource:Test/mainsoft/NunitWebResources/Mapping1.aspx /resource:Test/mainsoft/NunitWebResources/CrossPagePosting1.aspx /resource:Test/mainsoft/NunitWebResources/CrossPagePosting2.aspx /resource:Test/mainsoft/NunitWebResources/MyDerived.master /resource:Test/mainsoft/NunitWebResources/MyPageWithDerivedMaster.aspx /resource:Test/mainsoft/NunitWebResources/MasterTypeTest1.aspx /resource:Test/mainsoft/NunitWebResources/MasterTypeTest2.aspx /resource:Test/mainsoft/NunitWebResources/PageLifecycleTest.aspx /resource:Test/mainsoft/NunitWebResources/PageValidationTest.aspx /resource:Test/mainsoft/NunitWebResources/AsyncPage.aspx /resource:Test/mainsoft/NunitWebResources/PageCultureTest.aspx /resource:Test/mainsoft/NunitWebResources/adapters.browser /resource:Test/mainsoft/NunitWebResources/NoEventValidation.aspx /resource:Test/mainsoft/NunitWebResources/ListControlPage.aspx /resource:Test/mainsoft/NunitWebResources/TextBoxTestlPage.aspx /resource:Test/mainsoft/NunitWebResources/ClearErrorOnError.aspx /resource:Test/mainsoft/NunitWebResources/RedirectOnError.aspx /resource:Test/mainsoft/NunitWebResources/TestCapability.browser /resource:Test/mainsoft/NunitWebResources/PageWithAdapter.aspx /resource:Test/mainsoft/NunitWebResources/InvalidPropertyBind1.aspx /resource:Test/mainsoft/NunitWebResources/InvalidPropertyBind2.aspx /resource:Test/mainsoft/NunitWebResources/InvalidPropertyBind3.aspx /resource:Test/mainsoft/NunitWebResources/InvalidPropertyBind4.aspx /resource:Test/mainsoft/NunitWebResources/ValidPropertyBind1.aspx /resource:Test/mainsoft/NunitWebResources/ValidPropertyBind2.aspx /resource:Test/mainsoft/NunitWebResources/ValidPropertyBind3.aspx /resource:Test/mainsoft/NunitWebResources/ValidPropertyBind4.aspx /resource:Test/mainsoft/NunitWebResources/ValidPropertyBind5.aspx /resource:Test/mainsoft/NunitWebResources/ReadWritePropertyControl.ascx /resource:Test/mainsoft/MainsoftWebTest/nunitweb_config.xml /resource:Test/mainsoft/NunitWebResources/TemplateControlParsingTest.aspx /resource:Test/mainsoft/NunitWebResources/ContentPlaceHolderInTemplate.aspx /resource:Test/mainsoft/NunitWebResources/ContentPlaceHolderInTemplate.master /resource:Test/mainsoft/NunitWebResources/MissingMasterFile.aspx /resource:Test/mainsoft/NunitWebResources/CustomSectionEmptyCollection.aspx /resource:Test/mainsoft/NunitWebResources/NoDoubleOnInitOnRemoveAdd.aspx /resource:Test/mainsoft/NunitWebResources/NoDoubleOnInitOnRemoveAdd.aspx.cs /resource:Test/mainsoft/NunitWebResources/LoginDisplayRememberMe.aspx /resource:Test/mainsoft/NunitWebResources/NoBindForMethodsWithBindInName.aspx /resource:Test/mainsoft/NunitWebResources/LinkInHeadWithEmbeddedExpression.aspx /resource:Test/mainsoft/NunitWebResources/ExpressionInListControl.aspx /resource:Test/mainsoft/NunitWebResources/ServerSideControlsInScriptBlock.aspx /resource:Test/mainsoft/NunitWebResources/ServerControlInClientSideComment.aspx /resource:Test/mainsoft/NunitWebResources/PreprocessorDirectivesInMarkup.aspx /resource:Test/mainsoft/NunitWebResources/UnquotedAngleBrackets.aspx /resource:Test/mainsoft/NunitWebResources/FullTagsInText.aspx /resource:Test/mainsoft/NunitWebResources/TagsExpressionsAndCommentsInText.aspx /resource:Test/mainsoft/NunitWebResources/NewlineInCodeExpression.aspx /resource:Test/mainsoft/NunitWebResources/DuplicateControlsInClientComment.aspx /resource:Test/mainsoft/NunitWebResources/TagsNestedInClientTag.aspx /resource:Test/mainsoft/NunitWebResources/ConditionalClientComments.aspx /resource:Test/mainsoft/NunitWebResources/OneLetterIdentifierInCodeRender.aspx /resource:Test/mainsoft/NunitWebResources/GlobalResourcesLocalization.aspx /resource:Test/mainsoft/NunitWebResources/TableSections_Bug551666.aspx /resource:Test/mainsoft/NunitWebResources/TableSections_Bug551666.aspx.cs /resource:Test/mainsoft/NunitWebResources/NestedParserFileText.aspx /resource:Test/mainsoft/NunitWebResources/StateFormatter_CorrectConverter.aspx /resource:Test/mainsoft/NunitWebResources/StateFormatter_CollectionConverter.aspx /resource:Test/mainsoft/NunitWebResources/StateFormatter_CollectionConverter.aspx.cs /resource:Test/mainsoft/NunitWebResources/ChangePasswordContainer_FindControl.aspx /resource:Test/mainsoft/NunitWebResources/TagWithExpressionWithinAttribute.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxList_Bug377703_1.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxList_Bug377703_2.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxList_Bug578770.aspx /resource:Test/mainsoft/NunitWebResources/EnumConverter_Bug578586.aspx /resource:Test/mainsoft/NunitWebResources/ButtonColor_Bug325489.aspx /resource:Test/mainsoft/NunitWebResources/SqlDataSource_OnInit_Bug572781.aspx /resource:Test/mainsoft/NunitWebResources/FormViewPagerVisibility.aspx /resource:Test/mainsoft/NunitWebResources/OverridenControlsPropertyAndPostBack_Bug594238.aspx /resource:Test/mainsoft/NunitWebResources/GlobalizationEncodingName.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_0.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_1.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_2.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_5.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_6.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_7.aspx /resource:Test/mainsoft/NunitWebResources/GridView_Bug595567.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxList_Bug600415.aspx /resource:Test/mainsoft/NunitWebResources/BoundField_Bug646505.aspx /resource:Test/mainsoft/NunitWebResources/BoundField_Bug646505.aspx.cs /resource:Test/mainsoft/NunitWebResources/HtmlTitleCodeRender_Bug662918.aspx /resource:Test/mainsoft/NunitWebResources/App_Code/EnumConverterControl.cs,App_Code/EnumConverterControl.cs /resource:Test/mainsoft/NunitWebResources/App_Code/MyContainer.cs,App_Code/MyContainer.cs /resource:Test/mainsoft/NunitWebResources/App_Code/CustomCheckBoxColumn.cs,App_Code/CustomCheckBoxColumn.cs /resource:Test/mainsoft/NunitWebResources/App_GlobalResources/Common.resx,App_GlobalResources/Common.resx /resource:Test/mainsoft/NunitWebResources/App_GlobalResources/Common.fr-FR.resx,App_GlobalResources/Common.fr-FR.resx /resource:Test/mainsoft/NunitWebResources/App_GlobalResources/Resource1.resx,App_GlobalResources/Resource1.resx</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_5/System.Web.dll -unsafe -nowarn:612,618 -r:mscorlib.dll -r:System.dll -r:System.Drawing.dll -r:System.Data.dll -r:System.Xml.dll -r:System.EnterpriseServices.dll -d:INSIDE_SYSTEM_WEB -nowarn:618 -r:System.Configuration.dll -r:Mono.Data.Sqlite.dll -r:System.Web.ApplicationServices.dll /resource:resources/TranslationResources.resources /resource:resources/WebUIValidation.js /resource:resources/folder.gif /resource:resources/file.gif /resource:resources/computer.gif /resource:resources/arrow_minus.gif /resource:resources/arrow_noexpand.gif /resource:resources/arrow_plus.gif /resource:resources/arrow_up.gif /resource:resources/arrow_down.gif /resource:resources/box_full.gif /resource:resources/box_empty.gif /resource:resources/box_minus.gif /resource:resources/box_noexpand.gif /resource:resources/box_plus.gif /resource:resources/contact.gif /resource:resources/dot_empty.gif /resource:resources/dot_full.gif /resource:resources/dots.gif /resource:resources/inbox.gif /resource:resources/star_empty.gif /resource:resources/star_full.gif /resource:resources/warning.gif /resource:resources/TreeView_noexpand.gif /resource:resources/TreeView_dash.gif /resource:resources/TreeView_dashminus.gif /resource:resources/TreeView_dashplus.gif /resource:resources/TreeView_i.gif /resource:resources/TreeView_l.gif /resource:resources/TreeView_lminus.gif /resource:resources/TreeView_lplus.gif /resource:resources/TreeView_minus.gif /resource:resources/TreeView_plus.gif /resource:resources/TreeView_r.gif /resource:resources/TreeView_rminus.gif /resource:resources/TreeView_rplus.gif /resource:resources/TreeView_t.gif /resource:resources/TreeView_tminus.gif /resource:resources/TreeView_tplus.gif /resource:resources/transparent.gif /resource:resources/webform.js /resource:resources/WebUIValidation_2.0.js /resource:resources/ErrorTemplateCommon_Top.html /resource:resources/DefaultErrorTemplate_CustomErrorDefault.html /resource:resources/ErrorTemplateCommon_Bottom.html /resource:resources/DefaultErrorTemplate_StandardPage.html /resource:resources/HtmlizedExceptionPage_Top.html /resource:resources/HtmlizedExceptionPage_FileLongSource.html /resource:resources/HtmlizedExceptionPage_FileShortSource.html /resource:resources/HtmlizedExceptionPage_CompilerOutput.html /resource:System.Web.UI.WebControls/GridView.js /resource:System.Web.UI.WebControls/DetailsView.js /resource:System.Web.UI.WebControls/TreeView.js /resource:System.Web.UI.WebControls/Menu.js /resource:System.Web.UI.WebControls/MenuModern.js -define:WEBSERVICES_DEP -r:System.Web.Services.dll -define:MONOWEB_DEP -r:Mono.Web.dll -define:SYSTEMCORE_DEP -r:System.Core.dll -doc:System.Web_test_net_4_5.xml -nowarn:219,169,1591 -r:SystemWebTestShim.dll /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/Global.asax /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/My.ashx /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/My.master /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/MyPage.aspx /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/MyPage.aspx.cs /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/MyPageWithMaster.aspx /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/Web.mono.config /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/Web.mono.config.4.0 /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/sub_map_01.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_01.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_02.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_03.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_04.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_05.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_06.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_07.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_08.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_09.sitemap /resource:Test/mainsoft/NunitWebResources/menuclass.aspx /resource:Test/mainsoft/NunitWebResources/FormView.aspx /resource:Test/mainsoft/NunitWebResources/PostBackMenuTest.aspx /resource:Test/mainsoft/NunitWebResources/PageWithStyleSheet.aspx /resource:Test/mainsoft/NunitWebResources/PageWithTheme.aspx /resource:Test/mainsoft/NunitWebResources/ResolveUrl.ascx /resource:Test/mainsoft/NunitWebResources/ResolveUrl.aspx /resource:Test/mainsoft/NunitWebResources/RunTimeSetTheme.aspx /resource:Test/mainsoft/NunitWebResources/ReadOnlyPropertyBind.aspx /resource:Test/mainsoft/NunitWebResources/ReadOnlyPropertyControl.ascx /resource:Test/mainsoft/NunitWebResources/Theme1.skin /resource:Test/mainsoft/NunitWebResources/Theme2.skin /resource:Test/mainsoft/NunitWebResources/UrlProperty.aspx /resource:Test/mainsoft/NunitWebResources/UrlProperty.ascx /resource:Test/mainsoft/NunitWebResources/UrlProperty.ascx.cs /resource:Test/mainsoft/NunitWebResources/Web.sitemap /resource:Test/mainsoft/NunitWebResources/WizardTest.skin /resource:Test/mainsoft/NunitWebResources/FooterTemplateTest.aspx /resource:Test/mainsoft/NunitWebResources/DataGrid.aspx /resource:Test/mainsoft/NunitWebResources/DetailsViewTemplates.aspx /resource:Test/mainsoft/NunitWebResources/DetailsViewTemplates_2.aspx /resource:Test/mainsoft/NunitWebResources/DetailsViewTemplates_3.aspx /resource:Test/mainsoft/NunitWebResources/DetailsViewDataActions.aspx /resource:Test/mainsoft/NunitWebResources/DetailsViewProperties1.aspx /resource:Test/mainsoft/NunitWebResources/Bluehills.jpg /resource:Test/mainsoft/NunitWebResources/FormViewTest1.aspx /resource:Test/mainsoft/NunitWebResources/FormViewTest1_2.aspx /resource:Test/mainsoft/NunitWebResources/FormViewTest1_3.aspx /resource:Test/mainsoft/NunitWebResources/FormViewTest1_4.aspx /resource:Test/mainsoft/NunitWebResources/FormViewInsertEditDelete.aspx /resource:Test/mainsoft/NunitWebResources/GridViewUpdate.aspx /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest.xml /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest.xsl /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest1.aspx /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest2.aspx /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest3.aspx /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest4.aspx /resource:Test/mainsoft/NunitWebResources/LoginViewTest1.aspx /resource:Test/mainsoft/NunitWebResources/WebControl.config /resource:Test/mainsoft/NunitWebResources/WebLogin.config /resource:Test/mainsoft/NunitWebResources/CallbackTest1.aspx /resource:Test/mainsoft/NunitWebResources/CallbackTest2.aspx /resource:Test/mainsoft/NunitWebResources/EventValidationTest2.aspx /resource:Test/mainsoft/NunitWebResources/EventValidationTest1.aspx /resource:Test/mainsoft/NunitWebResources/ClientScript.js /resource:Test/mainsoft/NunitWebResources/EvalTest.aspx /resource:Test/mainsoft/NunitWebResources/TemplateUserControl.ascx /resource:Test/mainsoft/NunitWebResources/WebMapping.config /resource:Test/mainsoft/NunitWebResources/Mapping.aspx /resource:Test/mainsoft/NunitWebResources/Mapping1.aspx /resource:Test/mainsoft/NunitWebResources/CrossPagePosting1.aspx /resource:Test/mainsoft/NunitWebResources/CrossPagePosting2.aspx /resource:Test/mainsoft/NunitWebResources/MyDerived.master /resource:Test/mainsoft/NunitWebResources/MyPageWithDerivedMaster.aspx /resource:Test/mainsoft/NunitWebResources/MasterTypeTest1.aspx /resource:Test/mainsoft/NunitWebResources/MasterTypeTest2.aspx /resource:Test/mainsoft/NunitWebResources/PageLifecycleTest.aspx /resource:Test/mainsoft/NunitWebResources/PageValidationTest.aspx /resource:Test/mainsoft/NunitWebResources/AsyncPage.aspx /resource:Test/mainsoft/NunitWebResources/PageCultureTest.aspx /resource:Test/mainsoft/NunitWebResources/adapters.browser /resource:Test/mainsoft/NunitWebResources/NoEventValidation.aspx /resource:Test/mainsoft/NunitWebResources/ListControlPage.aspx /resource:Test/mainsoft/NunitWebResources/TextBoxTestlPage.aspx /resource:Test/mainsoft/NunitWebResources/ClearErrorOnError.aspx /resource:Test/mainsoft/NunitWebResources/RedirectOnError.aspx /resource:Test/mainsoft/NunitWebResources/TestCapability.browser /resource:Test/mainsoft/NunitWebResources/PageWithAdapter.aspx /resource:Test/mainsoft/NunitWebResources/InvalidPropertyBind1.aspx /resource:Test/mainsoft/NunitWebResources/InvalidPropertyBind2.aspx /resource:Test/mainsoft/NunitWebResources/InvalidPropertyBind3.aspx /resource:Test/mainsoft/NunitWebResources/InvalidPropertyBind4.aspx /resource:Test/mainsoft/NunitWebResources/ValidPropertyBind1.aspx /resource:Test/mainsoft/NunitWebResources/ValidPropertyBind2.aspx /resource:Test/mainsoft/NunitWebResources/ValidPropertyBind3.aspx /resource:Test/mainsoft/NunitWebResources/ValidPropertyBind4.aspx /resource:Test/mainsoft/NunitWebResources/ValidPropertyBind5.aspx /resource:Test/mainsoft/NunitWebResources/ReadWritePropertyControl.ascx /resource:Test/mainsoft/MainsoftWebTest/nunitweb_config.xml /resource:Test/mainsoft/NunitWebResources/TemplateControlParsingTest.aspx /resource:Test/mainsoft/NunitWebResources/ContentPlaceHolderInTemplate.aspx /resource:Test/mainsoft/NunitWebResources/ContentPlaceHolderInTemplate.master /resource:Test/mainsoft/NunitWebResources/MissingMasterFile.aspx /resource:Test/mainsoft/NunitWebResources/CustomSectionEmptyCollection.aspx /resource:Test/mainsoft/NunitWebResources/NoDoubleOnInitOnRemoveAdd.aspx /resource:Test/mainsoft/NunitWebResources/NoDoubleOnInitOnRemoveAdd.aspx.cs /resource:Test/mainsoft/NunitWebResources/LoginDisplayRememberMe.aspx /resource:Test/mainsoft/NunitWebResources/NoBindForMethodsWithBindInName.aspx /resource:Test/mainsoft/NunitWebResources/LinkInHeadWithEmbeddedExpression.aspx /resource:Test/mainsoft/NunitWebResources/ExpressionInListControl.aspx /resource:Test/mainsoft/NunitWebResources/ServerSideControlsInScriptBlock.aspx /resource:Test/mainsoft/NunitWebResources/ServerControlInClientSideComment.aspx /resource:Test/mainsoft/NunitWebResources/PreprocessorDirectivesInMarkup.aspx /resource:Test/mainsoft/NunitWebResources/UnquotedAngleBrackets.aspx /resource:Test/mainsoft/NunitWebResources/FullTagsInText.aspx /resource:Test/mainsoft/NunitWebResources/TagsExpressionsAndCommentsInText.aspx /resource:Test/mainsoft/NunitWebResources/NewlineInCodeExpression.aspx /resource:Test/mainsoft/NunitWebResources/DuplicateControlsInClientComment.aspx /resource:Test/mainsoft/NunitWebResources/TagsNestedInClientTag.aspx /resource:Test/mainsoft/NunitWebResources/ConditionalClientComments.aspx /resource:Test/mainsoft/NunitWebResources/OneLetterIdentifierInCodeRender.aspx /resource:Test/mainsoft/NunitWebResources/GlobalResourcesLocalization.aspx /resource:Test/mainsoft/NunitWebResources/TableSections_Bug551666.aspx /resource:Test/mainsoft/NunitWebResources/TableSections_Bug551666.aspx.cs /resource:Test/mainsoft/NunitWebResources/NestedParserFileText.aspx /resource:Test/mainsoft/NunitWebResources/StateFormatter_CorrectConverter.aspx /resource:Test/mainsoft/NunitWebResources/StateFormatter_CollectionConverter.aspx /resource:Test/mainsoft/NunitWebResources/StateFormatter_CollectionConverter.aspx.cs /resource:Test/mainsoft/NunitWebResources/ChangePasswordContainer_FindControl.aspx /resource:Test/mainsoft/NunitWebResources/TagWithExpressionWithinAttribute.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxList_Bug377703_1.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxList_Bug377703_2.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxList_Bug578770.aspx /resource:Test/mainsoft/NunitWebResources/EnumConverter_Bug578586.aspx /resource:Test/mainsoft/NunitWebResources/ButtonColor_Bug325489.aspx /resource:Test/mainsoft/NunitWebResources/SqlDataSource_OnInit_Bug572781.aspx /resource:Test/mainsoft/NunitWebResources/FormViewPagerVisibility.aspx /resource:Test/mainsoft/NunitWebResources/OverridenControlsPropertyAndPostBack_Bug594238.aspx /resource:Test/mainsoft/NunitWebResources/GlobalizationEncodingName.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_0.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_1.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_2.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_5.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_6.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_7.aspx /resource:Test/mainsoft/NunitWebResources/GridView_Bug595567.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxList_Bug600415.aspx /resource:Test/mainsoft/NunitWebResources/BoundField_Bug646505.aspx /resource:Test/mainsoft/NunitWebResources/BoundField_Bug646505.aspx.cs /resource:Test/mainsoft/NunitWebResources/HtmlTitleCodeRender_Bug662918.aspx /resource:Test/mainsoft/NunitWebResources/App_Code/EnumConverterControl.cs,App_Code/EnumConverterControl.cs /resource:Test/mainsoft/NunitWebResources/App_Code/MyContainer.cs,App_Code/MyContainer.cs /resource:Test/mainsoft/NunitWebResources/App_Code/CustomCheckBoxColumn.cs,App_Code/CustomCheckBoxColumn.cs /resource:Test/mainsoft/NunitWebResources/App_GlobalResources/Common.resx,App_GlobalResources/Common.resx /resource:Test/mainsoft/NunitWebResources/App_GlobalResources/Common.fr-FR.resx,App_GlobalResources/Common.fr-FR.resx /resource:Test/mainsoft/NunitWebResources/App_GlobalResources/Resource1.resx,App_GlobalResources/Resource1.resx</flags>
       <output>System.Web_test_net_4_5.dll</output>
       <built_sources>System.Web/UplevelHelper.cs</built_sources>
       <library_output>System.Web_test_net_4_5.dll</library_output>
     <project dir="class/System.Web.Abstractions" library="System.Web.Abstractions-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig /r:System.dll /r:System.Core.dll /r:System.Web.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig /r:System.dll /r:System.Core.dll /r:System.Web.dll</flags>
       <output>System.Web.Abstractions.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/System.Web.Abstractions.dll</library_output>
     <project dir="class/System.Web.Abstractions" library="System.Web.Abstractions-tests-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -r:./../../class/lib/net_4_5/System.Web.Abstractions.dll /r:System.dll /r:System.Core.dll /r:System.Web.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_5/System.Web.Abstractions.dll /r:System.dll /r:System.Core.dll /r:System.Web.dll</flags>
       <output>System.Web.Abstractions_test_net_4_5.dll</output>
       <built_sources></built_sources>
       <library_output>System.Web.Abstractions_test_net_4_5.dll</library_output>
     <project dir="class/System.Web.Routing" library="System.Web.Routing-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig /r:System.dll /r:System.Core.dll /r:System.Web.dll /r:System.Web.Abstractions.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig /r:System.dll /r:System.Core.dll /r:System.Web.dll /r:System.Web.Abstractions.dll</flags>
       <output>System.Web.Routing.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/System.Web.Routing.dll</library_output>
     <project dir="class/System.Web.Routing" library="System.Web.Routing-tests-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -r:./../../class/lib/net_4_5/System.Web.Routing.dll /r:System.dll /r:System.Core.dll /r:System.Web.dll /r:System.Web.Abstractions.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_5/System.Web.Routing.dll /r:System.dll /r:System.Core.dll /r:System.Web.dll /r:System.Web.Abstractions.dll</flags>
       <output>System.Web.Routing_test_net_4_5.dll</output>
       <built_sources></built_sources>
       <library_output>System.Web.Routing_test_net_4_5.dll</library_output>
     <project dir="class/System.IdentityModel" library="System.IdentityModel-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig /d:NET_3_0 /r:System.dll /r:System.Xml.dll /r:System.Security.dll /r:System.Web.dll /r:System.Configuration.dll /r:Mono.Security.dll /r:System.Runtime.Serialization.dll -r:System.Web.ApplicationServices.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig /d:NET_3_0 /r:System.dll /r:System.Xml.dll /r:System.Security.dll /r:System.Web.dll /r:System.Configuration.dll /r:Mono.Security.dll /r:System.Runtime.Serialization.dll -r:System.Web.ApplicationServices.dll</flags>
       <output>System.IdentityModel.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/System.IdentityModel.dll</library_output>
     <project dir="class/System.IdentityModel" library="System.IdentityModel-tests-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -r:./../../class/lib/net_4_5/System.IdentityModel.dll /d:NET_3_0 /r:System.dll /r:System.Xml.dll /r:System.Security.dll /r:System.Web.dll /r:System.Configuration.dll /r:Mono.Security.dll /r:System.Runtime.Serialization.dll -r:System.Web.ApplicationServices.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_5/System.IdentityModel.dll /d:NET_3_0 /r:System.dll /r:System.Xml.dll /r:System.Security.dll /r:System.Web.dll /r:System.Configuration.dll /r:Mono.Security.dll /r:System.Runtime.Serialization.dll -r:System.Web.ApplicationServices.dll</flags>
       <output>System.IdentityModel_test_net_4_5.dll</output>
       <built_sources></built_sources>
       <library_output>System.IdentityModel_test_net_4_5.dll</library_output>
     <project dir="class/System.IdentityModel.Selectors" library="System.IdentityModel.Selectors-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig /d:NET_3_0 /r:System.dll /r:System.Xml.dll /r:System.Security.dll /r:System.Runtime.Serialization.dll /r:System.IdentityModel.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig /d:NET_3_0 /r:System.dll /r:System.Xml.dll /r:System.Security.dll /r:System.Runtime.Serialization.dll /r:System.IdentityModel.dll</flags>
       <output>System.IdentityModel.Selectors.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/System.IdentityModel.Selectors.dll</library_output>
     <project dir="class/System.ServiceModel" library="System.ServiceModel-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig /nowarn:414,169,67,3005,436,219,618 /unsafe /d:TRACE /r:System.dll /r:System.Xml.dll /r:System.Core.dll /r:System.Runtime.Serialization.dll /resource:resources/WS-Addressing.schema /resource:resources/ws-addr.xsd /d:NET_3_0 /r:System.Configuration.dll /r:System.Data.dll /r:System.Security.dll /r:System.IdentityModel.dll /r:System.IdentityModel.Selectors.dll /r:System.Transactions.dll /r:System.Messaging.dll /r:System.Web.dll /r:System.Web.Services.dll /r:Mono.Security.dll /r:System.Web.ApplicationServices.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig /nowarn:414,169,67,3005,436,219,618 /unsafe /d:TRACE /r:System.dll /r:System.Xml.dll /r:System.Core.dll /r:System.Runtime.Serialization.dll /resource:resources/WS-Addressing.schema /resource:resources/ws-addr.xsd /d:NET_3_0 /r:System.Configuration.dll /r:System.Data.dll /r:System.Security.dll /r:System.IdentityModel.dll /r:System.IdentityModel.Selectors.dll /r:System.Transactions.dll /r:System.Messaging.dll /r:System.Web.dll /r:System.Web.Services.dll /r:Mono.Security.dll /r:System.Web.ApplicationServices.dll</flags>
       <output>System.ServiceModel.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/System.ServiceModel.dll</library_output>
     <project dir="class/System.ServiceModel" library="System.ServiceModel-tests-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -r:./../../class/lib/net_4_5/System.ServiceModel.dll /nowarn:414,169,67,3005,436,219,618 /unsafe /d:TRACE /r:System.dll /r:System.Xml.dll /r:System.Core.dll /r:System.Runtime.Serialization.dll /resource:resources/WS-Addressing.schema /resource:resources/ws-addr.xsd /d:NET_3_0 /r:System.Configuration.dll /r:System.Data.dll /r:System.Security.dll /r:System.IdentityModel.dll /r:System.IdentityModel.Selectors.dll /r:System.Transactions.dll /r:System.Messaging.dll /r:System.Web.dll /r:System.Web.Services.dll /r:Mono.Security.dll /r:System.Web.ApplicationServices.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_5/System.ServiceModel.dll /nowarn:414,169,67,3005,436,219,618 /unsafe /d:TRACE /r:System.dll /r:System.Xml.dll /r:System.Core.dll /r:System.Runtime.Serialization.dll /resource:resources/WS-Addressing.schema /resource:resources/ws-addr.xsd /d:NET_3_0 /r:System.Configuration.dll /r:System.Data.dll /r:System.Security.dll /r:System.IdentityModel.dll /r:System.IdentityModel.Selectors.dll /r:System.Transactions.dll /r:System.Messaging.dll /r:System.Web.dll /r:System.Web.Services.dll /r:Mono.Security.dll /r:System.Web.ApplicationServices.dll</flags>
       <output>System.ServiceModel_test_net_4_5.dll</output>
       <built_sources></built_sources>
       <library_output>System.ServiceModel_test_net_4_5.dll</library_output>
     <project dir="class/System.Web.Extensions" library="System.Web.Extensions-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig -unsafe -define:NET_3_5 -define:SYSTEM_WEB_EXTENSIONS -r:mscorlib.dll -r:System.dll -r:System.Core.dll -r:System.Drawing.dll -r:System.Data.dll -r:System.Data.Linq.dll -r:System.Xml.dll -r:System.Web.dll -r:System.Web.Services.dll -r:System.Configuration.dll -r:System.EnterpriseServices.dll -r:System.ServiceModel.dll -r:System.Web.ApplicationServices.dll /resource:../MicrosoftAjaxLibrary/System.Web.Extensions/3.5.0.0/3.5.21022.8/MicrosoftAjax.debug.js /resource:../MicrosoftAjaxLibrary/System.Web.Extensions/3.5.0.0/3.5.21022.8/MicrosoftAjax.js /resource:../MicrosoftAjaxLibrary/System.Web.Extensions/3.5.0.0/3.5.21022.8/MicrosoftAjaxTimer.debug.js /resource:../MicrosoftAjaxLibrary/System.Web.Extensions/3.5.0.0/3.5.21022.8/MicrosoftAjaxTimer.js /resource:../MicrosoftAjaxLibrary/System.Web.Extensions/3.5.0.0/3.5.21022.8/MicrosoftAjaxWebForms.debug.js /resource:../MicrosoftAjaxLibrary/System.Web.Extensions/3.5.0.0/3.5.21022.8/MicrosoftAjaxWebForms.js</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig -unsafe -define:NET_3_5 -define:SYSTEM_WEB_EXTENSIONS -r:mscorlib.dll -r:System.dll -r:System.Core.dll -r:System.Drawing.dll -r:System.Data.dll -r:System.Data.Linq.dll -r:System.Xml.dll -r:System.Web.dll -r:System.Web.Services.dll -r:System.Configuration.dll -r:System.EnterpriseServices.dll -r:System.ServiceModel.dll -r:System.Web.ApplicationServices.dll /resource:../MicrosoftAjaxLibrary/System.Web.Extensions/3.5.0.0/3.5.21022.8/MicrosoftAjax.debug.js /resource:../MicrosoftAjaxLibrary/System.Web.Extensions/3.5.0.0/3.5.21022.8/MicrosoftAjax.js /resource:../MicrosoftAjaxLibrary/System.Web.Extensions/3.5.0.0/3.5.21022.8/MicrosoftAjaxTimer.debug.js /resource:../MicrosoftAjaxLibrary/System.Web.Extensions/3.5.0.0/3.5.21022.8/MicrosoftAjaxTimer.js /resource:../MicrosoftAjaxLibrary/System.Web.Extensions/3.5.0.0/3.5.21022.8/MicrosoftAjaxWebForms.debug.js /resource:../MicrosoftAjaxLibrary/System.Web.Extensions/3.5.0.0/3.5.21022.8/MicrosoftAjaxWebForms.js</flags>
       <output>System.Web.Extensions.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/System.Web.Extensions.dll</library_output>
     <project dir="class/System.Web.Extensions" library="System.Web.Extensions-tests-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -r:./../../class/lib/net_4_5/System.Web.Extensions.dll -unsafe -define:NET_3_5 -define:SYSTEM_WEB_EXTENSIONS -r:mscorlib.dll -r:System.dll -r:System.Core.dll -r:System.Drawing.dll -r:System.Data.dll -r:System.Data.Linq.dll -r:System.Xml.dll -r:System.Web.dll -r:System.Web.Services.dll -r:System.Configuration.dll -r:System.EnterpriseServices.dll -r:System.ServiceModel.dll -r:System.Web.ApplicationServices.dll /resource:../MicrosoftAjaxLibrary/System.Web.Extensions/3.5.0.0/3.5.21022.8/MicrosoftAjax.debug.js /resource:../MicrosoftAjaxLibrary/System.Web.Extensions/3.5.0.0/3.5.21022.8/MicrosoftAjax.js /resource:../MicrosoftAjaxLibrary/System.Web.Extensions/3.5.0.0/3.5.21022.8/MicrosoftAjaxTimer.debug.js /resource:../MicrosoftAjaxLibrary/System.Web.Extensions/3.5.0.0/3.5.21022.8/MicrosoftAjaxTimer.js /resource:../MicrosoftAjaxLibrary/System.Web.Extensions/3.5.0.0/3.5.21022.8/MicrosoftAjaxWebForms.debug.js /resource:../MicrosoftAjaxLibrary/System.Web.Extensions/3.5.0.0/3.5.21022.8/MicrosoftAjaxWebForms.js -doc:System.Web.Extensions_test_net_4_5.xml -nowarn:219,169,1591 /resource:Test/resources/Web.mono.config /resource:Test/resources/profile.config.4.5 /resource:Test/resources/profile.config.4.0 /resource:Test/resources/profile.config.2.0 /resource:Test/resources/ListViewSort.aspx /resource:Test/resources/ListViewTest.aspx /resource:Test/resources/ListViewTotalRowCount_Bug535701_1.aspx /resource:Test/resources/ListViewTotalRowCount_Bug535701_2.aspx /resource:Test/resources/ListViewTotalRowCount_Bug604053.aspx /resource:../System.Web/Test/mainsoft/NunitWeb/NunitWeb/Resources/MyPage.aspx.cs /resource:../System.Web/Test/mainsoft/NunitWeb/NunitWeb/Resources/Global.asax /resource:../System.Web/Test/mainsoft/NunitWeb/NunitWeb/Resources/My.ashx /resource:../System.Web/Test/mainsoft/NunitWeb/NunitWeb/Resources/MyPage.aspx /resource:../System.Web/Test/mainsoft/NunitWeb/NunitWeb/Resources/MyPageWithDerivedMaster.aspx /resource:../System.Web/Test/mainsoft/NunitWeb/NunitWeb/Resources/MyPageWithMaster.aspx /resource:../System.Web/Test/mainsoft/NunitWeb/NunitWeb/Resources/MyPageWithMasterInvalidPlaceHolder.aspx /resource:../System.Web/Test/mainsoft/NunitWeb/NunitWeb/Resources/MyDerived.master /resource:../System.Web/Test/mainsoft/NunitWeb/NunitWeb/Resources/My.master -r:SystemWebTestShim.dll -define:SYSTEM_WEB_EXTENSIONS</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_5/System.Web.Extensions.dll -unsafe -define:NET_3_5 -define:SYSTEM_WEB_EXTENSIONS -r:mscorlib.dll -r:System.dll -r:System.Core.dll -r:System.Drawing.dll -r:System.Data.dll -r:System.Data.Linq.dll -r:System.Xml.dll -r:System.Web.dll -r:System.Web.Services.dll -r:System.Configuration.dll -r:System.EnterpriseServices.dll -r:System.ServiceModel.dll -r:System.Web.ApplicationServices.dll /resource:../MicrosoftAjaxLibrary/System.Web.Extensions/3.5.0.0/3.5.21022.8/MicrosoftAjax.debug.js /resource:../MicrosoftAjaxLibrary/System.Web.Extensions/3.5.0.0/3.5.21022.8/MicrosoftAjax.js /resource:../MicrosoftAjaxLibrary/System.Web.Extensions/3.5.0.0/3.5.21022.8/MicrosoftAjaxTimer.debug.js /resource:../MicrosoftAjaxLibrary/System.Web.Extensions/3.5.0.0/3.5.21022.8/MicrosoftAjaxTimer.js /resource:../MicrosoftAjaxLibrary/System.Web.Extensions/3.5.0.0/3.5.21022.8/MicrosoftAjaxWebForms.debug.js /resource:../MicrosoftAjaxLibrary/System.Web.Extensions/3.5.0.0/3.5.21022.8/MicrosoftAjaxWebForms.js -doc:System.Web.Extensions_test_net_4_5.xml -nowarn:219,169,1591 /resource:Test/resources/Web.mono.config /resource:Test/resources/profile.config.4.5 /resource:Test/resources/profile.config.4.0 /resource:Test/resources/profile.config.2.0 /resource:Test/resources/ListViewSort.aspx /resource:Test/resources/ListViewTest.aspx /resource:Test/resources/ListViewTotalRowCount_Bug535701_1.aspx /resource:Test/resources/ListViewTotalRowCount_Bug535701_2.aspx /resource:Test/resources/ListViewTotalRowCount_Bug604053.aspx /resource:../System.Web/Test/mainsoft/NunitWeb/NunitWeb/Resources/MyPage.aspx.cs /resource:../System.Web/Test/mainsoft/NunitWeb/NunitWeb/Resources/Global.asax /resource:../System.Web/Test/mainsoft/NunitWeb/NunitWeb/Resources/My.ashx /resource:../System.Web/Test/mainsoft/NunitWeb/NunitWeb/Resources/MyPage.aspx /resource:../System.Web/Test/mainsoft/NunitWeb/NunitWeb/Resources/MyPageWithDerivedMaster.aspx /resource:../System.Web/Test/mainsoft/NunitWeb/NunitWeb/Resources/MyPageWithMaster.aspx /resource:../System.Web/Test/mainsoft/NunitWeb/NunitWeb/Resources/MyPageWithMasterInvalidPlaceHolder.aspx /resource:../System.Web/Test/mainsoft/NunitWeb/NunitWeb/Resources/MyDerived.master /resource:../System.Web/Test/mainsoft/NunitWeb/NunitWeb/Resources/My.master -r:SystemWebTestShim.dll -define:SYSTEM_WEB_EXTENSIONS</flags>
       <output>System.Web.Extensions_test_net_4_5.dll</output>
       <built_sources></built_sources>
       <library_output>System.Web.Extensions_test_net_4_5.dll</library_output>
     <project dir="class/System.Web.Extensions.Design" library="System.Web.Extensions.Design-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig -define:NET_3_5 -r:System.dll -r:System.Design.dll -r:System.Drawing.dll -r:System.Windows.Forms.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig -define:NET_3_5 -r:System.dll -r:System.Design.dll -r:System.Drawing.dll -r:System.Windows.Forms.dll</flags>
       <output>System.Web.Extensions.Design.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/System.Web.Extensions.Design.dll</library_output>
     <project dir="class/System.ComponentModel.DataAnnotations" library="System.ComponentModel.DataAnnotations-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig /r:System.dll /r:System.Core.dll /r:System.Data.dll /r:System.Xml.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig /r:System.dll /r:System.Core.dll /r:System.Data.dll /r:System.Xml.dll</flags>
       <output>System.ComponentModel.DataAnnotations.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/System.ComponentModel.DataAnnotations.dll</library_output>
     <project dir="class/System.ComponentModel.DataAnnotations" library="System.ComponentModel.DataAnnotations-tests-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -r:./../../class/lib/net_4_5/System.ComponentModel.DataAnnotations.dll /r:System.dll /r:System.Core.dll /r:System.Data.dll /r:System.Xml.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_5/System.ComponentModel.DataAnnotations.dll /r:System.dll /r:System.Core.dll /r:System.Data.dll /r:System.Xml.dll</flags>
       <output>System.ComponentModel.DataAnnotations_test_net_4_5.dll</output>
       <built_sources></built_sources>
       <library_output>System.ComponentModel.DataAnnotations_test_net_4_5.dll</library_output>
     <project dir="class/System.Web.DynamicData" library="System.Web.DynamicData-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig /r:System.dll /r:System.Core.dll /r:System.ComponentModel.DataAnnotations.dll /r:System.Data.dll /r:System.Data.Linq.dll /r:System.Drawing.dll /r:System.Web.dll /r:System.Web.Extensions.dll /r:System.Web.Abstractions.dll /r:System.Web.Routing.dll -r:System.Web.ApplicationServices.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig /r:System.dll /r:System.Core.dll /r:System.ComponentModel.DataAnnotations.dll /r:System.Data.dll /r:System.Data.Linq.dll /r:System.Drawing.dll /r:System.Web.dll /r:System.Web.Extensions.dll /r:System.Web.Abstractions.dll /r:System.Web.Routing.dll -r:System.Web.ApplicationServices.dll</flags>
       <output>System.Web.DynamicData.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/System.Web.DynamicData.dll</library_output>
     <project dir="class/System.Web.DynamicData" library="System.Web.DynamicData-tests-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -r:./../../class/lib/net_4_5/System.Web.DynamicData.dll /r:System.dll /r:System.Core.dll /r:System.ComponentModel.DataAnnotations.dll /r:System.Data.dll /r:System.Data.Linq.dll /r:System.Drawing.dll /r:System.Web.dll /r:System.Web.Extensions.dll /r:System.Web.Abstractions.dll /r:System.Web.Routing.dll -r:System.Web.ApplicationServices.dll -r:System.ComponentModel.DataAnnotations.dll -r:System.Configuration.dll /resource:Test/WebPages/DynamicData/Content/FilterUserControl.ascx,MonoTests.WebPages.DynamicData.Content.FilterUserControl.ascx /resource:Test/WebPages/DynamicData/Content/FilterUserControl.ascx.cs,MonoTests.WebPages.DynamicData.Content.FilterUserControl.ascx.cs /resource:Test/WebPages/DynamicData/Content/GridViewPager.ascx,MonoTests.WebPages.DynamicData.Content.GridViewPager.ascx /resource:Test/WebPages/DynamicData/Content/GridViewPager.ascx.cs,MonoTests.WebPages.DynamicData.Content.GridViewPager.ascx.cs /resource:Test/WebPages/DynamicData/Content/Images/Back.gif,MonoTests.WebPages.DynamicData.Content.Images.Back.gif /resource:Test/WebPages/DynamicData/Content/Images/header_back.gif,MonoTests.WebPages.DynamicData.Content.Images.header_back.gif /resource:Test/WebPages/DynamicData/Content/Images/PgFirst.gif,MonoTests.WebPages.DynamicData.Content.Images.PgFirst.gif /resource:Test/WebPages/DynamicData/Content/Images/PgLast.gif,MonoTests.WebPages.DynamicData.Content.Images.PgLast.gif /resource:Test/WebPages/DynamicData/Content/Images/PgNext.gif,MonoTests.WebPages.DynamicData.Content.Images.PgNext.gif /resource:Test/WebPages/DynamicData/Content/Images/PgPrev.gif,MonoTests.WebPages.DynamicData.Content.Images.PgPrev.gif /resource:Test/WebPages/DynamicData/Content/Images/plus.gif,MonoTests.WebPages.DynamicData.Content.Images.plus.gif /resource:Test/WebPages/DynamicData/FieldTemplates/Boolean.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.Boolean.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/Boolean.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.Boolean.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates/Boolean_Edit.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.Boolean_Edit.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/Boolean_Edit.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.Boolean_Edit.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates/Children.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.Children.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/Children.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.Children.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates/CustomColor.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.CustomColor.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/CustomColor.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.CustomColor.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates/CustomFieldTemplate.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.CustomFieldTemplate.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/CustomFieldTemplate.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.CustomFieldTemplate.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates/DateTime.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.DateTime.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/DateTime.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.DateTime.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates/DateTime_Edit.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.DateTime_Edit.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/DateTime_Edit.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.DateTime_Edit.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates/Decimal_Edit.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.Decimal_Edit.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/Decimal_Edit.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.Decimal_Edit.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates/ForeignKey.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.ForeignKey.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/ForeignKey.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.ForeignKey.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates/ForeignKey_Edit.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.ForeignKey_Edit.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/ForeignKey_Edit.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.ForeignKey_Edit.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates/Integer_Edit.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.Integer_Edit.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/Integer_Edit.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.Integer_Edit.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates/MultilineText_Edit.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.MultilineText_Edit.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/MultilineText_Edit.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.MultilineText_Edit.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates/MyCustomUIHintTemplate_Text.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.MyCustomUIHintTemplate_Text.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/MyCustomUIHintTemplate_Text.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.MyCustomUIHintTemplate_Text.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Boolean.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Boolean.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Boolean.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Boolean.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Byte.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Byte.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Byte[].ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Byte[].ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Byte.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Byte.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Byte[].ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Byte[].ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Char.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Char.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Char.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Char.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/FooEmpty.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.FooEmpty.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/FooEmpty.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.FooEmpty.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/ICollection.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.ICollection.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/ICollection.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.ICollection.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Int16.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Int16.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Int16.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Int16.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Int32.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Int32.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Int32.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Int32.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Int64.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Int64.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Int64.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Int64.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/MonoTests.Common.FooEmpty.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.MonoTests.Common.FooEmpty.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/MonoTests.Common.FooEmpty.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.MonoTests.Common.FooEmpty.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Object.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Object.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Object.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Object.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/SByte.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.SByte.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/SByte.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.SByte.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/String.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.String.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/String.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.String.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Boolean.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Boolean.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Boolean.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Boolean.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Byte.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Byte.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Byte[].ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Byte[].ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Byte.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Byte.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Byte[].ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Byte[].ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Char.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Char.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Char.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Char.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Collections.Generic.List`1[System.String].ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Collections.Generic.List`1[System.String].ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Collections.Generic.List`1[System.String].ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Collections.Generic.List`1[System.String].ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Collections.ICollection.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Collections.ICollection.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Collections.ICollection.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Collections.ICollection.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Int16.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Int16.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Int16.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Int16.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Int32.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Int32.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Int32.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Int32.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Int64.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Int64.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Int64.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Int64.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Object.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Object.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Object.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Object.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.SByte.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.SByte.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.SByte.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.SByte.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.String.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.String.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.String.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.String.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.UInt16.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.UInt16.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.UInt16.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.UInt16.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.UInt32.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.UInt32.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.UInt32.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.UInt32.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.UInt64.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.UInt64.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.UInt64.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.UInt64.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/UInt16.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.UInt16.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/UInt16.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.UInt16.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/UInt32.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.UInt32.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/UInt32.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.UInt32.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/UInt64.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.UInt64.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/UInt64.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.UInt64.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates/PlainControlTemplate.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.PlainControlTemplate.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/PlainControlTemplate.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.PlainControlTemplate.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates/Text.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.Text.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/Text.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.Text.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates/Text_Edit.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.Text_Edit.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/Text_Edit.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.Text_Edit.ascx.cs /resource:Test/WebPages/DynamicData/PageTemplates/Details.aspx,MonoTests.WebPages.DynamicData.PageTemplates.Details.aspx /resource:Test/WebPages/DynamicData/PageTemplates/Details.aspx.cs,MonoTests.WebPages.DynamicData.PageTemplates.Details.aspx.cs /resource:Test/WebPages/DynamicData/PageTemplates/Edit.aspx,MonoTests.WebPages.DynamicData.PageTemplates.Edit.aspx /resource:Test/WebPages/DynamicData/PageTemplates/Edit.aspx.cs,MonoTests.WebPages.DynamicData.PageTemplates.Edit.aspx.cs /resource:Test/WebPages/DynamicData/PageTemplates/Insert.aspx,MonoTests.WebPages.DynamicData.PageTemplates.Insert.aspx /resource:Test/WebPages/DynamicData/PageTemplates/Insert.aspx.cs,MonoTests.WebPages.DynamicData.PageTemplates.Insert.aspx.cs /resource:Test/WebPages/DynamicData/PageTemplates/List.aspx,MonoTests.WebPages.DynamicData.PageTemplates.List.aspx /resource:Test/WebPages/DynamicData/PageTemplates/List.aspx.cs,MonoTests.WebPages.DynamicData.PageTemplates.List.aspx.cs /resource:Test/WebPages/DynamicData/PageTemplates/ListDetails.aspx,MonoTests.WebPages.DynamicData.PageTemplates.ListDetails.aspx /resource:Test/WebPages/DynamicData/PageTemplates/ListDetails.aspx.cs,MonoTests.WebPages.DynamicData.PageTemplates.ListDetails.aspx.cs /resource:Test/WebPages/DynamicData/web.config,MonoTests.WebPages.DynamicData.web.config /resource:Test/WebPages/Global.asax,MonoTests.WebPages.Global.asax /resource:Test/WebPages/ListView_DynamicControl_01.aspx,MonoTests.WebPages.ListView_DynamicControl_01.aspx /resource:Test/WebPages/ListView_DynamicControl_01.aspx.cs,MonoTests.WebPages.ListView_DynamicControl_01.aspx.cs /resource:Test/WebPages/ListView_DynamicControl_02.aspx,MonoTests.WebPages.ListView_DynamicControl_02.aspx /resource:Test/WebPages/ListView_DynamicControl_02.aspx.cs,MonoTests.WebPages.ListView_DynamicControl_02.aspx.cs /resource:Test/WebPages/ListView_DynamicControl_03.aspx,MonoTests.WebPages.ListView_DynamicControl_03.aspx /resource:Test/WebPages/ListView_DynamicControl_03.aspx.cs,MonoTests.WebPages.ListView_DynamicControl_03.aspx.cs /resource:Test/WebPages/ListView_DynamicControl_04.aspx,MonoTests.WebPages.ListView_DynamicControl_04.aspx /resource:Test/WebPages/ListView_DynamicControl_04.aspx.cs,MonoTests.WebPages.ListView_DynamicControl_04.aspx.cs /resource:Test/WebPages/ListView_DynamicControl_05.aspx,MonoTests.WebPages.ListView_DynamicControl_05.aspx /resource:Test/WebPages/ListView_DynamicControl_05.aspx.cs,MonoTests.WebPages.ListView_DynamicControl_05.aspx.cs /resource:Test/WebPages/ListView_DynamicControl_06.aspx,MonoTests.WebPages.ListView_DynamicControl_06.aspx /resource:Test/WebPages/ListView_DynamicControl_06.aspx.cs,MonoTests.WebPages.ListView_DynamicControl_06.aspx.cs /resource:Test/WebPages/ListView_DynamicControl_07.aspx,MonoTests.WebPages.ListView_DynamicControl_07.aspx /resource:Test/WebPages/ListView_DynamicControl_07.aspx.cs,MonoTests.WebPages.ListView_DynamicControl_07.aspx.cs /resource:Test/WebPages/ListView_DynamicControl_08.aspx,MonoTests.WebPages.ListView_DynamicControl_08.aspx /resource:Test/WebPages/ListView_DynamicControl_08.aspx.cs,MonoTests.WebPages.ListView_DynamicControl_08.aspx.cs /resource:Test/WebPages/ListView_DynamicControl_09.aspx,MonoTests.WebPages.ListView_DynamicControl_09.aspx /resource:Test/WebPages/ListView_DynamicControl_09.aspx.cs,MonoTests.WebPages.ListView_DynamicControl_09.aspx.cs /resource:Test/WebPages/ListView_DynamicControl_10.aspx,MonoTests.WebPages.ListView_DynamicControl_10.aspx /resource:Test/WebPages/ListView_DynamicControl_10.aspx.cs,MonoTests.WebPages.ListView_DynamicControl_10.aspx.cs /resource:Test/WebPages/DynamicValidator_01.aspx,MonoTests.WebPages.DynamicValidator_01.aspx /resource:Test/WebPages/DynamicValidator_01.aspx.cs,MonoTests.WebPages.DynamicValidator_01.aspx.cs /resource:Test/WebPages/DynamicValidator_02.aspx,MonoTests.WebPages.DynamicValidator_02.aspx /resource:Test/WebPages/DynamicValidator_02.aspx.cs,MonoTests.WebPages.DynamicValidator_02.aspx.cs /resource:Test/WebPages/Site.css,MonoTests.WebPages.Site.css /resource:Test/WebPages/Site.master,MonoTests.WebPages.Site.master /resource:Test/WebPages/Site.master.cs,MonoTests.WebPages.Site.master.cs /resource:Test/WebPages/web.config.2.0,MonoTests.WebPages.web.config.2.0 /resource:Test/WebPages/web.config.4.0,MonoTests.WebPages.web.config.4.0 /resource:Test/WebPages/web.config.4.5,MonoTests.WebPages.web.config.4.5 -r:SystemWebTestShim.dll -r:System.Xml.dll -r:System.Web.ApplicationServices.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_5/System.Web.DynamicData.dll /r:System.dll /r:System.Core.dll /r:System.ComponentModel.DataAnnotations.dll /r:System.Data.dll /r:System.Data.Linq.dll /r:System.Drawing.dll /r:System.Web.dll /r:System.Web.Extensions.dll /r:System.Web.Abstractions.dll /r:System.Web.Routing.dll -r:System.Web.ApplicationServices.dll -r:System.ComponentModel.DataAnnotations.dll -r:System.Configuration.dll /resource:Test/WebPages/DynamicData/Content/FilterUserControl.ascx,MonoTests.WebPages.DynamicData.Content.FilterUserControl.ascx /resource:Test/WebPages/DynamicData/Content/FilterUserControl.ascx.cs,MonoTests.WebPages.DynamicData.Content.FilterUserControl.ascx.cs /resource:Test/WebPages/DynamicData/Content/GridViewPager.ascx,MonoTests.WebPages.DynamicData.Content.GridViewPager.ascx /resource:Test/WebPages/DynamicData/Content/GridViewPager.ascx.cs,MonoTests.WebPages.DynamicData.Content.GridViewPager.ascx.cs /resource:Test/WebPages/DynamicData/Content/Images/Back.gif,MonoTests.WebPages.DynamicData.Content.Images.Back.gif /resource:Test/WebPages/DynamicData/Content/Images/header_back.gif,MonoTests.WebPages.DynamicData.Content.Images.header_back.gif /resource:Test/WebPages/DynamicData/Content/Images/PgFirst.gif,MonoTests.WebPages.DynamicData.Content.Images.PgFirst.gif /resource:Test/WebPages/DynamicData/Content/Images/PgLast.gif,MonoTests.WebPages.DynamicData.Content.Images.PgLast.gif /resource:Test/WebPages/DynamicData/Content/Images/PgNext.gif,MonoTests.WebPages.DynamicData.Content.Images.PgNext.gif /resource:Test/WebPages/DynamicData/Content/Images/PgPrev.gif,MonoTests.WebPages.DynamicData.Content.Images.PgPrev.gif /resource:Test/WebPages/DynamicData/Content/Images/plus.gif,MonoTests.WebPages.DynamicData.Content.Images.plus.gif /resource:Test/WebPages/DynamicData/FieldTemplates/Boolean.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.Boolean.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/Boolean.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.Boolean.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates/Boolean_Edit.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.Boolean_Edit.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/Boolean_Edit.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.Boolean_Edit.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates/Children.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.Children.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/Children.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.Children.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates/CustomColor.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.CustomColor.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/CustomColor.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.CustomColor.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates/CustomFieldTemplate.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.CustomFieldTemplate.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/CustomFieldTemplate.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.CustomFieldTemplate.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates/DateTime.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.DateTime.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/DateTime.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.DateTime.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates/DateTime_Edit.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.DateTime_Edit.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/DateTime_Edit.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.DateTime_Edit.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates/Decimal_Edit.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.Decimal_Edit.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/Decimal_Edit.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.Decimal_Edit.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates/ForeignKey.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.ForeignKey.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/ForeignKey.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.ForeignKey.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates/ForeignKey_Edit.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.ForeignKey_Edit.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/ForeignKey_Edit.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.ForeignKey_Edit.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates/Integer_Edit.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.Integer_Edit.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/Integer_Edit.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.Integer_Edit.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates/MultilineText_Edit.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.MultilineText_Edit.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/MultilineText_Edit.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.MultilineText_Edit.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates/MyCustomUIHintTemplate_Text.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.MyCustomUIHintTemplate_Text.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/MyCustomUIHintTemplate_Text.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.MyCustomUIHintTemplate_Text.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Boolean.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Boolean.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Boolean.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Boolean.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Byte.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Byte.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Byte[].ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Byte[].ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Byte.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Byte.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Byte[].ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Byte[].ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Char.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Char.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Char.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Char.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/FooEmpty.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.FooEmpty.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/FooEmpty.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.FooEmpty.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/ICollection.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.ICollection.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/ICollection.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.ICollection.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Int16.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Int16.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Int16.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Int16.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Int32.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Int32.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Int32.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Int32.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Int64.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Int64.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Int64.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Int64.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/MonoTests.Common.FooEmpty.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.MonoTests.Common.FooEmpty.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/MonoTests.Common.FooEmpty.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.MonoTests.Common.FooEmpty.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Object.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Object.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Object.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Object.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/SByte.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.SByte.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/SByte.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.SByte.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/String.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.String.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/String.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.String.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Boolean.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Boolean.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Boolean.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Boolean.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Byte.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Byte.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Byte[].ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Byte[].ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Byte.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Byte.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Byte[].ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Byte[].ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Char.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Char.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Char.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Char.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Collections.Generic.List`1[System.String].ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Collections.Generic.List`1[System.String].ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Collections.Generic.List`1[System.String].ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Collections.Generic.List`1[System.String].ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Collections.ICollection.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Collections.ICollection.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Collections.ICollection.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Collections.ICollection.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Int16.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Int16.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Int16.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Int16.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Int32.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Int32.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Int32.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Int32.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Int64.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Int64.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Int64.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Int64.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Object.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Object.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Object.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Object.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.SByte.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.SByte.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.SByte.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.SByte.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.String.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.String.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.String.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.String.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.UInt16.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.UInt16.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.UInt16.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.UInt16.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.UInt32.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.UInt32.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.UInt32.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.UInt32.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.UInt64.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.UInt64.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.UInt64.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.UInt64.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/UInt16.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.UInt16.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/UInt16.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.UInt16.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/UInt32.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.UInt32.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/UInt32.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.UInt32.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/UInt64.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.UInt64.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/UInt64.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.UInt64.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates/PlainControlTemplate.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.PlainControlTemplate.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/PlainControlTemplate.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.PlainControlTemplate.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates/Text.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.Text.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/Text.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.Text.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates/Text_Edit.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.Text_Edit.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/Text_Edit.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.Text_Edit.ascx.cs /resource:Test/WebPages/DynamicData/PageTemplates/Details.aspx,MonoTests.WebPages.DynamicData.PageTemplates.Details.aspx /resource:Test/WebPages/DynamicData/PageTemplates/Details.aspx.cs,MonoTests.WebPages.DynamicData.PageTemplates.Details.aspx.cs /resource:Test/WebPages/DynamicData/PageTemplates/Edit.aspx,MonoTests.WebPages.DynamicData.PageTemplates.Edit.aspx /resource:Test/WebPages/DynamicData/PageTemplates/Edit.aspx.cs,MonoTests.WebPages.DynamicData.PageTemplates.Edit.aspx.cs /resource:Test/WebPages/DynamicData/PageTemplates/Insert.aspx,MonoTests.WebPages.DynamicData.PageTemplates.Insert.aspx /resource:Test/WebPages/DynamicData/PageTemplates/Insert.aspx.cs,MonoTests.WebPages.DynamicData.PageTemplates.Insert.aspx.cs /resource:Test/WebPages/DynamicData/PageTemplates/List.aspx,MonoTests.WebPages.DynamicData.PageTemplates.List.aspx /resource:Test/WebPages/DynamicData/PageTemplates/List.aspx.cs,MonoTests.WebPages.DynamicData.PageTemplates.List.aspx.cs /resource:Test/WebPages/DynamicData/PageTemplates/ListDetails.aspx,MonoTests.WebPages.DynamicData.PageTemplates.ListDetails.aspx /resource:Test/WebPages/DynamicData/PageTemplates/ListDetails.aspx.cs,MonoTests.WebPages.DynamicData.PageTemplates.ListDetails.aspx.cs /resource:Test/WebPages/DynamicData/web.config,MonoTests.WebPages.DynamicData.web.config /resource:Test/WebPages/Global.asax,MonoTests.WebPages.Global.asax /resource:Test/WebPages/ListView_DynamicControl_01.aspx,MonoTests.WebPages.ListView_DynamicControl_01.aspx /resource:Test/WebPages/ListView_DynamicControl_01.aspx.cs,MonoTests.WebPages.ListView_DynamicControl_01.aspx.cs /resource:Test/WebPages/ListView_DynamicControl_02.aspx,MonoTests.WebPages.ListView_DynamicControl_02.aspx /resource:Test/WebPages/ListView_DynamicControl_02.aspx.cs,MonoTests.WebPages.ListView_DynamicControl_02.aspx.cs /resource:Test/WebPages/ListView_DynamicControl_03.aspx,MonoTests.WebPages.ListView_DynamicControl_03.aspx /resource:Test/WebPages/ListView_DynamicControl_03.aspx.cs,MonoTests.WebPages.ListView_DynamicControl_03.aspx.cs /resource:Test/WebPages/ListView_DynamicControl_04.aspx,MonoTests.WebPages.ListView_DynamicControl_04.aspx /resource:Test/WebPages/ListView_DynamicControl_04.aspx.cs,MonoTests.WebPages.ListView_DynamicControl_04.aspx.cs /resource:Test/WebPages/ListView_DynamicControl_05.aspx,MonoTests.WebPages.ListView_DynamicControl_05.aspx /resource:Test/WebPages/ListView_DynamicControl_05.aspx.cs,MonoTests.WebPages.ListView_DynamicControl_05.aspx.cs /resource:Test/WebPages/ListView_DynamicControl_06.aspx,MonoTests.WebPages.ListView_DynamicControl_06.aspx /resource:Test/WebPages/ListView_DynamicControl_06.aspx.cs,MonoTests.WebPages.ListView_DynamicControl_06.aspx.cs /resource:Test/WebPages/ListView_DynamicControl_07.aspx,MonoTests.WebPages.ListView_DynamicControl_07.aspx /resource:Test/WebPages/ListView_DynamicControl_07.aspx.cs,MonoTests.WebPages.ListView_DynamicControl_07.aspx.cs /resource:Test/WebPages/ListView_DynamicControl_08.aspx,MonoTests.WebPages.ListView_DynamicControl_08.aspx /resource:Test/WebPages/ListView_DynamicControl_08.aspx.cs,MonoTests.WebPages.ListView_DynamicControl_08.aspx.cs /resource:Test/WebPages/ListView_DynamicControl_09.aspx,MonoTests.WebPages.ListView_DynamicControl_09.aspx /resource:Test/WebPages/ListView_DynamicControl_09.aspx.cs,MonoTests.WebPages.ListView_DynamicControl_09.aspx.cs /resource:Test/WebPages/ListView_DynamicControl_10.aspx,MonoTests.WebPages.ListView_DynamicControl_10.aspx /resource:Test/WebPages/ListView_DynamicControl_10.aspx.cs,MonoTests.WebPages.ListView_DynamicControl_10.aspx.cs /resource:Test/WebPages/DynamicValidator_01.aspx,MonoTests.WebPages.DynamicValidator_01.aspx /resource:Test/WebPages/DynamicValidator_01.aspx.cs,MonoTests.WebPages.DynamicValidator_01.aspx.cs /resource:Test/WebPages/DynamicValidator_02.aspx,MonoTests.WebPages.DynamicValidator_02.aspx /resource:Test/WebPages/DynamicValidator_02.aspx.cs,MonoTests.WebPages.DynamicValidator_02.aspx.cs /resource:Test/WebPages/Site.css,MonoTests.WebPages.Site.css /resource:Test/WebPages/Site.master,MonoTests.WebPages.Site.master /resource:Test/WebPages/Site.master.cs,MonoTests.WebPages.Site.master.cs /resource:Test/WebPages/web.config.2.0,MonoTests.WebPages.web.config.2.0 /resource:Test/WebPages/web.config.4.0,MonoTests.WebPages.web.config.4.0 /resource:Test/WebPages/web.config.4.5,MonoTests.WebPages.web.config.4.5 -r:SystemWebTestShim.dll -r:System.Xml.dll -r:System.Web.ApplicationServices.dll</flags>
       <output>System.Web.DynamicData_test_net_4_5.dll</output>
       <built_sources></built_sources>
       <library_output>System.Web.DynamicData_test_net_4_5.dll</library_output>
     <project dir="class/System.ServiceModel.Web" library="System.ServiceModel.Web-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig -r:System.dll -r:System.Xml.dll -r:System.Runtime.Serialization.dll -r:System.ServiceModel.dll -r:System.Core.dll -d:NET_3_5 -d:NET_3_0 -r:System.Configuration.dll -r:System.Web.Extensions.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig -r:System.dll -r:System.Xml.dll -r:System.Runtime.Serialization.dll -r:System.ServiceModel.dll -r:System.Core.dll -d:NET_3_5 -d:NET_3_0 -r:System.Configuration.dll -r:System.Web.Extensions.dll</flags>
       <output>System.ServiceModel.Web.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/System.ServiceModel.Web.dll</library_output>
     <project dir="class/System.ServiceModel.Web" library="System.ServiceModel.Web-tests-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -r:./../../class/lib/net_4_5/System.ServiceModel.Web.dll -r:System.dll -r:System.Xml.dll -r:System.Runtime.Serialization.dll -r:System.ServiceModel.dll -r:System.Core.dll -d:NET_3_5 -d:NET_3_0 -r:System.Configuration.dll -r:System.Web.Extensions.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_5/System.ServiceModel.Web.dll -r:System.dll -r:System.Xml.dll -r:System.Runtime.Serialization.dll -r:System.ServiceModel.dll -r:System.Core.dll -d:NET_3_5 -d:NET_3_0 -r:System.Configuration.dll -r:System.Web.Extensions.dll</flags>
       <output>System.ServiceModel.Web_test_net_4_5.dll</output>
       <built_sources></built_sources>
       <library_output>System.ServiceModel.Web_test_net_4_5.dll</library_output>
     <project dir="class/System.Web.Mvc2" library="System.Web.Mvc2-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig /warn:1 /keyfile:../winfx.pub /r:System.dll /r:System.Core.dll /r:System.Configuration.dll /r:System.Data.dll /r:System.Xml.dll /r:System.Web.dll /r:System.Web.Abstractions.dll /r:System.Web.Routing.dll /r:System.Web.Extensions.dll /r:System.ComponentModel.DataAnnotations.dll /r:System.Data.Linq.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig /warn:1 /keyfile:../winfx.pub /r:System.dll /r:System.Core.dll /r:System.Configuration.dll /r:System.Data.dll /r:System.Xml.dll /r:System.Web.dll /r:System.Web.Abstractions.dll /r:System.Web.Routing.dll /r:System.Web.Extensions.dll /r:System.ComponentModel.DataAnnotations.dll /r:System.Data.Linq.dll</flags>
       <output>dummy-System.Web.Mvc.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/tmp/dummy-System.Web.Mvc.dll</library_output>
     <project dir="class/Mono.C5" library="Mono.C5-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig /r:mscorlib.dll /r:System.dll -nowarn:169,219,414,1030,3001,3005,3006</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig /r:mscorlib.dll /r:System.dll -nowarn:169,219,414,1030,3001,3005,3006</flags>
       <output>Mono.C5.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/Mono.C5.dll</library_output>
     <project dir="class/Mono.C5" library="Mono.C5-tests-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -r:./../../class/lib/net_4_5/Mono.C5.dll /r:mscorlib.dll /r:System.dll -nowarn:169,219,414,1030,3001,3005,3006 -nowarn:0618 -nowarn:219 -nowarn:169</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_5/Mono.C5.dll /r:mscorlib.dll /r:System.dll -nowarn:169,219,414,1030,3001,3005,3006 -nowarn:0618 -nowarn:219 -nowarn:169</flags>
       <output>Mono.C5_test_net_4_5.dll</output>
       <built_sources></built_sources>
       <library_output>Mono.C5_test_net_4_5.dll</library_output>
     <project dir="class/Mono.Management" library="Mono.Management-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig /r:mscorlib.dll /r:System.dll /r:Mono.Posix.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig /r:mscorlib.dll /r:System.dll /r:Mono.Posix.dll</flags>
       <output>Mono.Management.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/tmp/Mono.Management.dll</library_output>
     <project dir="class/Mono.Options" library="Mono.Options-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig /r:mscorlib.dll /r:System.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig /r:mscorlib.dll /r:System.dll</flags>
       <output>Mono.Options.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/Mono.Options.dll</library_output>
     <project dir="class/Mono.Options" library="Mono.Options-tests-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -r:./../../class/lib/net_4_5/Mono.Options.dll /r:Mono.Posix.dll /r:System.dll /r:System.Core.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_5/Mono.Options.dll /r:Mono.Posix.dll /r:System.dll /r:System.Core.dll</flags>
       <output>Mono.Options_test_net_4_5.dll</output>
       <built_sources></built_sources>
       <library_output>Mono.Options_test_net_4_5.dll</library_output>
     <project dir="class/Mono.Simd" library="Mono.Simd-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig -r:mscorlib.dll -r:System.Core.dll /unsafe</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig -r:mscorlib.dll -r:System.Core.dll /unsafe</flags>
       <output>Mono.Simd.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/Mono.Simd.dll</library_output>
     <project dir="class/Mono.Tasklets" library="Mono.Tasklets-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig</flags>
       <output>Mono.Tasklets.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/Mono.Tasklets.dll</library_output>
     <project dir="class/System.Dynamic" library="System.Dynamic-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig -unsafe -d:CODEPLEX_40 -r:System.Core.dll -r:System.dll -nowarn:414,169</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig -unsafe -d:CODEPLEX_40 -r:System.Core.dll -r:System.dll -nowarn:414,169</flags>
       <output>System.Dynamic.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/System.Dynamic.dll</library_output>
     <project dir="class/Mono.CSharp" library="Mono.CSharp-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig -r:System.Core.dll -r:System.Xml.dll -r:System.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig -r:System.Core.dll -r:System.Xml.dll -r:System.dll</flags>
       <output>Mono.CSharp.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/Mono.CSharp.dll</library_output>
     <project dir="class/Mono.CSharp" library="Mono.CSharp-tests-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -r:./../../class/lib/net_4_5/Mono.CSharp.dll -r:System.Core.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_5/Mono.CSharp.dll -r:System.Core.dll</flags>
       <output>Mono.CSharp_test_net_4_5.dll</output>
       <built_sources></built_sources>
       <library_output>Mono.CSharp_test_net_4_5.dll</library_output>
     <project dir="class/Moonlight.Build.Tasks" library="Moonlight.Build.Tasks-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig /r:mscorlib.dll /r:System.dll /r:System.Xml.dll /r:Microsoft.Build.Engine.dll /r:Microsoft.Build.Framework.dll /r:Microsoft.Build.Utilities.v4.0.dll /r:Microsoft.Build.Tasks.v4.0.dll /r:ICSharpCode.SharpZipLib.dll -resource:Moonlight.Build.Tasks/PreviewTemplate.html</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig /r:mscorlib.dll /r:System.dll /r:System.Xml.dll /r:Microsoft.Build.Engine.dll /r:Microsoft.Build.Framework.dll /r:Microsoft.Build.Utilities.v4.0.dll /r:Microsoft.Build.Tasks.v4.0.dll /r:ICSharpCode.SharpZipLib.dll -resource:Moonlight.Build.Tasks/PreviewTemplate.html</flags>
       <output>Moonlight.Build.Tasks.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/Moonlight.Build.Tasks.dll</library_output>
     <project dir="class/System.Net" library="System.Net-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig -unsafe -r:System.dll -r:System.Core.dll -r:System.Xml.dll -d:NET_2_1 -d:NET_2_0 -d:NET_1_1 -d:NET_3_5 -nowarn:1720</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig -unsafe -r:System.dll -r:System.Core.dll -r:System.Xml.dll -d:NET_2_1 -d:NET_2_0 -d:NET_1_1 -d:NET_3_5 -nowarn:1720</flags>
       <output>System.Net.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/System.Net.dll</library_output>
     <project dir="class/System.Numerics" library="System.Numerics-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig -r:System.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig -r:System.dll</flags>
       <output>System.Numerics.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/System.Numerics.dll</library_output>
     <project dir="class/System.Numerics" library="System.Numerics-tests-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -r:./../../class/lib/net_4_5/System.Numerics.dll -r:System.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_5/System.Numerics.dll -r:System.dll</flags>
       <output>System.Numerics_test_net_4_5.dll</output>
       <built_sources></built_sources>
       <library_output>System.Numerics_test_net_4_5.dll</library_output>
     <project dir="class/Microsoft.CSharp" library="Microsoft.CSharp-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig -r:System.Core.dll -r:Mono.CSharp.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig -r:System.Core.dll -r:Mono.CSharp.dll</flags>
       <output>Microsoft.CSharp.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/Microsoft.CSharp.dll</library_output>
     <project dir="class/Microsoft.Build" library="Microsoft.Build-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig /r:mscorlib.dll /r:System.dll /r:System.Core.dll /r:System.Xml.dll /r:Microsoft.Build.Engine.dll /r:Microsoft.Build.Framework.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig /r:mscorlib.dll /r:System.dll /r:System.Core.dll /r:System.Xml.dll /r:Microsoft.Build.Engine.dll /r:Microsoft.Build.Framework.dll</flags>
       <output>Microsoft.Build.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/Microsoft.Build.dll</library_output>
     <project dir="class/Microsoft.Build" library="Microsoft.Build-tests-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -r:./../../class/lib/net_4_5/Microsoft.Build.dll /r:System.Core.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_5/Microsoft.Build.dll /r:System.Core.dll</flags>
       <output>Microsoft.Build_test_net_4_5.dll</output>
       <built_sources></built_sources>
       <library_output>Microsoft.Build_test_net_4_5.dll</library_output>
     <project dir="class/System.Windows.Forms.DataVisualization" library="System.Windows.Forms.DataVisualization-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig -r:System -r:System.Drawing -r:System.Windows.Forms -r:System.Core</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig -r:System -r:System.Drawing -r:System.Windows.Forms -r:System.Core</flags>
       <output>System.Windows.Forms.DataVisualization.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/System.Windows.Forms.DataVisualization.dll</library_output>
     <project dir="class/System.Windows.Forms.DataVisualization" library="System.Windows.Forms.DataVisualization-tests-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -r:./../../class/lib/net_4_5/System.Windows.Forms.DataVisualization.dll -r:System -r:System.Drawing -r:System.Windows.Forms -r:System.Core</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_5/System.Windows.Forms.DataVisualization.dll -r:System -r:System.Drawing -r:System.Windows.Forms -r:System.Core</flags>
       <output>System.Windows.Forms.DataVisualization_test_net_4_5.dll</output>
       <built_sources></built_sources>
       <library_output>System.Windows.Forms.DataVisualization_test_net_4_5.dll</library_output>
     <project dir="class/System.Xaml" library="System.Xaml-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig /r:System.dll /r:System.Xml.dll /r:System.Core.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig /r:System.dll /r:System.Xml.dll /r:System.Core.dll</flags>
       <output>System.Xaml.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/System.Xaml.dll</library_output>
     <project dir="class/System.Xaml" library="System.Xaml-tests-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -r:./../../class/lib/net_4_5/System.Xaml.dll /r:System.dll /r:System.Xml.dll /r:System.Core.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_5/System.Xaml.dll /r:System.dll /r:System.Xml.dll /r:System.Core.dll</flags>
       <output>System.Xaml_test_net_4_5.dll</output>
       <built_sources></built_sources>
       <library_output>System.Xaml_test_net_4_5.dll</library_output>
     <project dir="class/WindowsBase" library="WindowsBase-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig -unsafe -r:System.dll -r:System.Xml.dll -r:System.Xaml.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig -unsafe -r:System.dll -r:System.Xml.dll -r:System.Xaml.dll</flags>
       <output>WindowsBase.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/WindowsBase.dll</library_output>
     <project dir="class/WindowsBase" library="WindowsBase-tests-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -r:./../../class/lib/net_4_5/WindowsBase.dll -unsafe -r:WindowsBase.dll -r:System.dll -r:System.Xml.dll -r:System.Core.dll -r:System.Xaml.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_5/WindowsBase.dll -unsafe -r:WindowsBase.dll -r:System.dll -r:System.Xml.dll -r:System.Core.dll -r:System.Xaml.dll</flags>
       <output>WindowsBase_test_net_4_5.dll</output>
       <built_sources></built_sources>
       <library_output>WindowsBase_test_net_4_5.dll</library_output>
     <project dir="class/System.ServiceModel.Routing" library="System.ServiceModel.Routing-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig -r:System.dll -r:System.Xml.dll -r:System.Runtime.Serialization.dll -r:System.ServiceModel.dll -r:System.Core.dll -d:NET_3_5 -d:NET_3_0 -r:System.Configuration.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig -r:System.dll -r:System.Xml.dll -r:System.Runtime.Serialization.dll -r:System.ServiceModel.dll -r:System.Core.dll -d:NET_3_5 -d:NET_3_0 -r:System.Configuration.dll</flags>
       <output>System.ServiceModel.Routing.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/System.ServiceModel.Routing.dll</library_output>
     <project dir="class/System.ServiceModel.Discovery" library="System.ServiceModel.Discovery-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig -r:System.dll -r:System.Xml.dll -r:System.Runtime.Serialization.dll -r:System.ServiceModel.dll -r:System.Core.dll -r:System.Xml.Linq.dll -d:NET_3_5 -d:NET_3_0 -r:System.Configuration.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig -r:System.dll -r:System.Xml.dll -r:System.Runtime.Serialization.dll -r:System.ServiceModel.dll -r:System.Core.dll -r:System.Xml.Linq.dll -d:NET_3_5 -d:NET_3_0 -r:System.Configuration.dll</flags>
       <output>System.ServiceModel.Discovery.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/System.ServiceModel.Discovery.dll</library_output>
     <project dir="class/System.ServiceModel.Discovery" library="System.ServiceModel.Discovery-tests-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -r:./../../class/lib/net_4_5/System.ServiceModel.Discovery.dll -r:System.dll -r:System.Xml.dll -r:System.Runtime.Serialization.dll -r:System.ServiceModel.dll -r:System.Core.dll -r:System.Xml.Linq.dll -d:NET_3_5 -d:NET_3_0 -r:System.Configuration.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_5/System.ServiceModel.Discovery.dll -r:System.dll -r:System.Xml.dll -r:System.Runtime.Serialization.dll -r:System.ServiceModel.dll -r:System.Core.dll -r:System.Xml.Linq.dll -d:NET_3_5 -d:NET_3_0 -r:System.Configuration.dll</flags>
       <output>System.ServiceModel.Discovery_test_net_4_5.dll</output>
       <built_sources></built_sources>
       <library_output>System.ServiceModel.Discovery_test_net_4_5.dll</library_output>
     <project dir="class/System.Runtime.Caching" library="System.Runtime.Caching-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig -r:System.dll -r:System.Data.dll -r:System.Configuration.dll -r:System.Core.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig -r:System.dll -r:System.Data.dll -r:System.Configuration.dll -r:System.Core.dll</flags>
       <output>System.Runtime.Caching.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/System.Runtime.Caching.dll</library_output>
     <project dir="class/System.Runtime.Caching" library="System.Runtime.Caching-tests-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -r:./../../class/lib/net_4_5/System.Runtime.Caching.dll -r:System.dll -r:System.Data.dll -r:System.Configuration.dll -r:System.Core.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_5/System.Runtime.Caching.dll -r:System.dll -r:System.Data.dll -r:System.Configuration.dll -r:System.Core.dll</flags>
       <output>System.Runtime.Caching_test_net_4_5.dll</output>
       <built_sources></built_sources>
       <library_output>System.Runtime.Caching_test_net_4_5.dll</library_output>
     <project dir="class/System.Runtime.DurableInstancing" library="System.Runtime.DurableInstancing-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig -r:System.dll -r:System.Xml.dll -r:System.Runtime.Serialization.dll -r:System.Core.dll -r:System.Xml.Linq.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig -r:System.dll -r:System.Xml.dll -r:System.Runtime.Serialization.dll -r:System.Core.dll -r:System.Xml.Linq.dll</flags>
       <output>System.Runtime.DurableInstancing.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/System.Runtime.DurableInstancing.dll</library_output>
     <project dir="class/System.Runtime.DurableInstancing" library="System.Runtime.DurableInstancing-tests-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -r:./../../class/lib/net_4_5/System.Runtime.DurableInstancing.dll -r:System.dll -r:System.Xml.dll -r:System.Runtime.Serialization.dll -r:System.Core.dll -r:System.Xml.Linq.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_5/System.Runtime.DurableInstancing.dll -r:System.dll -r:System.Xml.dll -r:System.Runtime.Serialization.dll -r:System.Core.dll -r:System.Xml.Linq.dll</flags>
       <output>System.Runtime.DurableInstancing_test_net_4_5.dll</output>
       <built_sources></built_sources>
       <library_output>System.Runtime.DurableInstancing_test_net_4_5.dll</library_output>
     <project dir="class/Mono.Parallel" library="Mono.Parallel-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig -d:INSIDE_MONO_PARALLEL -r:mscorlib.dll -r:System.Core.dll -r:System.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig -d:INSIDE_MONO_PARALLEL -r:mscorlib.dll -r:System.Core.dll -r:System.dll</flags>
       <output>Mono.Parallel.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/Mono.Parallel.dll</library_output>
     <project dir="class/Mono.Parallel" library="Mono.Parallel-tests-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -r:./../../class/lib/net_4_5/Mono.Parallel.dll /r:System.Core.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_5/Mono.Parallel.dll /r:System.Core.dll</flags>
       <output>Mono.Parallel_test_net_4_5.dll</output>
       <built_sources></built_sources>
       <library_output>Mono.Parallel_test_net_4_5.dll</library_output>
     <project dir="class/Microsoft.Web.Infrastructure" library="Microsoft.Web.Infrastructure-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig -r:System.dll -r:System.Configuration.dll -r:System.Web.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig -r:System.dll -r:System.Configuration.dll -r:System.Web.dll</flags>
       <output>Microsoft.Web.Infrastructure.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/Microsoft.Web.Infrastructure.dll</library_output>
     <project dir="class/WebMatrix.Data" library="WebMatrix.Data-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig -r:mscorlib.dll -r:System.dll -r:System.Data.dll -r:System.Core.dll -r:System.Configuration.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig -r:mscorlib.dll -r:System.dll -r:System.Data.dll -r:System.Core.dll -r:System.Configuration.dll</flags>
       <output>WebMatrix.Data.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/WebMatrix.Data.dll</library_output>
     <project dir="class/WebMatrix.Data" library="WebMatrix.Data-tests-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -r:./../../class/lib/net_4_5/WebMatrix.Data.dll -r:System.dll -r:System.Core.dll -r:System.Data.dll -r:Mono.Data.Sqlite.dll -r:Microsoft.CSharp.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_5/WebMatrix.Data.dll -r:System.dll -r:System.Core.dll -r:System.Data.dll -r:Mono.Data.Sqlite.dll -r:Microsoft.CSharp.dll</flags>
       <output>WebMatrix.Data_test_net_4_5.dll</output>
       <built_sources></built_sources>
       <library_output>WebMatrix.Data_test_net_4_5.dll</library_output>
     <project dir="class/System.Data.Services.Client" library="System.Data.Services.Client-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig -d:NET_3_5 -r:System.dll -r:System.Core.dll -r:System.Xml.Linq.dll -r:System.Data.dll -r:System.Xml.dll -resource:Client/System.Data.Services.Client.resources -warn:2 -r:WindowsBase</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig -d:NET_3_5 -r:System.dll -r:System.Core.dll -r:System.Xml.Linq.dll -r:System.Data.dll -r:System.Xml.dll -resource:Client/System.Data.Services.Client.resources -warn:2 -r:WindowsBase</flags>
       <output>System.Data.Services.Client.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/System.Data.Services.Client.dll</library_output>
     <project dir="class/System.Data.Services" library="System.Data.Services-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig -d:NET_3_5 -r:System.dll -r:System.Core.dll -r:System.ServiceModel.dll -r:System.ServiceModel.Web.dll -r:System.Data.Services.Client.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig -d:NET_3_5 -r:System.dll -r:System.Core.dll -r:System.ServiceModel.dll -r:System.ServiceModel.Web.dll -r:System.Data.Services.Client.dll</flags>
       <output>System.Data.Services.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/System.Data.Services.dll</library_output>
     <project dir="class/System.Data.Services" library="System.Data.Services-tests-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -r:./../../class/lib/net_4_5/System.Data.Services.dll -r:System.ServiceModel.dll -r:System.Core.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_5/System.Data.Services.dll -r:System.ServiceModel.dll -r:System.Core.dll</flags>
       <output>System.Data.Services_test_net_4_5.dll</output>
       <built_sources></built_sources>
       <library_output>System.Data.Services_test_net_4_5.dll</library_output>
     <project dir="class/System.Json" library="System.Json-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig /d:ASPNETMVC -keyfile:../winfx.pub -delaysign /r:System.dll /r:System.Xml.dll /r:System.Core.dll /r:System.Runtime.Serialization.dll /r:System.ServiceModel.Web.dll /resource:System.Json.Properties.Resources.resources /r:Microsoft.CSharp.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig /d:ASPNETMVC -keyfile:../winfx.pub -delaysign /r:System.dll /r:System.Xml.dll /r:System.Core.dll /r:System.Runtime.Serialization.dll /r:System.ServiceModel.Web.dll /resource:System.Json.Properties.Resources.resources /r:Microsoft.CSharp.dll</flags>
       <output>System.Json.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/System.Json.dll</library_output>
     <project dir="class/System.Json" library="System.Json-tests-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -r:./../../class/lib/net_4_5/System.Json.dll /d:ASPNETMVC -keyfile:../winfx.pub -delaysign /r:System.dll /r:System.Xml.dll /r:System.Core.dll /r:System.Runtime.Serialization.dll /r:System.ServiceModel.Web.dll /resource:System.Json.Properties.Resources.resources /r:Microsoft.CSharp.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_5/System.Json.dll /d:ASPNETMVC -keyfile:../winfx.pub -delaysign /r:System.dll /r:System.Xml.dll /r:System.Core.dll /r:System.Runtime.Serialization.dll /r:System.ServiceModel.Web.dll /resource:System.Json.Properties.Resources.resources /r:Microsoft.CSharp.dll</flags>
       <output>System.Json_test_net_4_5.dll</output>
       <built_sources></built_sources>
       <library_output>System.Json_test_net_4_5.dll</library_output>
     <project dir="class/System.Threading.Tasks.Dataflow" library="System.Threading.Tasks.Dataflow-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig -r:mscorlib.dll -r:System.Core.dll -r:System.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig -r:mscorlib.dll -r:System.Core.dll -r:System.dll</flags>
       <output>System.Threading.Tasks.Dataflow.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/System.Threading.Tasks.Dataflow.dll</library_output>
     <project dir="class/System.Threading.Tasks.Dataflow" library="System.Threading.Tasks.Dataflow-tests-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -r:./../../class/lib/net_4_5/System.Threading.Tasks.Dataflow.dll -r:System.Core.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_5/System.Threading.Tasks.Dataflow.dll -r:System.Core.dll -r:System.dll</flags>
       <output>System.Threading.Tasks.Dataflow_test_net_4_5.dll</output>
       <built_sources></built_sources>
       <library_output>System.Threading.Tasks.Dataflow_test_net_4_5.dll</library_output>
     <project dir="class/System.ComponentModel.Composition" library="System.ComponentModel.Composition-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig -r:System.dll -r:System.Core.dll -d:CLR40 -resource:Microsoft.Internal.Strings.resources -d:USE_ECMA_KEY,FEATURE_REFLECTIONCONTEXT,FEATURE_REFLECTIONFILEIO,FEATURE_SERIALIZATION,FEATURE_SLIMLOCK -nowarn:219,414</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig -r:System.dll -r:System.Core.dll -d:CLR40 -resource:Microsoft.Internal.Strings.resources -d:USE_ECMA_KEY,FEATURE_REFLECTIONCONTEXT,FEATURE_REFLECTIONFILEIO,FEATURE_SERIALIZATION,FEATURE_SLIMLOCK -nowarn:219,414</flags>
       <output>System.ComponentModel.Composition.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/System.ComponentModel.Composition.dll</library_output>
     <project dir="class/System.Net.Http" library="System.Net.Http-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig -r:System.Core.dll -r:System.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig -r:System.Core.dll -r:System.dll</flags>
       <output>System.Net.Http.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/System.Net.Http.dll</library_output>
     <project dir="class/System.Net.Http" library="System.Net.Http-tests-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -r:./../../class/lib/net_4_5/System.Net.Http.dll -r:System.dll -r:System.Core.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_5/System.Net.Http.dll -r:System.dll -r:System.Core.dll</flags>
       <output>System.Net.Http_test_net_4_5.dll</output>
       <built_sources></built_sources>
       <library_output>System.Net.Http_test_net_4_5.dll</library_output>
     <project dir="class/System.Web.Razor" library="System.Web.Razor-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig /warn:1 /keyfile:../winfx.pub -delaysign /r:System.dll /r:System.Core.dll /d:ASPNETWEBPAGES /resource:System.Web.Razor.Resources.RazorResources.resources /resource:System.Web.Razor.Common.CommonResources.resources</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig /warn:1 /keyfile:../winfx.pub -delaysign /r:System.dll /r:System.Core.dll /d:ASPNETWEBPAGES /resource:System.Web.Razor.Resources.RazorResources.resources /resource:System.Web.Razor.Common.CommonResources.resources</flags>
       <output>System.Web.Razor.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/System.Web.Razor.dll</library_output>
     <project dir="class/System.Web.WebPages.Deployment" library="System.Web.WebPages.Deployment-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig /warn:1 /keyfile:../winfx.pub -delaysign /r:System.dll /r:System.Core.dll /r:System.Configuration.dll /r:System.Web.dll /r:Microsoft.Web.Infrastructure.dll /d:ASPNETWEBPAGES /resource:System.Web.WebPages.Deployment.Common.CommonResources.resources /resource:System.Web.WebPages.Deployment.Resources.ConfigurationResources.resources</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig /warn:1 /keyfile:../winfx.pub -delaysign /r:System.dll /r:System.Core.dll /r:System.Configuration.dll /r:System.Web.dll /r:Microsoft.Web.Infrastructure.dll /d:ASPNETWEBPAGES /resource:System.Web.WebPages.Deployment.Common.CommonResources.resources /resource:System.Web.WebPages.Deployment.Resources.ConfigurationResources.resources</flags>
       <output>System.Web.WebPages.Deployment.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/System.Web.WebPages.Deployment.dll</library_output>
     <project dir="class/System.Web.WebPages" library="System.Web.WebPages-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig /warn:1 /keyfile:../winfx.pub /delaysign /r:Microsoft.CSharp.dll /r:Microsoft.Web.Infrastructure.dll /r:System.dll /r:System.ComponentModel.DataAnnotations.dll /r:System.Configuration.dll /r:System.Core.dll /r:System.Data.Linq.dll /r:System.Web.dll /r:System.Web.WebPages.Deployment.dll /r:System.Web.Razor.dll /r:System.Xml.dll /r:System.Xml.Linq.dll /d:ASPNETWEBPAGES /resource:System.Web.WebPages.Resources.WebPageResources.resources /resource:System.Web.WebPages.Common.CommonResources.resources</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig /warn:1 /keyfile:../winfx.pub /delaysign /r:Microsoft.CSharp.dll /r:Microsoft.Web.Infrastructure.dll /r:System.dll /r:System.ComponentModel.DataAnnotations.dll /r:System.Configuration.dll /r:System.Core.dll /r:System.Data.Linq.dll /r:System.Web.dll /r:System.Web.WebPages.Deployment.dll /r:System.Web.Razor.dll /r:System.Xml.dll /r:System.Xml.Linq.dll /d:ASPNETWEBPAGES /resource:System.Web.WebPages.Resources.WebPageResources.resources /resource:System.Web.WebPages.Common.CommonResources.resources</flags>
       <output>System.Web.WebPages.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/System.Web.WebPages.dll</library_output>
     <project dir="class/System.Web.WebPages.Razor" library="System.Web.WebPages.Razor-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig /warn:1 /keyfile:../winfx.pub /delaysign /r:System.dll /r:System.Core.dll /r:System.Configuration.dll /r:System.Web.dll /r:System.Web.WebPages.dll /r:System.Web.Razor.dll /d:ASPNETWEBPAGES /resource:System.Web.WebPages.Razor.Resources.RazorWebResources.resources /resource:System.Web.WebPages.Razor.Common.CommonResources.resources</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig /warn:1 /keyfile:../winfx.pub /delaysign /r:System.dll /r:System.Core.dll /r:System.Configuration.dll /r:System.Web.dll /r:System.Web.WebPages.dll /r:System.Web.Razor.dll /d:ASPNETWEBPAGES /resource:System.Web.WebPages.Razor.Resources.RazorWebResources.resources /resource:System.Web.WebPages.Razor.Common.CommonResources.resources</flags>
       <output>System.Web.WebPages.Razor.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/System.Web.WebPages.Razor.dll</library_output>
     <project dir="class/System.Web.Mvc3" library="System.Web.Mvc3-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig /warn:1 /keyfile:../winfx.pub /d:MONO /delaysign /r:Microsoft.Web.Infrastructure.dll /r:System.dll /r:System.Core.dll /r:System.Configuration.dll /r:System.Data.dll /r:System.Xml.dll /r:System.Web.dll /r:System.Web.Abstractions.dll /r:System.Web.Routing.dll /r:System.Web.Extensions.dll /r:System.ComponentModel.DataAnnotations.dll /r:System.Data.Linq.dll /r:System.Runtime.Caching.dll /r:System.Web.Razor.dll /r:System.Web.WebPages.Razor.dll /r:System.Web.WebPages.dll /resource:Mvc/Resources/MvcResources.resources,System.Web.Mvc.Resources.MvcResources.resources</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig /warn:1 /keyfile:../winfx.pub /d:MONO /delaysign /r:Microsoft.Web.Infrastructure.dll /r:System.dll /r:System.Core.dll /r:System.Configuration.dll /r:System.Data.dll /r:System.Xml.dll /r:System.Web.dll /r:System.Web.Abstractions.dll /r:System.Web.Routing.dll /r:System.Web.Extensions.dll /r:System.ComponentModel.DataAnnotations.dll /r:System.Data.Linq.dll /r:System.Runtime.Caching.dll /r:System.Web.Razor.dll /r:System.Web.WebPages.Razor.dll /r:System.Web.WebPages.dll /resource:Mvc/Resources/MvcResources.resources,System.Web.Mvc.Resources.MvcResources.resources</flags>
       <output>System.Web.Mvc.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/tmp/System.Web.Mvc.dll</library_output>
     <project dir="class/System.Net.Http.Formatting" library="System.Net.Http.Formatting-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig -r:System.Core.dll -r:System.dll -r:System.Net.Http.dll -r:System.Xml.dll -r:System.Runtime.Serialization.dll -r:System.Xml.Linq.dll -r:System.Data.dll -r:System.Configuration.dll -d:ASPNETMVC -keyfile:../winfx.pub -delaysign -resource:System.Net.Http.Properties.CommonWebApiResources.resources</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig -r:System.Core.dll -r:System.dll -r:System.Net.Http.dll -r:System.Xml.dll -r:System.Runtime.Serialization.dll -r:System.Xml.Linq.dll -r:System.Data.dll -r:System.Configuration.dll -d:ASPNETMVC -keyfile:../winfx.pub -delaysign -resource:System.Net.Http.Properties.CommonWebApiResources.resources -resource:System.Net.Http.Properties.Resources.resources</flags>
       <output>System.Net.Http.Formatting.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/System.Net.Http.Formatting.dll</library_output>
     <project dir="class/System.Web.Http" library="System.Web.Http-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig -r:System.Core.dll -r:System.dll -r:System.Xml.dll -r:System.Net.Http.dll -r:System.ComponentModel.DataAnnotations.dll -r:System.Net.Http.Formatting.dll -r:System.Runtime.Caching.dll -r:System.Runtime.Serialization.dll -r:System.Data.Linq.dll -d:ASPNETMVC -keyfile:../winfx.pub -delaysign</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig -r:System.Core.dll -r:System.dll -r:System.Xml.dll -r:System.Net.Http.dll -r:System.ComponentModel.DataAnnotations.dll -r:System.Net.Http.Formatting.dll -r:System.Runtime.Caching.dll -r:System.Runtime.Serialization.dll -r:System.Data.Linq.dll -d:ASPNETMVC -keyfile:../winfx.pub -delaysign -resource:System.Web.Http.Properties.CommonWebApiResources.resources -resource:System.Web.Http.Properties.SRResources.resources</flags>
       <output>System.Web.Http.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/System.Web.Http.dll</library_output>
       <fx_version>4.5</fx_version>
       <response>System.Web.Http.dll.sources</response>
     </project>
+    <project dir="class/System.Web.Http.SelfHost" library="System.Web.Http.SelfHost-net_4_5">
+      <boot>false</boot>
+      <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig -r:System.Core.dll -r:System.dll -r:System.Xml.dll -r:System.Configuration.dll -r:System.Net.Http.dll -r:System.Runtime.Serialization.dll -r:System.ServiceModel.dll -r:System.IdentityModel.dll -r:System.Web.Http.dll -r:System.Net.Http.Formatting.dll -d:ASPNETMVC -keyfile:../winfx.pub -delaysign</flags>
+      <output>System.Web.Http.SelfHost.dll</output>
+      <built_sources></built_sources>
+      <library_output>./../../class/lib/net_4_5/System.Web.Http.SelfHost.dll</library_output>
+      <fx_version>4.5</fx_version>
+      <response>System.Web.Http.SelfHost.dll.sources</response>
+    </project>
+    <project dir="class/EntityFramework" library="EntityFramework-net_4_5">
+      <boot>false</boot>
+      <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig -r:System.Data.dll -r:System.Transactions.dll -r:System.Xml.Linq.dll -r:System.Configuration.dll -r:System.ComponentModel.DataAnnotations.dll -r:System.Runtime.Serialization.dll -r:System.dll -r:System.Xml.dll -r:System.Core.dll -r:Microsoft.CSharp.dll -keyfile:../ecma.pub -delaysign -warn:1 -resource:System.Data.Entity.Properties.Resources.resources -resource:System.Data.Entity.Properties.Resources.Migrate.resources -resource:System.Data.Entity.Properties.Resources.PowerShell.resources -resource:../../../external/entityframework/src/EntityFramework/Resources/System/Data/System.Data.Resources.DbProviderServices.ConceptualSchemaDefinition.csdl -resource:../../../external/entityframework/src/EntityFramework/Resources/System/Data/System.Data.Resources.DbProviderServices.ConceptualSchemaDefinitionVersion3.csdl -resource:../../../external/entityframework/src/EntityFramework/Resources/System/Data/System.Data.Resources.ProviderServices.ProviderManifest.xsd -resource:../../../external/entityframework/src/EntityFramework/Resources/System/Data/EntityModel/System.Data.Resources.AnnotationSchema.xsd -resource:../../../external/entityframework/src/EntityFramework/Resources/System/Data/EntityModel/System.Data.Resources.CodeGenerationSchema.xsd -resource:../../../external/entityframework/src/EntityFramework/Resources/System/Data/EntityModel/System.Data.Resources.CSDLSchema_1.xsd -resource:../../../external/entityframework/src/EntityFramework/Resources/System/Data/EntityModel/System.Data.Resources.CSDLSchema_1_1.xsd -resource:../../../external/entityframework/src/EntityFramework/Resources/System/Data/EntityModel/System.Data.Resources.CSDLSchema_2.xsd -resource:../../../external/entityframework/src/EntityFramework/Resources/System/Data/EntityModel/System.Data.Resources.CSDLSchema_3.xsd -resource:../../../external/entityframework/src/EntityFramework/Resources/System/Data/EntityModel/system.data.resources.entitystoreschemagenerator.xsd -resource:../../../external/entityframework/src/EntityFramework/Resources/System/Data/EntityModel/System.Data.Resources.SSDLSchema.xsd -resource:../../../external/entityframework/src/EntityFramework/Resources/System/Data/EntityModel/System.Data.Resources.SSDLSchema_2.xsd -resource:../../../external/entityframework/src/EntityFramework/Resources/System/Data/EntityModel/System.Data.Resources.SSDLSchema_3.xsd -resource:../../../external/entityframework/src/EntityFramework/Resources/System/Data/MappingSpecification/System.Data.Resources.CSMSL_1.xsd -resource:../../../external/entityframework/src/EntityFramework/Resources/System/Data/MappingSpecification/System.Data.Resources.CSMSL_2.xsd -resource:../../../external/entityframework/src/EntityFramework/Resources/System/Data/MappingSpecification/System.Data.Resources.CSMSL_3.xsd</flags>
+      <output>EntityFramework.dll</output>
+      <built_sources></built_sources>
+      <library_output>./../../class/lib/net_4_5/EntityFramework.dll</library_output>
+      <fx_version>4.5</fx_version>
+      <response>EntityFramework.dll.sources</response>
+    </project>
+    <project dir="class/EntityFramework.SqlServer" library="EntityFramework.SqlServer-net_4_5">
+      <boot>false</boot>
+      <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig -r:System.dll -r:System.Xml.dll -r:System.Core.dll -r:EntityFramework.dll -r:System.Data.dll -keyfile:../ecma.pub -delaysign -warn:1 -resource:System.Data.Entity.SqlServer.Properties.Resources.SqlServer.resources -resource:../../../external/entityframework/src/EntityFramework/Resources/System/Data/System.Data.Resources.DbProviderServices.ConceptualSchemaDefinition.csdl -resource:../../../external/entityframework/src/EntityFramework.SqlServer/Resources/System/Data/SqlClient/System.Data.Resources.SqlClient.SqlProviderServices.ProviderManifest.xml -resource:../../../external/entityframework/src/EntityFramework.SqlServer/Resources/System/Data/SqlClient/System.Data.Resources.SqlClient.SqlProviderServices.StoreSchemaDefinition.ssdl -resource:../../../external/entityframework/src/EntityFramework.SqlServer/Resources/System/Data/SqlClient/System.Data.Resources.SqlClient.SqlProviderServices.StoreSchemaDefinition_Sql8.ssdl -resource:../../../external/entityframework/src/EntityFramework.SqlServer/Resources/System/Data/SqlClient/System.Data.Resources.SqlClient.SqlProviderServices.StoreSchemaDefinitionVersion3.ssdl -resource:../../../external/entityframework/src/EntityFramework.SqlServer/Resources/System/Data/SqlClient/System.Data.Resources.SqlClient.SqlProviderServices.StoreSchemaDefinitionVersion3_Sql8.ssdl -resource:../../../external/entityframework/src/EntityFramework.SqlServer/Resources/System/Data/SqlClient/System.Data.Resources.SqlClient.SqlProviderServices.StoreSchemaMapping.msl -resource:../../../external/entityframework/src/EntityFramework.SqlServer/Resources/System/Data/SqlClient/System.Data.Resources.SqlClient.SqlProviderServices.StoreSchemaMappingVersion3.msl</flags>
+      <output>EntityFramework.SqlServer.dll</output>
+      <built_sources></built_sources>
+      <library_output>./../../class/lib/net_4_5/EntityFramework.SqlServer.dll</library_output>
+      <fx_version>4.5</fx_version>
+      <response>EntityFramework.SqlServer.dll.sources</response>
+    </project>
     <project dir="class/Mono.CodeContracts" library="Mono.CodeContracts-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig -r:System.dll -r:System.Core.dll -r:Mono.Cecil.dll -r:Mono.Cecil.Mdb.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig -r:System.dll -r:System.Core.dll -r:Mono.Cecil.dll -r:Mono.Cecil.Mdb.dll</flags>
       <output>Mono.CodeContracts.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/Mono.CodeContracts.dll</library_output>
     <project dir="class/Mono.CodeContracts" library="Mono.CodeContracts-tests-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -r:./../../class/lib/net_4_5/Mono.CodeContracts.dll -r:System.Core.dll</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_5/Mono.CodeContracts.dll -r:System.Core.dll</flags>
       <output>Mono.CodeContracts_test_net_4_5.dll</output>
       <built_sources></built_sources>
       <library_output>Mono.CodeContracts_test_net_4_5.dll</library_output>
     <project dir="nunit24/NUnit.Framework/framework" library="NUnit.Framework-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig /r:System.Xml.dll /r:System.dll /d:StronglyNamedAssembly -warn:1</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig /r:System.Xml.dll /r:System.dll /d:StronglyNamedAssembly -warn:1</flags>
       <output>nunit.framework.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_5/nunit.framework.dll</library_output>
     <project dir="nunit24/NUnitCore/interfaces" library="nunit.core.interfaces-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -debug -r:nunit.framework.dll -r:System.dll /d:StronglyNamedAssembly -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig</flags>
+      <flags>/codepage:65001 -debug -r:nunit.framework.dll -r:System.dll /d:StronglyNamedAssembly -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig</flags>
       <output>nunit.core.interfaces.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_5/nunit.core.interfaces.dll</library_output>
     <project dir="nunit20/NUnitCore/core" library="nunit.core-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -r:nunit.framework.dll -r:nunit.core.interfaces.dll -r:System.dll /d:StronglyNamedAssembly -warn:1 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig</flags>
+      <flags>/codepage:65001 -r:nunit.framework.dll -r:nunit.core.interfaces.dll -r:System.dll /d:StronglyNamedAssembly -warn:1 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig</flags>
       <output>nunit.core.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_5/nunit.core.dll</library_output>
     <project dir="nunit24/ClientUtilities/util" library="nunit.util-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 /resource:Transform.resources,NUnit.Util.Transform.resources -r:nunit.core.dll -r:nunit.core.interfaces.dll -r:System.dll -r:System.Xml.dll -r:System.Runtime.Remoting.dll /d:MONO /d:StronglyNamedAssembly -warn:1 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig</flags>
+      <flags>/codepage:65001 /resource:Transform.resources,NUnit.Util.Transform.resources -r:nunit.core.dll -r:nunit.core.interfaces.dll -r:System.dll -r:System.Xml.dll -r:System.Runtime.Remoting.dll /d:MONO /d:StronglyNamedAssembly -warn:1 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig</flags>
       <output>nunit.util.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_5/nunit.util.dll</library_output>
     <project dir="nunit24/NUnitMocks/mocks" library="nunit.mocks-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -debug -r:nunit.framework.dll -r:System.dll /d:StronglyNamedAssembly -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig</flags>
+      <flags>/codepage:65001 -debug -r:nunit.framework.dll -r:System.dll /d:StronglyNamedAssembly -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig</flags>
       <output>nunit.mocks.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_5/nunit.mocks.dll</library_output>
     <project dir="nunit24/NUnitExtensions/framework" library="nunit.framework.extensions-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig -debug /r:System.Xml.dll /r:System.dll /d:StronglyNamedAssembly</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig -debug /r:System.Xml.dll /r:System.dll /d:StronglyNamedAssembly</flags>
       <output>nunit.framework.extensions.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_5/nunit.framework.extensions.dll</library_output>
     <project dir="nunit24/NUnitExtensions/core" library="nunit.core.extensions-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig -debug /r:nunit.core.dll /r:nunit.core.interfaces.dll /r:System.Xml.dll /r:System.dll /d:StronglyNamedAssembly</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig -debug /r:nunit.core.dll /r:nunit.core.interfaces.dll /r:System.Xml.dll /r:System.dll /d:StronglyNamedAssembly</flags>
       <output>nunit.core.extensions.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_5/nunit.core.extensions.dll</library_output>
     <project dir="nunit24/ConsoleRunner/nunit-console" library="nunit-console-runner-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -r:nunit.core.dll -r:nunit.core.interfaces.dll -r:nunit.util.dll -r:System.dll -r:System.Xml.dll /d:MONO /d:StronglyNamedAssembly -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig</flags>
+      <flags>/codepage:65001 -r:nunit.core.dll -r:nunit.core.interfaces.dll -r:nunit.util.dll -r:System.dll -r:System.Xml.dll /d:MONO /d:StronglyNamedAssembly -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig</flags>
       <output>nunit-console-runner.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_5/nunit-console-runner.dll</library_output>
     <project dir="nunit24/ConsoleRunner/nunit-console-exe" library="nunit-console-net_4_5">
       <boot></boot>
       <mcs>MONO_PATH=./../../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 /r:nunit.framework.dll /r:nunit.util.dll /r:nunit.core.dll /r:nunit-console-runner.dll -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig</flags>
+      <flags>/codepage:65001 /r:nunit.framework.dll /r:nunit.util.dll /r:nunit.core.dll /r:nunit-console-runner.dll -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig</flags>
       <output>nunit-console.exe</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_5/nunit-console.exe</library_output>
     <project dir="ilasm" library="ilasm-net_4_5">
       <boot></boot>
       <mcs>MONO_PATH=./../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 /lib:../class/lib/net_4_5 /r:../class/lib/net_4_5/PEAPI.dll /r:Mono.CompilerServices.SymbolWriter.dll /r:Mono.Security.dll -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig</flags>
+      <flags>/codepage:65001 /lib:../class/lib/net_4_5 /r:../class/lib/net_4_5/PEAPI.dll /r:Mono.CompilerServices.SymbolWriter.dll /r:Mono.Security.dll -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig</flags>
       <output>ilasm.exe</output>
       <built_sources></built_sources>
       <library_output>./../class/lib/net_4_5/ilasm.exe</library_output>
     <project dir="tools/al" library="al-net_4_5">
       <boot></boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -r:Mono.Security.dll -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig</flags>
+      <flags>/codepage:65001 -r:Mono.Security.dll -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig</flags>
       <output>al.exe</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/al.exe</library_output>
     <project dir="tools/linker" library="monolinker-net_4_5">
       <boot></boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 /r:./../../class/lib/net_4_5/Mono.Cecil.dll /r:System.Xml.dll -keyfile:../../class/mono.snk -resource:Descriptors/mscorlib.xml -resource:Descriptors/System.xml -resource:Descriptors/System.Drawing.xml -resource:Descriptors/System.Web.xml -resource:Descriptors/Mono.Posix.xml -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig</flags>
+      <flags>/codepage:65001 /r:./../../class/lib/net_4_5/Mono.Cecil.dll /r:System.Xml.dll -keyfile:../../class/mono.snk -resource:Descriptors/mscorlib.xml -resource:Descriptors/System.xml -resource:Descriptors/System.Drawing.xml -resource:Descriptors/System.Web.xml -resource:Descriptors/Mono.Posix.xml -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig</flags>
       <output>monolinker.exe</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/monolinker.exe</library_output>
     <project dir="tools/tuner" library="Mono.Tuner-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -r:System.dll -r:System.Core.dll -r:System.Xml.dll -r:./../../class/lib/net_4_5/monolinker.exe -r:./../../class/lib/net_4_5/Mono.Cecil.dll -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig</flags>
+      <flags>/codepage:65001 -r:System.dll -r:System.Core.dll -r:System.Xml.dll -r:./../../class/lib/net_4_5/monolinker.exe -r:./../../class/lib/net_4_5/Mono.Cecil.dll -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig</flags>
       <output>Mono.Tuner.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/Mono.Tuner.dll</library_output>
     <project dir="tools/culevel" library="culevel-net_4_5">
       <boot></boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig</flags>
       <output>culevel.exe</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/culevel.exe</library_output>
     <project dir="tools/genxs" library="genxs-net_4_5">
       <boot></boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -r:System.Xml.dll -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig</flags>
+      <flags>/codepage:65001 -r:System.Xml.dll -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig</flags>
       <output>genxs.exe</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/genxs.exe</library_output>
     <project dir="tools/mkbundle" library="mkbundle-net_4_5">
       <boot></boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -r:Mono.Posix.dll -r:ICSharpCode.SharpZipLib.dll -resource:template.c -resource:template_z.c -resource:template_main.c -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig</flags>
+      <flags>/codepage:65001 -r:Mono.Posix.dll -r:ICSharpCode.SharpZipLib.dll -resource:template.c -resource:template_z.c -resource:template_main.c -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig</flags>
       <output>mkbundle.exe</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/mkbundle.exe</library_output>
     <project dir="tools/monop" library="monop-net_4_5">
       <boot></boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig</flags>
       <output>monop.exe</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/monop.exe</library_output>
     <project dir="tools/mono-service" library="mono-service-net_4_5">
       <boot></boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -r:System.ServiceProcess.dll -r:Mono.Posix.dll -unsafe -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig</flags>
+      <flags>/codepage:65001 -r:System.ServiceProcess.dll -r:Mono.Posix.dll -unsafe -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig</flags>
       <output>mono-service.exe</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/mono-service.exe</library_output>
     <project dir="tools/mono-xsd" library="xsd-net_4_5">
       <boot></boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -r:System.Xml.dll -r:System.Data.dll -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig</flags>
+      <flags>/codepage:65001 -r:System.Xml.dll -r:System.Data.dll -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig</flags>
       <output>xsd.exe</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/xsd.exe</library_output>
     <project dir="tools/resgen" library="resgen-net_4_5">
       <boot></boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig</flags>
       <output>resgen.exe</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/resgen.exe</library_output>
     <project dir="tools/gacutil" library="gacutil-net_4_5">
       <boot></boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -r:Mono.Security.dll -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig</flags>
+      <flags>/codepage:65001 -r:Mono.Security.dll -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig</flags>
       <output>gacutil.exe</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/gacutil.exe</library_output>
     <project dir="tools/wsdl" library="wsdl-net_4_5">
       <boot></boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -r:System.Xml.dll -r:System.Web.Services.dll -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig</flags>
+      <flags>/codepage:65001 -r:System.Xml.dll -r:System.Web.Services.dll -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig</flags>
       <output>wsdl.exe</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/wsdl.exe</library_output>
     <project dir="tools/xbuild" library="xbuild-net_4_5">
       <boot></boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -r:Microsoft.Build.Framework.dll -r:Microsoft.Build.Utilities.v4.0.dll -r:Microsoft.Build.Engine.dll -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig</flags>
+      <flags>/codepage:65001 -r:Microsoft.Build.Framework.dll -r:Microsoft.Build.Utilities.v4.0.dll -r:Microsoft.Build.Engine.dll -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig</flags>
       <output>xbuild.exe</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/xbuild.exe</library_output>
     <project dir="tools/csharp" library="csharp-net_4_5">
       <boot></boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -r:./../../class/lib/net_4_5/Mono.CSharp.dll -r:./../../class/lib/net_4_5/Mono.Posix.dll -r:Mono.Management.dll -unsafe -nowarn:3021 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig</flags>
+      <flags>/codepage:65001 -r:./../../class/lib/net_4_5/Mono.CSharp.dll -r:./../../class/lib/net_4_5/Mono.Posix.dll -r:Mono.Management.dll -unsafe -nowarn:3021 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig</flags>
       <output>csharp.exe</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/csharp.exe</library_output>
     <project dir="tools/compiler-tester" library="compiler-tester-net_4_5">
       <boot></boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig</flags>
       <output>compiler-tester.exe</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/compiler-tester.exe</library_output>
     <project dir="tools/mono-xmltool" library="mono-xmltool-net_4_5">
       <boot></boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -r:System.Xml.dll -r:Commons.Xml.Relaxng.dll -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig</flags>
+      <flags>/codepage:65001 -r:System.Xml.dll -r:Commons.Xml.Relaxng.dll -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig</flags>
       <output>mono-xmltool.exe</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/mono-xmltool.exe</library_output>
     <project dir="tools/mono-shlib-cop" library="mono-shlib-cop-net_4_5">
       <boot></boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -r:Mono.Posix.dll -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig</flags>
+      <flags>/codepage:65001 -r:Mono.Posix.dll -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig</flags>
       <output>mono-shlib-cop.exe</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/mono-shlib-cop.exe</library_output>
     <project dir="tools/sgen" library="sgen-net_4_5">
       <boot></boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -r:System.Xml.dll -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig</flags>
+      <flags>/codepage:65001 -r:System.Xml.dll -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig</flags>
       <output>sgen.exe</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/sgen.exe</library_output>
     <project dir="tools/mconfig" library="mconfig-net_4_5">
       <boot></boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -r:System.Xml.dll -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig</flags>
+      <flags>/codepage:65001 -r:System.Xml.dll -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig</flags>
       <output>mconfig.exe</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/mconfig.exe</library_output>
     <project dir="tools/installutil" library="installutil-net_4_5">
       <boot></boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -r:System.Configuration.Install -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig</flags>
+      <flags>/codepage:65001 -r:System.Configuration.Install -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig</flags>
       <output>installutil.exe</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/installutil.exe</library_output>
     <project dir="tools/nunitreport" library="nunitreport-net_4_5">
       <boot></boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig</flags>
       <output>nunitreport.exe</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/nunitreport.exe</library_output>
     <project dir="tools/pdb2mdb" library="pdb2mdb-net_4_5">
       <boot></boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 /r:Mono.Cecil.dll /r:Mono.CompilerServices.SymbolWriter.dll -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig</flags>
+      <flags>/codepage:65001 /r:Mono.Cecil.dll /r:Mono.CompilerServices.SymbolWriter.dll -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig</flags>
       <output>pdb2mdb.exe</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/pdb2mdb.exe</library_output>
     <project dir="tools/SqlSharp" library="sqlsharp-net_4_5">
       <boot></boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -r:System.dll -r:System.Xml.dll -r:System.Data.dll -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig</flags>
+      <flags>/codepage:65001 -r:System.dll -r:System.Xml.dll -r:System.Data.dll -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig</flags>
       <output>sqlsharp.exe</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/sqlsharp.exe</library_output>
     <project dir="tools/sqlmetal" library="sqlmetal-net_4_5">
       <boot></boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:MONO_STRICT -keyfile:../../class/System.Data.Linq/src/DbMetal/../DbLinq.snk -resource:../../class/System.Data.Linq/src/DbMetal/Language/EnglishWords.txt,DbMetal.Language.EnglishWords.txt -resource:../../class/System.Data.Linq/src/DbMetal/Language/FrenchWords.txt,DbMetal.Language.FrenchWords.txt -resource:../../class/System.Data.Linq/src/DbMetal/Language/GermanWords.txt,DbMetal.Language.GermanWords.txt -r:System.Configuration -r:System.Core -r:System.Data -r:System.Data.Linq -r:System.Xml -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig</flags>
+      <flags>/codepage:65001 -d:MONO_STRICT -keyfile:../../class/System.Data.Linq/src/DbMetal/../DbLinq.snk -resource:../../class/System.Data.Linq/src/DbMetal/Language/EnglishWords.txt,DbMetal.Language.EnglishWords.txt -resource:../../class/System.Data.Linq/src/DbMetal/Language/FrenchWords.txt,DbMetal.Language.FrenchWords.txt -resource:../../class/System.Data.Linq/src/DbMetal/Language/GermanWords.txt,DbMetal.Language.GermanWords.txt -r:System.Configuration -r:System.Core -r:System.Data -r:System.Data.Linq -r:System.Xml -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig</flags>
       <output>sqlmetal.exe</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/sqlmetal.exe</library_output>
     <project dir="tools/svcutil" library="svcutil-net_4_5">
       <boot></boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -r:System.Core.dll -r:System.Runtime.Serialization.dll -r:System.ServiceModel.dll -r:System.Web.Services.dll -r:System.Configuration.dll -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig</flags>
+      <flags>/codepage:65001 -r:System.Core.dll -r:System.Runtime.Serialization.dll -r:System.ServiceModel.dll -r:System.Web.Services.dll -r:System.Configuration.dll -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig</flags>
       <output>svcutil.exe</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/svcutil.exe</library_output>
     <project dir="tools/ictool" library="ictool-net_4_5">
       <boot></boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig</flags>
       <output>ictool.exe</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/ictool.exe</library_output>
     <project dir="tools/disco" library="disco-net_4_5">
       <boot></boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -r:System.Xml.dll -r:System.Web.Services.dll -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig</flags>
+      <flags>/codepage:65001 -r:System.Xml.dll -r:System.Web.Services.dll -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig</flags>
       <output>disco.exe</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/disco.exe</library_output>
     <project dir="tools/soapsuds" library="soapsuds-net_4_5">
       <boot></boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -r:System.Runtime.Remoting.dll -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig</flags>
+      <flags>/codepage:65001 -r:System.Runtime.Remoting.dll -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig</flags>
       <output>soapsuds.exe</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/soapsuds.exe</library_output>
     <project dir="tools/browsercaps-updater" library="browsercaps-updater-net_4_5">
       <boot></boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig</flags>
       <output>browsercaps-updater.exe</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/browsercaps-updater.exe</library_output>
     <project dir="tools/cil-strip" library="mono-cil-strip-net_4_5">
       <boot></boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig</flags>
+      <flags>/codepage:65001 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig</flags>
       <output>mono-cil-strip.exe</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/mono-cil-strip.exe</library_output>
     <project dir="tools/macpack" library="macpack-net_4_5">
       <boot></boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 /resource:LOADER /resource:PLIST -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig</flags>
+      <flags>/codepage:65001 /resource:LOADER /resource:PLIST -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig</flags>
       <output>macpack.exe</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/macpack.exe</library_output>
     <project dir="tools/dtd2rng" library="dtd2rng-net_4_5">
       <boot></boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -r:System.Xml.dll -r:Commons.Xml.Relaxng.dll -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig</flags>
+      <flags>/codepage:65001 -r:System.Xml.dll -r:Commons.Xml.Relaxng.dll -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig</flags>
       <output>dtd2rng.exe</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/dtd2rng.exe</library_output>
     <project dir="tools/dtd2xsd" library="dtd2xsd-net_4_5">
       <boot></boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -r:System.Xml.dll -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig</flags>
+      <flags>/codepage:65001 -r:System.Xml.dll -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig</flags>
       <output>dtd2xsd.exe</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/dtd2xsd.exe</library_output>
     <project dir="tools/monodoc" library="monodoc-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 /nowarn:618,612,672,809 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig /codepage:utf8 /nowarn:169,164,162,168,219,618,612 /r:Commons.Xml.Relaxng /resource:../../docs/monodoc.xml,monodoc.xml /resource:Resources/base.css,base.css /resource:Resources/ecmaspec-html-css.xsl,ecmaspec-html-css.xsl /resource:Resources/ecmaspec-html.xsl,ecmaspec-html.xsl /resource:Resources/ecmaspec.css,ecmaspec.css /resource:Resources/helper.js,helper.js /resource:Resources/home.html,home.html /resource:Resources/Lminus.gif,Lminus.gif /resource:Resources/Lplus.gif,Lplus.gif /resource:Resources/mdoc-html-format.xsl,mdoc-html-format.xsl /resource:Resources/mdoc-html-utils.xsl,mdoc-html-utils.xsl /resource:Resources/mdoc-sections-css.xsl,mdoc-sections-css.xsl /resource:Resources/mdoc-sections.xsl,mdoc-sections.xsl /resource:Resources/mono-ecma-css.xsl,mono-ecma-css.xsl /resource:Resources/mono-ecma-impl.xsl,mono-ecma-impl.xsl /resource:Resources/mono-ecma.css,mono-ecma.css /resource:Resources/mono-ecma.xsl,mono-ecma.xsl /resource:Resources/images/bc_bg.png,bc_bg.png /resource:Resources/images/bc_separator.png,bc_separator.png /resource:Resources/images/error.png,error.png /resource:Resources/images/hatch.png,hatch.png /resource:Resources/images/headerbg.png,headerbg.png /resource:Resources/images/help.png,help.png /resource:Resources/images/house.png,house.png /resource:Resources/images/members.png,members.png /resource:Resources/images/namespace.png,namespace.png /resource:Resources/images/privclass.png,privclass.png /resource:Resources/images/privdelegate.png,privdelegate.png /resource:Resources/images/privenumeration.png,privenumeration.png /resource:Resources/images/privevent.png,privevent.png /resource:Resources/images/privextension.png,privextension.png /resource:Resources/images/privfield.png,privfield.png /resource:Resources/images/privinterface.png,privinterface.png /resource:Resources/images/privmethod.png,privmethod.png /resource:Resources/images/privproperty.png,privproperty.png /resource:Resources/images/privstructure.png,privstructure.png /resource:Resources/images/protclass.png,protclass.png /resource:Resources/images/protdelegate.png,protdelegate.png /resource:Resources/images/protenumeration.png,protenumeration.png /resource:Resources/images/protevent.png,protevent.png /resource:Resources/images/protextension.png,protextension.png /resource:Resources/images/protfield.png,protfield.png /resource:Resources/images/protinterface.png,protinterface.png /resource:Resources/images/protmethod.png,protmethod.png /resource:Resources/images/protproperty.png,protproperty.png /resource:Resources/images/protstructure.png,protstructure.png /resource:Resources/images/pubclass.png,pubclass.png /resource:Resources/images/pubdelegate.png,pubdelegate.png /resource:Resources/images/pubenumeration.png,pubenumeration.png /resource:Resources/images/pubevent.png,pubevent.png /resource:Resources/images/pubextension.png,pubextension.png /resource:Resources/images/pubfield.png,pubfield.png /resource:Resources/images/pubinterface.png,pubinterface.png /resource:Resources/images/pubmethod.png,pubmethod.png /resource:Resources/images/pubproperty.png,pubproperty.png /resource:Resources/images/pubstructure.png,pubstructure.png /resource:Resources/images/reference.png,reference.png /resource:Resources/images/treebg.png,treebg.png /r:ICSharpCode.SharpZipLib /r:mscorlib.dll /r:System.dll /r:System.Core.dll /r:System.Configuration.dll /r:System.Web.Services.dll /r:System.Xml.dll</flags>
+      <flags>/codepage:65001 /nowarn:618,612,672,809 -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig /codepage:utf8 /nowarn:169,164,162,168,219,618,612 /r:Commons.Xml.Relaxng /resource:../../docs/monodoc.xml,monodoc.xml /resource:Resources/base.css,base.css /resource:Resources/ecmaspec-html-css.xsl,ecmaspec-html-css.xsl /resource:Resources/ecmaspec-html.xsl,ecmaspec-html.xsl /resource:Resources/ecmaspec.css,ecmaspec.css /resource:Resources/helper.js,helper.js /resource:Resources/home.html,home.html /resource:Resources/Lminus.gif,Lminus.gif /resource:Resources/Lplus.gif,Lplus.gif /resource:Resources/mdoc-html-format.xsl,mdoc-html-format.xsl /resource:Resources/mdoc-html-utils.xsl,mdoc-html-utils.xsl /resource:Resources/mdoc-sections-css.xsl,mdoc-sections-css.xsl /resource:Resources/mdoc-sections.xsl,mdoc-sections.xsl /resource:Resources/mono-ecma-css.xsl,mono-ecma-css.xsl /resource:Resources/mono-ecma-impl.xsl,mono-ecma-impl.xsl /resource:Resources/mono-ecma.css,mono-ecma.css /resource:Resources/mono-ecma.xsl,mono-ecma.xsl /resource:Resources/images/bc_bg.png,bc_bg.png /resource:Resources/images/bc_separator.png,bc_separator.png /resource:Resources/images/error.png,error.png /resource:Resources/images/hatch.png,hatch.png /resource:Resources/images/headerbg.png,headerbg.png /resource:Resources/images/help.png,help.png /resource:Resources/images/house.png,house.png /resource:Resources/images/members.png,members.png /resource:Resources/images/namespace.png,namespace.png /resource:Resources/images/privclass.png,privclass.png /resource:Resources/images/privdelegate.png,privdelegate.png /resource:Resources/images/privenumeration.png,privenumeration.png /resource:Resources/images/privevent.png,privevent.png /resource:Resources/images/privextension.png,privextension.png /resource:Resources/images/privfield.png,privfield.png /resource:Resources/images/privinterface.png,privinterface.png /resource:Resources/images/privmethod.png,privmethod.png /resource:Resources/images/privproperty.png,privproperty.png /resource:Resources/images/privstructure.png,privstructure.png /resource:Resources/images/protclass.png,protclass.png /resource:Resources/images/protdelegate.png,protdelegate.png /resource:Resources/images/protenumeration.png,protenumeration.png /resource:Resources/images/protevent.png,protevent.png /resource:Resources/images/protextension.png,protextension.png /resource:Resources/images/protfield.png,protfield.png /resource:Resources/images/protinterface.png,protinterface.png /resource:Resources/images/protmethod.png,protmethod.png /resource:Resources/images/protproperty.png,protproperty.png /resource:Resources/images/protstructure.png,protstructure.png /resource:Resources/images/pubclass.png,pubclass.png /resource:Resources/images/pubdelegate.png,pubdelegate.png /resource:Resources/images/pubenumeration.png,pubenumeration.png /resource:Resources/images/pubevent.png,pubevent.png /resource:Resources/images/pubextension.png,pubextension.png /resource:Resources/images/pubfield.png,pubfield.png /resource:Resources/images/pubinterface.png,pubinterface.png /resource:Resources/images/pubmethod.png,pubmethod.png /resource:Resources/images/pubproperty.png,pubproperty.png /resource:Resources/images/pubstructure.png,pubstructure.png /resource:Resources/images/reference.png,reference.png /resource:Resources/images/treebg.png,treebg.png /r:ICSharpCode.SharpZipLib /r:mscorlib.dll /r:System.dll /r:System.Core.dll /r:System.Configuration.dll /r:System.Web.Services.dll /r:System.Xml.dll</flags>
       <output>monodoc.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/monodoc.dll</library_output>
     <project dir="tools/mdoc" library="mdoc-net_4_5">
       <boot></boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 /resource:../monodoc/Resources/mdoc-html-format.xsl,mdoc-html-format.xsl /resource:../monodoc/Resources/mdoc-html-utils.xsl,mdoc-html-utils.xsl /resource:../monodoc/Resources/mdoc-sections-css.xsl,mdoc-sections-css.xsl /resource:../monodoc/Resources/mono-ecma-css.xsl,mono-ecma-css.xsl /resource:Resources/defaulttemplate.xsl,defaulttemplate.xsl /resource:Resources/monodoc-ecma.xsd,monodoc-ecma.xsd /resource:Resources/msitomsx.xsl,msitomsx.xsl /resource:Resources/overview.xsl,overview.xsl /resource:Resources/stylesheet.xsl,stylesheet.xsl /r:System.Web.dll /r:System.Xml.Linq.dll /r:ICSharpCode.SharpZipLib.dll /r:Mono.Cecil.dll /r:monodoc.dll -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig</flags>
+      <flags>/codepage:65001 /resource:../monodoc/Resources/mdoc-html-format.xsl,mdoc-html-format.xsl /resource:../monodoc/Resources/mdoc-html-utils.xsl,mdoc-html-utils.xsl /resource:../monodoc/Resources/mdoc-sections-css.xsl,mdoc-sections-css.xsl /resource:../monodoc/Resources/mono-ecma-css.xsl,mono-ecma-css.xsl /resource:Resources/defaulttemplate.xsl,defaulttemplate.xsl /resource:Resources/monodoc-ecma.xsd,monodoc-ecma.xsd /resource:Resources/msitomsx.xsl,msitomsx.xsl /resource:Resources/overview.xsl,overview.xsl /resource:Resources/stylesheet.xsl,stylesheet.xsl /r:System.Web.dll /r:System.Xml.Linq.dll /r:ICSharpCode.SharpZipLib.dll /r:Mono.Cecil.dll /r:monodoc.dll -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig</flags>
       <output>mdoc.exe</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/mdoc.exe</library_output>
     <project dir="tools/mod" library="mod-net_4_5">
       <boot></boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 /r:monodoc.dll -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig</flags>
+      <flags>/codepage:65001 /r:monodoc.dll -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig</flags>
       <output>mod.exe</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/mod.exe</library_output>
     <project dir="tools/installvst" library="installvst-net_4_5">
       <boot></boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -r:System.Xml.dll -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig</flags>
+      <flags>/codepage:65001 -r:System.Xml.dll -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig</flags>
       <output>installvst.exe</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/installvst.exe</library_output>
     <project dir="tools/lc" library="lc-net_4_5">
       <boot></boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -r:System.dll -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig</flags>
+      <flags>/codepage:65001 -r:System.dll -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig</flags>
       <output>lc.exe</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/lc.exe</library_output>
     <project dir="tools/mono-configuration-crypto/lib" library="Mono.Configuration.Crypto-net_4_5">
       <boot>false</boot>
       <mcs>MONO_PATH=./../../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -r:System.dll -r:Mono.Security.dll -r:System.Security.dll -r:System.Configuration.dll -r:System.Xml.dll -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig</flags>
+      <flags>/codepage:65001 -r:System.dll -r:Mono.Security.dll -r:System.Security.dll -r:System.Configuration.dll -r:System.Xml.dll -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig</flags>
       <output>Mono.Configuration.Crypto.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_5/Mono.Configuration.Crypto.dll</library_output>
     <project dir="tools/mono-configuration-crypto/cli" library="mono-configuration-crypto-net_4_5">
       <boot></boot>
       <mcs>MONO_PATH=./../../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -r:Mono.Security.dll -r:System.Security.dll -r:System.Configuration.dll -r:System.dll -r:./../../../class/lib/net_4_5/Mono.Configuration.Crypto.dll -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig</flags>
+      <flags>/codepage:65001 -r:Mono.Security.dll -r:System.Security.dll -r:System.Configuration.dll -r:System.dll -r:./../../../class/lib/net_4_5/Mono.Configuration.Crypto.dll -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig</flags>
       <output>mono-configuration-crypto.exe</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_5/mono-configuration-crypto.exe</library_output>
     <project dir="tools/ccrewrite" library="ccrewrite-net_4_5">
       <boot></boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -r:Mono.CodeContracts.dll -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig</flags>
+      <flags>/codepage:65001 -r:Mono.CodeContracts.dll -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig</flags>
       <output>ccrewrite.exe</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/ccrewrite.exe</library_output>
     <project dir="tools/cccheck" library="cccheck-net_4_5">
       <boot></boot>
       <mcs>MONO_PATH=./../../class/lib/build: /home/marek/git/mono/runtime/mono-wrapper ./../../class/lib/build/mcs.exe</mcs>
-      <flags>/codepage:65001 -r:Mono.CodeContracts.dll -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug /noconfig</flags>
+      <flags>/codepage:65001 -r:Mono.CodeContracts.dll -d:NET_1_1 -d:NET_2_0 -d:NET_3_0 -d:NET_3_5 -d:NET_4_0 -d:NET_4_5 -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_5 -r:mscorlib.dll -debug -optimize /noconfig</flags>
       <output>cccheck.exe</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_5/cccheck.exe</library_output>
index 9534da72eda2af867deed9a488f89ee048aaf4cf..36af85d530b0ccaf547937e19c9fabb1e6098a09 100644 (file)
@@ -1 +1 @@
-SUBDIRS = mcs
\ No newline at end of file
+SUBDIRS = mcs
index 5118541ffccfe7c41864af9c00b4f6b9b12d7c40..9a6260e084ad3695bda3d9d5f17355828e3a27eb 100644 (file)
@@ -8,4 +8,4 @@ dist-hook:
        cp $(srcdir)/embed/test-metadata.c $(distdir)/embed
        cp $(srcdir)/embed/test-invoke.c $(srcdir)/embed/invoke.cs $(distdir)/embed
        cp $(srcdir)/size/sample.cs $(srcdir)/size/objectinspector.cs $(distdir)/size
-       cp $(srcdir)/size/size.c $(srcdir)/size/Makefile $(srcdir)/size/README $(distdir)/size
\ No newline at end of file
+       cp $(srcdir)/size/size.c $(srcdir)/size/Makefile $(srcdir)/size/README $(distdir)/size
index 76d4381136d05c5a7bc3841af443e4bd0f35873b..1de8fc77cb7cc9d7c81e813785563d353d63f022 100644 (file)
@@ -7,7 +7,7 @@ lib_LTLIBRARIES =                               \
        libMonoPosixHelper.la                   \
        $(SUPPORT)
 
-INCLUDES =                                     \
+AM_CPPFLAGS =                                  \
        $(GLIB_CFLAGS)                          \
        -I$(top_srcdir)
 
index cad05cb6efb59884676448059303f2c95c54b16d..582cbae3189dbcf4356cbd2f9d737661801e4cdf 100644 (file)
@@ -1,6 +1,6 @@
 bin_PROGRAMS = sgen-grep-binprot
 
-INCLUDES =  $(GLIB_CFLAGS) -I$(top_srcdir)
+AM_CPPFLAGS =  $(GLIB_CFLAGS) -I$(top_srcdir)
 
 sgen_grep_binprot_SOURCES = \
        sgen-grep-binprot.c