Imported Upstream version 4.0.0~alpha1

Former-commit-id: 806294f5ded97629b74c85c09952f2a74fe182d9
This commit is contained in:
Jo Shields
2015-04-07 09:35:12 +01:00
parent 283343f570
commit 3c1f479b9d
22469 changed files with 2931443 additions and 869343 deletions

View File

@@ -22,10 +22,13 @@ TEST_RESOURCES = \
TEST_MCS_FLAGS = -r:System.Drawing.dll -r:Mono.Security.dll -r:System.Data -r:System.Xml.dll -r:System.Core.dll -nowarn:618,672,219,67,169,612 \
$(foreach f, $(TEST_RESOURCES), -resource:$(f),$(notdir $(f)))
LIB_MCS_FLAGS = -nowarn:618 -d:CONFIGURATION_2_0 -unsafe $(RESOURCE_FILES:%=-resource:%)
REFERENCE_SOURCES_FLAGS = -d:FEATURE_PAL,SYSTEM_NAMESPACE,MONO,PLATFORM_UNIX
LIB_MCS_FLAGS = -nowarn:618 -d:CONFIGURATION_2_0 $(REFERENCE_SOURCES_FLAGS) -unsafe $(RESOURCE_FILES:%=-resource:%)
TEST_MCS_FLAGS += -r:System.Configuration
PROFILE_ANY_MOBILE := $(filter monotouch monotouch_runtime monodroid xammac mobile mobile_static, $(PROFILE))
RESOURCE_STRINGS = ../../../external/referencesource/System/System.txt
ifeq (2.1, $(FRAMEWORK_VERSION))
LIB_MCS_FLAGS += -d:INSIDE_SYSTEM
endif
@@ -55,8 +58,6 @@ LIB_MCS_FLAGS += -d:SECURITY_DEP -d:XML_DEP -r:PrebuiltSystem=$(secxml_libdir)/S
endif
EXTRA_DISTFILES = \
System.Text.RegularExpressions/notes.txt \
System.ComponentModel.Design/Changelog \
Test/test-config-file \
Test/test-config-file-net-2.0 \
Test/System.Security.Cryptography.X509Certificates/pkits/ChangeLog \
@@ -117,25 +118,11 @@ $(build_lib): $(CYCLIC_DEP_FILES)
$(test_lib): $(test_lib).config $(TEST_RESOURCES)
ifeq (net_2_0, $(PROFILE))
$(test_lib).config: Test/test-config-file-net-2.0
cp $< $@
else
$(test_lib).config: Test/test-config-file
cp $< $@
endif
CLEAN_FILES = $(test_lib).config $(bare_libdir)/System.dll $(secxml_libdir)/System.dll $(bare_libdir)/System.dll.mdb $(secxml_libdir)/System.dll.mdb
# run the PKITS tests only if the data was installed/activated, otherwise ignore them
ifeq (net_2_0, $(PROFILE))
pkits_files := $(wildcard Test/System.Security.Cryptography.X509Certificates/pkits/hint)
ifndef pkits_files
TEST_HARNESS_EXCLUDES = -exclude=$(PLATFORM_TEST_HARNESS_EXCLUDES)NotWorking,ValueAdd,CAS,InetAccess,PKITS
TEST_HARNESS_EXCLUDES_ONDOTNET = -exclude=$(PLATFORM_TEST_HARNESS_EXCLUDES)NotDotNet,CAS,PKITS
endif
endif
# Helper target to run the perl regex test suite
regex-check:
$(MAKE) check FIXTURE=System.Text.RegularExpressions.PerlTest

View File

@@ -179,34 +179,6 @@ namespace Mono.CSharp
mcsOutput = new StringCollection ();
mcsOutMutex = new Mutex ();
#if !NET_4_0
/*
* !:. KLUDGE WARNING .:!
*
* When running the 2.0 test suite some assemblies will invoke mcs via
* CodeDOM and the new mcs process will find the MONO_PATH variable in its
* environment pointing to the net_2_0 library which will cause the runtime
* to attempt to load the 2.0 corlib into 4.0 process and thus mcs will
* fail. At the same time, we must not touch MONO_PATH when running outside
* the test suite, thus the kludge.
*
* !:. KLUDGE WARNING .:!
*/
if (Environment.GetEnvironmentVariable ("MONO_TESTS_IN_PROGRESS") != null) {
string monoPath = Environment.GetEnvironmentVariable ("MONO_PATH");
if (!String.IsNullOrEmpty (monoPath)) {
const string basePath = "/class/lib/";
const string profile = "net_2_0";
var basePathIndex = monoPath.IndexOf (basePath, StringComparison.Ordinal);
if (basePathIndex > 0 && basePathIndex + basePath.Length + profile.Length <= monoPath.Length) {
var currentProfile = monoPath.Substring (basePathIndex + basePath.Length, profile.Length);
if (currentProfile.Equals (profile, StringComparison.OrdinalIgnoreCase))
monoPath = monoPath.Replace (basePath + currentProfile, basePath + "net_4_0");
}
mcs.StartInfo.EnvironmentVariables ["MONO_PATH"] = monoPath;
}
}
#endif
/*
string monoPath = Environment.GetEnvironmentVariable ("MONO_PATH");
if (monoPath != null)
@@ -370,11 +342,7 @@ namespace Mono.CSharp
string langver;
if (!providerOptions.TryGetValue ("CompilerVersion", out langver))
#if NET_4_0
langver = "3.5";
#else
langver = "2.0";
#endif
if (langver.Length >= 1 && langver [0] == 'v')
langver = langver.Substring (1);
@@ -390,13 +358,7 @@ namespace Mono.CSharp
}
}
#if NET_4_5
args.Append("/sdk:4.5");
#elif NET_4_0
args.Append("/sdk:4");
#else
args.Append("/sdk:2");
#endif
args.Append (" -- ");
foreach (string source in fileNames)

View File

@@ -35,9 +35,6 @@ namespace Microsoft.Win32 {
[PermissionSet (SecurityAction.LinkDemand, Unrestricted = true)]
[PermissionSet (SecurityAction.InheritanceDemand, Unrestricted = true)]
#if ONLY_1_1
[ComVisible (false)]
#endif
public class TimerElapsedEventArgs : System.EventArgs
{
System.IntPtr mytimerId;

View File

@@ -0,0 +1,7 @@
namespace System.Runtime.Versioning
{
static class BinaryCompatibility
{
public const bool TargetsAtLeast_Desktop_V4_5 = true;
}
}

View File

@@ -0,0 +1,34 @@
using System.Diagnostics;
namespace System.Net {
class Logging {
internal static bool On {
get {
return false;
}
}
internal static TraceSource Web {
get {
return null;
}
}
[Conditional ("TRACE")]
internal static void Enter(TraceSource traceSource, object obj, string method, object paramObject) {
}
[Conditional ("TRACE")]
internal static void Exit(TraceSource traceSource, object obj, string method, object retObject) {
}
}
#if MOBILE
class TraceSource
{
}
#endif
}

View File

@@ -0,0 +1,7 @@
namespace Microsoft.Win32
{
static class NativeMethods
{
public const int E_ABORT = unchecked ((int)0x80004004);
}
}

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,10 @@
namespace System.ComponentModel
{
sealed class SRCategoryAttribute : CategoryAttribute
{
public SRCategoryAttribute (string category)
: base(category)
{
}
}
}

View File

@@ -0,0 +1,15 @@
namespace System.Net.Configuration {
sealed class SettingsSectionInternal
{
static readonly SettingsSectionInternal instance = new SettingsSectionInternal ();
internal static SettingsSectionInternal Section {
get {
return instance;
}
}
internal UnicodeEncodingConformance WebUtilityUnicodeEncodingConformance = UnicodeEncodingConformance.Auto;
internal UnicodeDecodingConformance WebUtilityUnicodeDecodingConformance = UnicodeDecodingConformance.Auto;
}
}

View File

@@ -0,0 +1,104 @@
//
// Socket.cs
//
// Author:
// Martin Baulig <martin.baulig@xamarin.com>
//
// Copyright (c) 2015 Xamarin Inc. (http://www.xamarin.com)
//
// Permission is hereby granted, free of charge, to any person obtaining a copy
// of this software and associated documentation files (the "Software"), to deal
// in the Software without restriction, including without limitation the rights
// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
// copies of the Software, and to permit persons to whom the Software is
// furnished to do so, subject to the following conditions:
//
// The above copyright notice and this permission notice shall be included in
// all copies or substantial portions of the Software.
//
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
// THE SOFTWARE.
using System;
using System.IO;
namespace System.Net.Sockets
{
partial class Socket
{
internal const int DefaultCloseTimeout = -1;
// don't change for default, otherwise breaking change
// this version does not throw.
internal void InternalShutdown (SocketShutdown how)
{
if (!connected || disposed)
return;
int error;
Shutdown_internal (socket, how, out error);
}
internal IAsyncResult UnsafeBeginConnect (EndPoint remoteEP, AsyncCallback callback, object state)
{
return BeginConnect (remoteEP, callback, state);
}
internal IAsyncResult UnsafeBeginSend (byte[] buffer, int offset, int size, SocketFlags socketFlags, AsyncCallback callback, object state)
{
return BeginSend (buffer, offset, size, socketFlags, callback, state);
}
internal IAsyncResult UnsafeBeginReceive (byte[] buffer, int offset, int size, SocketFlags socketFlags, AsyncCallback callback, object state)
{
return BeginReceive (buffer, offset, size, socketFlags, callback, state);
}
internal IAsyncResult BeginMultipleSend (BufferOffsetSize[] buffers, SocketFlags socketFlags, AsyncCallback callback, object state)
{
var segments = new ArraySegment<byte> [buffers.Length];
for (int i = 0; i < buffers.Length; i++)
segments [i] = new ArraySegment<byte> (buffers [i].Buffer, buffers [i].Offset, buffers [i].Size);
return BeginSend (segments, socketFlags, callback, state);
}
internal IAsyncResult UnsafeBeginMultipleSend (BufferOffsetSize[] buffers, SocketFlags socketFlags, AsyncCallback callback, object state)
{
return BeginMultipleSend (buffers, socketFlags, callback, state);
}
internal int EndMultipleSend (IAsyncResult asyncResult)
{
return EndSend (asyncResult);
}
internal void MultipleSend (BufferOffsetSize[] buffers, SocketFlags socketFlags)
{
var segments = new ArraySegment<byte> [buffers.Length];
for (int i = 0; i < buffers.Length; i++)
segments [i] = new ArraySegment<byte> (buffers [i].Buffer, buffers [i].Offset, buffers [i].Size);
Send (segments, socketFlags);
}
internal void SetSocketOption (SocketOptionLevel optionLevel, SocketOptionName optionName, int optionValue, bool silent)
{
if (disposed && closed) {
if (silent)
return;
throw new ObjectDisposedException (GetType ().ToString ());
}
int error;
SetSocketOption_internal (socket, optionLevel, optionName, null,
null, optionValue, out error);
if (!silent && error != 0)
throw new SocketException (error);
}
}
}

View File

@@ -0,0 +1,13 @@
namespace System.Net {
//
// Object representing default credentials
//
internal class SystemNetworkCredential : NetworkCredential {
internal static readonly SystemNetworkCredential defaultCredential = new SystemNetworkCredential();
// We want reference equality to work. Making this private is a good way to guarantee that.
private SystemNetworkCredential() :
base(string.Empty, string.Empty, string.Empty) {
}
}
}

View File

@@ -0,0 +1,15 @@
namespace System.Net {
internal enum WebHeaderCollectionType : ushort {
Unknown,
WebRequest,
WebResponse,
HttpWebRequest,
HttpWebResponse,
HttpListenerRequest,
HttpListenerResponse,
FtpWebRequest,
FtpWebResponse,
FileWebRequest,
FileWebResponse,
}
}

View File

@@ -0,0 +1,15 @@
using System.Runtime.CompilerServices;
namespace System.ComponentModel
{
partial class Win32Exception
{
[MethodImplAttribute (MethodImplOptions.InternalCall)]
internal static extern string W32ErrorMessage (int error_code);
private static string GetErrorMessage (int error)
{
return W32ErrorMessage (error);
}
}
}

View File

@@ -135,14 +135,12 @@ namespace System.CodeDom.Compiler {
CompilerInfo ci = GetCompilerInfo (language);
return (ci == null) ? null : ci.CreateProvider ();
}
#if NET_4_0
[ComVisible (false)]
public static CodeDomProvider CreateProvider (string language, IDictionary<string, string> providerOptions)
{
CompilerInfo ci = GetCompilerInfo (language);
return ci == null ? null : ci.CreateProvider (providerOptions);
}
#endif
#endif
public virtual string CreateValidIdentifier (string value)

View File

@@ -39,11 +39,7 @@ namespace System.CodeDom.Compiler
[ConfigurationCollection (typeof (Compiler), AddItemName = "compiler", CollectionType = ConfigurationElementCollectionType.BasicMap)]
internal sealed class CompilerCollection : ConfigurationElementCollection
{
#if NET_4_0
static readonly string defaultCompilerVersion = "3.5";
#else
static readonly string defaultCompilerVersion = "2.0";
#endif
static ConfigurationPropertyCollection properties;
static List <CompilerInfo> compiler_infos;
static Dictionary <string, CompilerInfo> compiler_languages;

View File

@@ -34,9 +34,6 @@ using System.Security.Permissions;
namespace System.CodeDom.Compiler {
[Serializable]
#if ONLY_1_1
[PermissionSet (SecurityAction.LinkDemand, Unrestricted = true)]
#endif
public class CompilerErrorCollection : CollectionBase
{
public CompilerErrorCollection ()

View File

@@ -103,9 +103,7 @@ namespace System.CodeDom.Compiler {
return CreateProvider (ProviderOptions);
}
#if NET_4_0
public
#endif
CodeDomProvider CreateProvider (IDictionary<string, string> providerOptions)
{
Type providerType = CodeDomProviderType;

View File

@@ -96,9 +96,7 @@ namespace System.CodeDom.Compiler {
}
}
#if NET_4_0
[Obsolete]
#endif
public Evidence Evidence {
get { return evidence; }
[SecurityPermission (SecurityAction.Demand, ControlEvidence = true)]

View File

@@ -68,4 +68,4 @@ namespace System.CodeDom.Compiler
}
}
}
#endif
#endif

View File

@@ -128,4 +128,4 @@ namespace System.CodeDom.Compiler
}
}
}
#endif
#endif

Some files were not shown because too many files have changed in this diff Show More