From: Rodrigo Kumpera Date: Tue, 31 May 2016 20:58:09 +0000 (-0700) Subject: Merge pull request #3080 from BrzVlad/feature-enable-conc-master X-Git-Url: http://wien.tomnetworks.com/gitweb/?a=commitdiff_plain;h=07b2a10491496316c18a442effd4484c2dadc85d;hp=40c3b472e650d8638b764546ac18c28000d9eb9b;p=mono.git Merge pull request #3080 from BrzVlad/feature-enable-conc-master [sgen] Enable concurrent major by default on desktop platforms --- diff --git a/build-libs.bat b/build-libs.bat index df0d97868d6..342a6b8daf3 100644 --- a/build-libs.bat +++ b/build-libs.bat @@ -1,4 +1,7 @@ @echo off cd mcs\jay vcbuild jay.vcxproj +cd msvc\scripts +csc prepare.cs +prepare.exe ..\..\mcs core msbuild net_4_x.sln diff --git a/build-libs.sh b/build-libs.sh index 1b339764f88..f7583abaa03 100755 --- a/build-libs.sh +++ b/build-libs.sh @@ -1,4 +1,4 @@ #!/bin/sh (cd mcs/jay; make) -(cd msvc/scripts/; make prepare.exe; mono prepare.exe `pwd`/mcs core) +(cd msvc/scripts/; make prepare.exe; mono prepare.exe ../../mcs core) msbuild net_4_x.sln diff --git a/mcs/class/Commons.Xml.Relaxng/Commons.Xml.Relaxng-net_4_x.csproj b/mcs/class/Commons.Xml.Relaxng/Commons.Xml.Relaxng-net_4_x.csproj index 3d843029406..2539a5b4b18 100644 --- a/mcs/class/Commons.Xml.Relaxng/Commons.Xml.Relaxng-net_4_x.csproj +++ b/mcs/class/Commons.Xml.Relaxng/Commons.Xml.Relaxng-net_4_x.csproj @@ -101,7 +101,7 @@ $(ProjectDir)\..\..\jay\jay -ct < $(ProjectDir)\..\..\jay\skeleton.cs $(Proje -$(ProjectDir)\..\..\jay\jay.exe -ct < $(ProjectDir)\..\..\jay\skeleton.cs $(ProjectDir)\Commons.Xml.Relaxng.Rnc\RncParser.jay > $(ProjectDir)\Commons.Xml.Relaxng.Rnc\RncParser.cs +$(ProjectDir)\..\..\jay\jay -ct < $(ProjectDir)\..\..\jay\skeleton.cs $(ProjectDir)\Commons.Xml.Relaxng.Rnc\RncParser.jay > $(ProjectDir)\Commons.Xml.Relaxng.Rnc\RncParser.cs diff --git a/mcs/class/Microsoft.Build/Microsoft.Build-net_4_x.csproj b/mcs/class/Microsoft.Build/Microsoft.Build-net_4_x.csproj index 5c862548286..24dd6dd3751 100644 --- a/mcs/class/Microsoft.Build/Microsoft.Build-net_4_x.csproj +++ b/mcs/class/Microsoft.Build/Microsoft.Build-net_4_x.csproj @@ -167,9 +167,11 @@ --> +$(ProjectDir)\..\..\jay\jay -ct < $(ProjectDir)\..\..\jay\skeleton.cs $(ProjectDir)\Microsoft.Build.Internal\ExpressionParser.jay > $(ProjectDir)\Microsoft.Build.Internal\ExpressionParser.cs +$(ProjectDir)\..\..\jay\jay -ct < $(ProjectDir)\..\..\jay\skeleton.cs $(ProjectDir)\Microsoft.Build.Internal\ExpressionParser.jay > $(ProjectDir)\Microsoft.Build.Internal\ExpressionParser.cs diff --git a/mcs/class/Mono.Data.Sqlite/Makefile b/mcs/class/Mono.Data.Sqlite/Makefile index a5453d47d27..35eb5c1bb81 100644 --- a/mcs/class/Mono.Data.Sqlite/Makefile +++ b/mcs/class/Mono.Data.Sqlite/Makefile @@ -42,5 +42,5 @@ $(PREBUILT): %.prebuilt: % cp $* $@ $(RESX_RESOURCES): %.resources: %.resx - $(RESGEN) $< || cp $@.prebuilt $@ + $(RESGEN) -useSourcePath $< || cp $@.prebuilt $@ diff --git a/mcs/class/Mono.Data.Sqlite/Mono.Data.Sqlite-net_4_x.csproj b/mcs/class/Mono.Data.Sqlite/Mono.Data.Sqlite-net_4_x.csproj index 2b722aaff49..7a1ee0ced12 100644 --- a/mcs/class/Mono.Data.Sqlite/Mono.Data.Sqlite-net_4_x.csproj +++ b/mcs/class/Mono.Data.Sqlite/Mono.Data.Sqlite-net_4_x.csproj @@ -127,7 +127,7 @@ - + SR.resources diff --git a/mcs/class/Mono.Data.Sqlite/resources/SR.resx b/mcs/class/Mono.Data.Sqlite/resources/SR.resx index 9851beb1a81..082a3e024a7 100644 --- a/mcs/class/Mono.Data.Sqlite/resources/SR.resx +++ b/mcs/class/Mono.Data.Sqlite/resources/SR.resx @@ -119,12 +119,12 @@ - resources/DataTypes.xml;System.String, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;utf-8 + DataTypes.xml;System.String, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;utf-8 ALL,ALTER,AND,AS,AUTOINCREMENT,BETWEEN,BY,CASE,CHECK,COLLATE,COMMIT,CONSTRAINT,CREATE,CROSS,DEFAULT,DEFERRABLE,DELETE,DISTINCT,DROP,ELSE,ESCAPE,EXCEPT,FOREIGN,FROM,FULL,GROUP,HAVING,IN,INDEX,INNER,INSERT,INTERSECT,INTO,IS,ISNULL,JOIN,LEFT,LIMIT,NATURAL,NOT,NOTNULL,NULL,ON,OR,ORDER,OUTER,PRIMARY,REFERENCES,RIGHT,ROLLBACK,SELECT,SET,TABLE,THEN,TO,TRANSACTION,UNION,UNIQUE,UPDATE,USING,VALUES,WHEN,WHERE - resources/MetaDataCollections.xml;System.String, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;utf-8 + MetaDataCollections.xml;System.String, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;utf-8 - \ No newline at end of file + diff --git a/mcs/class/RabbitMQ.Client/src/apigen/RabbitMQ.Client.Apigen-net_4_x.csproj b/mcs/class/RabbitMQ.Client/src/apigen/RabbitMQ.Client.Apigen-net_4_x.csproj index 774bd89e35c..21fe03503f4 100644 --- a/mcs/class/RabbitMQ.Client/src/apigen/RabbitMQ.Client.Apigen-net_4_x.csproj +++ b/mcs/class/RabbitMQ.Client/src/apigen/RabbitMQ.Client.Apigen-net_4_x.csproj @@ -92,9 +92,9 @@ mono RabbitMQ.Client.Apigen.exe /n:v0_8qpid "/apiName:AMQP_0_8_QPID" $(ProjectDi - RabbitMQ.Client.Apigen.exe /n:v0_9 "/apiName:AMQP_0_9" $(ProjectDir)..\..\docs\specs\amqp0-9.stripped.xml $(ProjectDir)..\..\docs\specs\net_4_x-api-0-9.cs - RabbitMQ.Client.Apigen.exe /n:v0_8 "/apiName:AMQP_0_8" $(ProjectDir)..\..\docs\specs\amqp0-8.stripped.xml $(ProjectDir)..\..\docs\specs\net_4_x-api-0-8.cs - RabbitMQ.Client.Apigen.exe /n:v0_8qpid "/apiName:AMQP_0_8_QPID" $(ProjectDir)..\..\docs\specs\qpid-amqp.0-8.stripped.xml $(ProjectDir)..\..\docs\specs\net_4_x-api-qpid-0-8.cs +mono RabbitMQ.Client.Apigen.exe /n:v0_9 "/apiName:AMQP_0_9" $(ProjectDir)..\..\docs\specs\amqp0-9.stripped.xml $(ProjectDir)..\..\docs\specs\net_4_x-api-0-9.cs +mono RabbitMQ.Client.Apigen.exe /n:v0_8 "/apiName:AMQP_0_8" $(ProjectDir)..\..\docs\specs\amqp0-8.stripped.xml $(ProjectDir)..\..\docs\specs\net_4_x-api-0-8.cs +mono RabbitMQ.Client.Apigen.exe /n:v0_8qpid "/apiName:AMQP_0_8_QPID" $(ProjectDir)..\..\docs\specs\qpid-amqp.0-8.stripped.xml $(ProjectDir)..\..\docs\specs\net_4_x-api-qpid-0-8.cs diff --git a/mcs/class/System.ComponentModel.Composition.4.5/System.ComponentModel.Composition-net_4_x.csproj b/mcs/class/System.ComponentModel.Composition.4.5/System.ComponentModel.Composition-net_4_x.csproj index 7f8014de96b..a676a9be185 100644 --- a/mcs/class/System.ComponentModel.Composition.4.5/System.ComponentModel.Composition-net_4_x.csproj +++ b/mcs/class/System.ComponentModel.Composition.4.5/System.ComponentModel.Composition-net_4_x.csproj @@ -232,10 +232,10 @@ --> - +resgen $(ProjectDir)\src\ComponentModel\Strings.resx $(ProjectDir)\Microsoft.Internal.Strings.resx - +resgen $(ProjectDir)\src\ComponentModel\Strings.resx $(ProjectDir)\Microsoft.Internal.Strings.resx diff --git a/mcs/class/System.Data.Services.Client/System.Data.Services.Client-net_4_x.csproj b/mcs/class/System.Data.Services.Client/System.Data.Services.Client-net_4_x.csproj index 86f2abd37b1..55b9e130c8c 100644 --- a/mcs/class/System.Data.Services.Client/System.Data.Services.Client-net_4_x.csproj +++ b/mcs/class/System.Data.Services.Client/System.Data.Services.Client-net_4_x.csproj @@ -173,10 +173,10 @@ --> - +resgen $(ProjectDir)\Client\System.Data.Services.Client.txt $(ProjectDir)\Client\System.Data.Services.Client.resx - +resgen $(ProjectDir)\Client\System.Data.Services.Client.txt $(ProjectDir)\Client\System.Data.Services.Client.resx diff --git a/mcs/class/System.Reactive.Core/System.Reactive.Core-net_4_x.csproj b/mcs/class/System.Reactive.Core/System.Reactive.Core-net_4_x.csproj index 0a372455e9c..7b3dfa248de 100644 --- a/mcs/class/System.Reactive.Core/System.Reactive.Core-net_4_x.csproj +++ b/mcs/class/System.Reactive.Core/System.Reactive.Core-net_4_x.csproj @@ -176,7 +176,7 @@ - + System.Reactive.Strings_Core.resources diff --git a/mcs/class/System.Reactive.Linq/System.Reactive.Linq-net_4_x.csproj b/mcs/class/System.Reactive.Linq/System.Reactive.Linq-net_4_x.csproj index cd90704cc90..67b2b8a8844 100644 --- a/mcs/class/System.Reactive.Linq/System.Reactive.Linq-net_4_x.csproj +++ b/mcs/class/System.Reactive.Linq/System.Reactive.Linq-net_4_x.csproj @@ -273,7 +273,7 @@ - + System.Reactive.Strings_Linq.resources diff --git a/mcs/class/System.Reactive.PlatformServices/System.Reactive.PlatformServices-net_4_x.csproj b/mcs/class/System.Reactive.PlatformServices/System.Reactive.PlatformServices-net_4_x.csproj index 6b5d1cfbe83..538ff9529d9 100644 --- a/mcs/class/System.Reactive.PlatformServices/System.Reactive.PlatformServices-net_4_x.csproj +++ b/mcs/class/System.Reactive.PlatformServices/System.Reactive.PlatformServices-net_4_x.csproj @@ -125,7 +125,7 @@ - + System.Reactive.Strings_PlatformServices.resources diff --git a/mcs/class/System.Reactive.Providers/System.Reactive.Providers-net_4_x.csproj b/mcs/class/System.Reactive.Providers/System.Reactive.Providers-net_4_x.csproj index 3fd5344a43b..0099448bd54 100644 --- a/mcs/class/System.Reactive.Providers/System.Reactive.Providers-net_4_x.csproj +++ b/mcs/class/System.Reactive.Providers/System.Reactive.Providers-net_4_x.csproj @@ -118,7 +118,7 @@ - + System.Reactive.Strings_Providers.resources diff --git a/mcs/class/System.Reactive.Windows.Threading/System.Reactive.Windows.Threading-net_4_x.csproj b/mcs/class/System.Reactive.Windows.Threading/System.Reactive.Windows.Threading-net_4_x.csproj index abb30575708..2399dc270ca 100644 --- a/mcs/class/System.Reactive.Windows.Threading/System.Reactive.Windows.Threading-net_4_x.csproj +++ b/mcs/class/System.Reactive.Windows.Threading/System.Reactive.Windows.Threading-net_4_x.csproj @@ -118,7 +118,7 @@ - + System.Reactive.Strings_WindowsThreading.resources diff --git a/mcs/class/System.Web.Razor/System.Web.Razor-net_4_x.csproj b/mcs/class/System.Web.Razor/System.Web.Razor-net_4_x.csproj index 495234806c5..561a784fa70 100644 --- a/mcs/class/System.Web.Razor/System.Web.Razor-net_4_x.csproj +++ b/mcs/class/System.Web.Razor/System.Web.Razor-net_4_x.csproj @@ -213,10 +213,12 @@ --> - +resgen $(ProjectDir)\..\..\..\external\aspnetwebstack\src\CommonResources.resx $(ProjectDir)\System.Web.Razor.Common.CommonResources.resx +resgen $(ProjectDir)\..\..\..\external\aspnetwebstack\src\System.Web.Razor\Resources\RazorResources.resx $(ProjectDir)\System.Web.Razor.Resources.RazorResources.resx - +resgen $(ProjectDir)\..\..\..\external\aspnetwebstack\src\CommonResources.resx $(ProjectDir)\System.Web.Razor.Common.CommonResources.resx +resgen $(ProjectDir)\..\..\..\external\aspnetwebstack\src\System.Web.Razor\Resources\RazorResources.resx $(ProjectDir)\System.Web.Razor.Resources.RazorResources.resx diff --git a/mcs/class/System.Web/System.Web-net_4_x.csproj b/mcs/class/System.Web/System.Web-net_4_x.csproj index c3cd7cc5262..109abe9ccc9 100644 --- a/mcs/class/System.Web/System.Web-net_4_x.csproj +++ b/mcs/class/System.Web/System.Web-net_4_x.csproj @@ -1488,9 +1488,13 @@ --> +mono $(ProjectDir)\..\lib\net_4_x\culevel.exe -o $(ProjectDir)\System.Web\UplevelHelper.cs $(ProjectDir)\UplevelHelperDefinitions.xml + +mono $(ProjectDir)\..\lib\net_4_x\culevel.exe -o $(ProjectDir)\System.Web\UplevelHelper.cs $(ProjectDir)\UplevelHelperDefinitions.xml + diff --git a/mcs/class/System.Web/System.Web-plainweb-net_4_x.csproj b/mcs/class/System.Web/System.Web-plainweb-net_4_x.csproj index 1cff7182230..9d01a0e6398 100644 --- a/mcs/class/System.Web/System.Web-plainweb-net_4_x.csproj +++ b/mcs/class/System.Web/System.Web-plainweb-net_4_x.csproj @@ -1488,9 +1488,13 @@ --> +mono $(ProjectDir)\..\lib\net_4_x\culevel.exe -o $(ProjectDir)\System.Web\UplevelHelper.cs $(ProjectDir)\UplevelHelperDefinitions.xml + +mono $(ProjectDir)\..\lib\net_4_x\culevel.exe -o $(ProjectDir)\System.Web\UplevelHelper.cs $(ProjectDir)\UplevelHelperDefinitions.xml + diff --git a/mcs/class/System.Windows.Forms/System.Windows.Forms-net_4_x.csproj b/mcs/class/System.Windows.Forms/System.Windows.Forms-net_4_x.csproj index 52e2326bdce..c1e931e0a9b 100644 --- a/mcs/class/System.Windows.Forms/System.Windows.Forms-net_4_x.csproj +++ b/mcs/class/System.Windows.Forms/System.Windows.Forms-net_4_x.csproj @@ -1049,7 +1049,7 @@ System.Windows.Forms.DnDMove.cur - + keyboards.resources diff --git a/mcs/class/System/System-bare-net_4_x.csproj b/mcs/class/System/System-bare-net_4_x.csproj index 3419b1ba3ad..d145183c330 100644 --- a/mcs/class/System/System-bare-net_4_x.csproj +++ b/mcs/class/System/System-bare-net_4_x.csproj @@ -28,7 +28,7 @@ full 1699,618 false - TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE;CONFIGURATION_2_0;FEATURE_PAL;SYSTEM_NAMESPACE;MONO;PLATFORM_UNIX;MONO_FEATURE_PROCESS_START;MONO_FEATURE_THREAD_ABORT;MONO_FEATURE_THREAD_SUSPEND_RESUME + TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE;CONFIGURATION_2_0;FEATURE_PAL;SYSTEM_NAMESPACE;MONO;PLATFORM_UNIX;MONO_FEATURE_PROCESS_START;MONO_FEATURE_THREAD_ABORT;MONO_FEATURE_THREAD_SUSPEND_RESUME;MONO_FEATURE_MULTIPLE_APPDOMAINS prompt 4 @@ -36,7 +36,7 @@ pdbonly 1699,618 true - NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE;CONFIGURATION_2_0;FEATURE_PAL;SYSTEM_NAMESPACE;MONO;PLATFORM_UNIX;MONO_FEATURE_PROCESS_START;MONO_FEATURE_THREAD_ABORT;MONO_FEATURE_THREAD_SUSPEND_RESUME + NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE;CONFIGURATION_2_0;FEATURE_PAL;SYSTEM_NAMESPACE;MONO;PLATFORM_UNIX;MONO_FEATURE_PROCESS_START;MONO_FEATURE_THREAD_ABORT;MONO_FEATURE_THREAD_SUSPEND_RESUME;MONO_FEATURE_MULTIPLE_APPDOMAINS prompt 4 @@ -492,6 +492,7 @@ + @@ -499,20 +500,29 @@ + + + + + + + + + @@ -528,6 +538,7 @@ + @@ -638,6 +649,8 @@ + + @@ -763,6 +776,7 @@ + @@ -772,6 +786,7 @@ + @@ -781,7 +796,6 @@ - @@ -1072,7 +1086,6 @@ - @@ -1089,7 +1102,6 @@ - @@ -1126,8 +1138,6 @@ - - diff --git a/mcs/class/System/System-net_4_x.csproj b/mcs/class/System/System-net_4_x.csproj index 757869a3165..5a955e92850 100644 --- a/mcs/class/System/System-net_4_x.csproj +++ b/mcs/class/System/System-net_4_x.csproj @@ -28,7 +28,7 @@ full 1699,618 false - TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE;CONFIGURATION_2_0;FEATURE_PAL;SYSTEM_NAMESPACE;MONO;PLATFORM_UNIX;MONO_FEATURE_PROCESS_START;MONO_FEATURE_THREAD_ABORT;MONO_FEATURE_THREAD_SUSPEND_RESUME;SECURITY_DEP;XML_DEP;MONO_SECURITY_ALIAS;CONFIGURATION_DEP + TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE;CONFIGURATION_2_0;FEATURE_PAL;SYSTEM_NAMESPACE;MONO;PLATFORM_UNIX;MONO_FEATURE_PROCESS_START;MONO_FEATURE_THREAD_ABORT;MONO_FEATURE_THREAD_SUSPEND_RESUME;MONO_FEATURE_MULTIPLE_APPDOMAINS;SECURITY_DEP;XML_DEP;MONO_SECURITY_ALIAS;CONFIGURATION_DEP prompt 4 @@ -36,7 +36,7 @@ pdbonly 1699,618 true - NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE;CONFIGURATION_2_0;FEATURE_PAL;SYSTEM_NAMESPACE;MONO;PLATFORM_UNIX;MONO_FEATURE_PROCESS_START;MONO_FEATURE_THREAD_ABORT;MONO_FEATURE_THREAD_SUSPEND_RESUME;SECURITY_DEP;XML_DEP;MONO_SECURITY_ALIAS;CONFIGURATION_DEP + NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE;CONFIGURATION_2_0;FEATURE_PAL;SYSTEM_NAMESPACE;MONO;PLATFORM_UNIX;MONO_FEATURE_PROCESS_START;MONO_FEATURE_THREAD_ABORT;MONO_FEATURE_THREAD_SUSPEND_RESUME;MONO_FEATURE_MULTIPLE_APPDOMAINS;SECURITY_DEP;XML_DEP;MONO_SECURITY_ALIAS;CONFIGURATION_DEP prompt 4 @@ -492,6 +492,7 @@ + @@ -499,20 +500,29 @@ + + + + + + + + + @@ -528,6 +538,7 @@ + @@ -638,6 +649,8 @@ + + @@ -763,6 +776,7 @@ + @@ -772,6 +786,7 @@ + @@ -781,7 +796,6 @@ - @@ -1072,7 +1086,6 @@ - @@ -1089,7 +1102,6 @@ - @@ -1126,8 +1138,6 @@ - - diff --git a/mcs/class/System/System-secxml-net_4_x.csproj b/mcs/class/System/System-secxml-net_4_x.csproj index ebfc1d0cc3a..6f18eeb5f4e 100644 --- a/mcs/class/System/System-secxml-net_4_x.csproj +++ b/mcs/class/System/System-secxml-net_4_x.csproj @@ -28,7 +28,7 @@ full 1699,618 false - TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE;CONFIGURATION_2_0;FEATURE_PAL;SYSTEM_NAMESPACE;MONO;PLATFORM_UNIX;MONO_FEATURE_PROCESS_START;MONO_FEATURE_THREAD_ABORT;MONO_FEATURE_THREAD_SUSPEND_RESUME;SECURITY_DEP;XML_DEP;MONO_SECURITY_ALIAS + TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE;CONFIGURATION_2_0;FEATURE_PAL;SYSTEM_NAMESPACE;MONO;PLATFORM_UNIX;MONO_FEATURE_PROCESS_START;MONO_FEATURE_THREAD_ABORT;MONO_FEATURE_THREAD_SUSPEND_RESUME;MONO_FEATURE_MULTIPLE_APPDOMAINS;SECURITY_DEP;XML_DEP;MONO_SECURITY_ALIAS prompt 4 @@ -36,7 +36,7 @@ pdbonly 1699,618 true - NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE;CONFIGURATION_2_0;FEATURE_PAL;SYSTEM_NAMESPACE;MONO;PLATFORM_UNIX;MONO_FEATURE_PROCESS_START;MONO_FEATURE_THREAD_ABORT;MONO_FEATURE_THREAD_SUSPEND_RESUME;SECURITY_DEP;XML_DEP;MONO_SECURITY_ALIAS + NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE;CONFIGURATION_2_0;FEATURE_PAL;SYSTEM_NAMESPACE;MONO;PLATFORM_UNIX;MONO_FEATURE_PROCESS_START;MONO_FEATURE_THREAD_ABORT;MONO_FEATURE_THREAD_SUSPEND_RESUME;MONO_FEATURE_MULTIPLE_APPDOMAINS;SECURITY_DEP;XML_DEP;MONO_SECURITY_ALIAS prompt 4 @@ -492,6 +492,7 @@ + @@ -499,20 +500,29 @@ + + + + + + + + + @@ -528,6 +538,7 @@ + @@ -638,6 +649,8 @@ + + @@ -763,6 +776,7 @@ + @@ -772,6 +786,7 @@ + @@ -781,7 +796,6 @@ - @@ -1072,7 +1086,6 @@ - @@ -1089,7 +1102,6 @@ - @@ -1126,8 +1138,6 @@ - - diff --git a/mcs/class/monodoc/monodoc-net_4_x.csproj b/mcs/class/monodoc/monodoc-net_4_x.csproj index 4413f8ae0f7..92b54f9ccdb 100644 --- a/mcs/class/monodoc/monodoc-net_4_x.csproj +++ b/mcs/class/monodoc/monodoc-net_4_x.csproj @@ -530,9 +530,13 @@ --> +$(ProjectDir)\..\..\jay\jay -ct < $(ProjectDir)\..\..\jay\skeleton.cs $(ProjectDir)\Monodoc.Ecma\EcmaUrlParser.jay > $(ProjectDir)\Monodoc.Ecma\EcmaUrlParser.cs + +$(ProjectDir)\..\..\jay\jay -ct < $(ProjectDir)\..\..\jay\skeleton.cs $(ProjectDir)\Monodoc.Ecma\EcmaUrlParser.jay > $(ProjectDir)\Monodoc.Ecma\EcmaUrlParser.cs + diff --git a/mcs/ilasm/ilasm-net_4_x.csproj b/mcs/ilasm/ilasm-net_4_x.csproj index bb3643e628c..cf8834c52c7 100644 --- a/mcs/ilasm/ilasm-net_4_x.csproj +++ b/mcs/ilasm/ilasm-net_4_x.csproj @@ -144,9 +144,13 @@ --> +$(ProjectDir)\..\jay\jay -ct < $(ProjectDir)\..\jay\skeleton.cs $(ProjectDir)\parser\ILParser.jay > $(ProjectDir)\ILParser.cs + +$(ProjectDir)\..\jay\jay -ct < $(ProjectDir)\..\jay\skeleton.cs $(ProjectDir)\parser\ILParser.jay > $(ProjectDir)\ILParser.cs + diff --git a/mcs/mcs/ecore.cs b/mcs/mcs/ecore.cs index 63d6367309d..127df271c79 100644 --- a/mcs/mcs/ecore.cs +++ b/mcs/mcs/ecore.cs @@ -4482,8 +4482,8 @@ namespace Mono.CSharp { // // Uwrap delegate from Expression // - q = TypeManager.GetTypeArguments (q)[0]; - p = TypeManager.GetTypeArguments (p)[0]; + q = TypeManager.GetTypeArguments (q) [0]; + p = TypeManager.GetTypeArguments (p) [0]; } var p_m = Delegate.GetInvokeMethod (p); @@ -4510,10 +4510,10 @@ namespace Mono.CSharp { // if p has a return type Y, and q is void returning, then C1 is the better conversion. // if (q.Kind == MemberKind.Void) { - return p.Kind != MemberKind.Void ? 1: 0; + return p.Kind != MemberKind.Void ? 1 : 0; } - var am = (AnonymousMethodExpression) a.Expr; + var am = (AnonymousMethodExpression)a.Expr; // // When anonymous method is an asynchronous, and P has a return type Task, and Q has a return type Task @@ -4521,8 +4521,8 @@ namespace Mono.CSharp { // if (p.IsGenericTask || q.IsGenericTask) { if (am.Block.IsAsync && p.IsGenericTask && q.IsGenericTask) { - q = q.TypeArguments[0]; - p = p.TypeArguments[0]; + q = q.TypeArguments [0]; + p = p.TypeArguments [0]; } } @@ -4548,11 +4548,63 @@ namespace Mono.CSharp { if (argument_type == q) return 2; - // - // The parameters are identicial and return type is not void, use better type conversion - // on return type to determine better one - // - return BetterTypeConversion (ec, p, q); + return IsBetterConversionTarget (ec, p, q); + } + + static int IsBetterConversionTarget (ResolveContext rc, TypeSpec p, TypeSpec q) + { + if ((p.Kind == MemberKind.Delegate || p.IsExpressionTreeType) && (q.Kind == MemberKind.Delegate || q.IsExpressionTreeType)) { + + if (p.Kind != MemberKind.Delegate) { + p = TypeManager.GetTypeArguments (p) [0]; + } + + if (q.Kind != MemberKind.Delegate) { + q = TypeManager.GetTypeArguments (q) [0]; + } + + var p_m = Delegate.GetInvokeMethod (p); + var q_m = Delegate.GetInvokeMethod (q); + + p = p_m.ReturnType; + q = q_m.ReturnType; + + // + // if p is void returning, and q has a return type Y, then C2 is the better conversion. + // + if (p.Kind == MemberKind.Void) { + return q.Kind != MemberKind.Void ? 2 : 0; + } + + // + // if p has a return type Y, and q is void returning, then C1 is the better conversion. + // + if (q.Kind == MemberKind.Void) { + return p.Kind != MemberKind.Void ? 1 : 0; + } + + return IsBetterConversionTarget (rc, p, q); + } + + if (p.IsGenericTask && q.IsGenericTask) { + q = q.TypeArguments [0]; + p = p.TypeArguments [0]; + return IsBetterConversionTarget (rc, p, q); + } + + if (p.IsNullableType) { + p = Nullable.NullableInfo.GetUnderlyingType (p); + if (!BuiltinTypeSpec.IsPrimitiveType (p)) + return 0; + } + + if (q.IsNullableType) { + q = Nullable.NullableInfo.GetUnderlyingType (q); + if (!BuiltinTypeSpec.IsPrimitiveType (q)) + return 0; + } + + return BetterTypeConversion (rc, p, q); } // @@ -4625,8 +4677,6 @@ namespace Mono.CSharp { return 1; } - // FIXME: handle lifted operators - // TODO: this is expensive Expression p_tmp = new EmptyExpression (p); Expression q_tmp = new EmptyExpression (q); diff --git a/mcs/mcs/mcs-net_4_x.csproj b/mcs/mcs/mcs-net_4_x.csproj index e36e17bc2d0..46bedb48612 100644 --- a/mcs/mcs/mcs-net_4_x.csproj +++ b/mcs/mcs/mcs-net_4_x.csproj @@ -123,11 +123,13 @@ --> -$(ProjectDir)\..\jay\jay -ct < $(ProjectDir)\..\jay\skeleton.cs $(ProjectDir)\cs-parser.jay > $(ProjectDir)\cs-parser.cs +$(ProjectDir)\..\jay\jay -ct < $(ProjectDir)\..\jay\skeleton.cs $(ProjectDir)\cs-parser.jay > $(ProjectDir)\cs-parser.cs + -$(ProjectDir)\..\jay\jay.exe -ct < $(ProjectDir)\..\jay\skeleton.cs $(ProjectDir)\cs-parser.jay > $(ProjectDir)\cs-parser.cs +$(ProjectDir)\..\jay\jay -ct < $(ProjectDir)\..\jay\skeleton.cs $(ProjectDir)\cs-parser.jay > $(ProjectDir)\cs-parser.cs + diff --git a/mcs/tests/test-935.cs b/mcs/tests/test-935.cs new file mode 100644 index 00000000000..c47d89dc628 --- /dev/null +++ b/mcs/tests/test-935.cs @@ -0,0 +1,74 @@ +using System; +using System.Threading.Tasks; +using System.Linq.Expressions; + +public static class Program +{ + public delegate void DelegateVoid (int arg); + public delegate int DelegateInt (string arg); + + public static int Main () + { + Foo (Bar); + + TT (null); + NN (0); + NN2 (1); + Complex (null); + return 0; + } + + static void TT (Task a) + { + } + + static void TT (Task b) + { + throw new ApplicationException ("wrong overload"); + } + + static void NN (sbyte a) + { + } + + static void NN (uint? b) + { + throw new ApplicationException ("wrong overload"); + } + + static void NN2 (sbyte? a) + { + } + + static void NN2 (uint? b) + { + throw new ApplicationException ("wrong overload"); + } + + public static void Bar (int arg) + { + } + + public static int Bar (string arg) + { + return 2; + } + + public static void Foo (DelegateVoid input) + { + throw new ApplicationException ("wrong overload"); + } + + public static void Foo (DelegateInt input) + { + } + + static void Complex (Expression>> arg) + { + } + + static void Complex (Expression>> arg) + { + throw new ApplicationException ("wrong overload"); + } +} \ No newline at end of file diff --git a/mcs/tests/ver-il-net_4_x.xml b/mcs/tests/ver-il-net_4_x.xml index 7ba3329b35d..f49ba8fbf11 100644 --- a/mcs/tests/ver-il-net_4_x.xml +++ b/mcs/tests/ver-il-net_4_x.xml @@ -52102,6 +52102,77 @@ + + + + 73 + + + 2 + + + 12 + + + 2 + + + 12 + + + 2 + + + 12 + + + 2 + + + 10 + + + 12 + + + 2 + + + 2 + + + 12 + + + + + 0 + + + 0 + + + 0 + + + 0 + + + + + 0 + + + 0 + + + 0 + + + 0 + + + diff --git a/mcs/tools/mconfig/Makefile b/mcs/tools/mconfig/Makefile index 92fc95c91f1..48b315986db 100644 --- a/mcs/tools/mconfig/Makefile +++ b/mcs/tools/mconfig/Makefile @@ -6,17 +6,12 @@ LOCAL_MCS_FLAGS = LIB_REFS = System.Xml System PROGRAM = mconfig.exe -BUILT_SOURCES=Mono.MonoConfig/consts.cs - -Mono.MonoConfig/consts.cs: Mono.MonoConfig/consts.cs.in - sed -e "s;@MONO_SYSCONFDIR@;$(sysconfdir);g" < $< > $@ - install-local: install-local-data install-local-data: $(MKINSTALLDIRS) $(DESTDIR)$(sysconfdir)/mono/mconfig/ $(INSTALL_DATA) data/config.xml $(DESTDIR)$(sysconfdir)/mono/mconfig -EXTRA_DISTFILES = TODO data/config.xml Mono.MonoConfig/consts.cs.in +EXTRA_DISTFILES = TODO data/config.xml include ../../build/executable.make diff --git a/mcs/tools/mconfig/Mono.MonoConfig/consts.cs.in b/mcs/tools/mconfig/Mono.MonoConfig/consts.cs.in deleted file mode 100644 index 8b7cbbe29f1..00000000000 --- a/mcs/tools/mconfig/Mono.MonoConfig/consts.cs.in +++ /dev/null @@ -1,43 +0,0 @@ -// -// Authors: -// Marek Habersack (mhabersack@novell.com) -// -// (C) 2007 Novell, 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; - -namespace Mono.MonoConfig -{ - public class Constants - { - public static readonly string GlobalConfigPath; - - static Constants () - { - GlobalConfigPath = String.Format ("@MONO_SYSCONFDIR@{0}mono{0}mconfig{0}config.xml", - Path.DirectorySeparatorChar); - } - } -} diff --git a/mcs/tools/mconfig/mconfig-net_4_x.csproj b/mcs/tools/mconfig/mconfig-net_4_x.csproj index fe3428355ae..b7d60941357 100644 --- a/mcs/tools/mconfig/mconfig-net_4_x.csproj +++ b/mcs/tools/mconfig/mconfig-net_4_x.csproj @@ -67,8 +67,7 @@ - - +