diff --git a/configure.REMOVED.git-id b/configure.REMOVED.git-id index 642b874757..2e4a2dfc36 100644 --- a/configure.REMOVED.git-id +++ b/configure.REMOVED.git-id @@ -1 +1 @@ -938302587272c23437d39ac6e4eeec0b41200936 \ No newline at end of file +892cb9f8372fb5febc0b19e0794706d083602e8d \ No newline at end of file diff --git a/configure.ac.REMOVED.git-id b/configure.ac.REMOVED.git-id index 4dba5bbb7b..a116d3f065 100644 --- a/configure.ac.REMOVED.git-id +++ b/configure.ac.REMOVED.git-id @@ -1 +1 @@ -d9972fe8c9ab7c2cc95cb1c92228b0f57dd1abc1 \ No newline at end of file +765647b5b903bc28d1fef9b380033c7e97a449a1 \ No newline at end of file diff --git a/mcs/build/common/Consts.cs b/mcs/build/common/Consts.cs index 6b5ca0bd1f..2a9260f3ed 100644 --- a/mcs/build/common/Consts.cs +++ b/mcs/build/common/Consts.cs @@ -34,7 +34,7 @@ static class Consts // Use these assembly version constants to make code more maintainable. // - public const string MonoVersion = "5.2.0.196"; + public const string MonoVersion = "5.2.0.209"; public const string MonoCompany = "Mono development team"; public const string MonoProduct = "Mono Common Language Infrastructure"; public const string MonoCopyright = "(c) Various Mono authors"; diff --git a/mcs/class/corlib/System/TimeZoneInfo.cs b/mcs/class/corlib/System/TimeZoneInfo.cs index 3cb1757e35..1c5cdd3ae8 100644 --- a/mcs/class/corlib/System/TimeZoneInfo.cs +++ b/mcs/class/corlib/System/TimeZoneInfo.cs @@ -152,7 +152,7 @@ namespace System #if !MONODROID && !MONOTOUCH && !XAMMAC static TimeZoneInfo CreateLocal () { -#if (!FULL_AOT_DESKTOP || WIN_PLATFORM) && !XAMMAC_4_5 +#if WIN_PLATFORM if (IsWindows && LocalZoneKey != null) { string name = (string)LocalZoneKey.GetValue ("TimeZoneKeyName"); if (name == null) @@ -206,7 +206,7 @@ namespace System static void GetSystemTimeZonesCore (List systemTimeZones) { -#if (!FULL_AOT_DESKTOP || WIN_PLATFORM) && !XAMMAC_4_5 +#if WIN_PLATFORM if (TimeZoneKey != null) { foreach (string id in TimeZoneKey.GetSubKeyNames ()) { try { diff --git a/mcs/class/lib/monolite/1050200001/Mono.Security.dll.REMOVED.git-id b/mcs/class/lib/monolite/1050200001/Mono.Security.dll.REMOVED.git-id index 39d922d26c..8b7567b4f5 100644 --- a/mcs/class/lib/monolite/1050200001/Mono.Security.dll.REMOVED.git-id +++ b/mcs/class/lib/monolite/1050200001/Mono.Security.dll.REMOVED.git-id @@ -1 +1 @@ -4497cfcb5089d0ed6ed0b846294a63fbcf08f52e \ No newline at end of file +1ca3fde1b1b4c254fcb5eab73ff76e53342c705c \ No newline at end of file diff --git a/mcs/class/lib/monolite/1050200001/System.Configuration.dll.REMOVED.git-id b/mcs/class/lib/monolite/1050200001/System.Configuration.dll.REMOVED.git-id index 0db7623a1c..d733b5f90e 100644 --- a/mcs/class/lib/monolite/1050200001/System.Configuration.dll.REMOVED.git-id +++ b/mcs/class/lib/monolite/1050200001/System.Configuration.dll.REMOVED.git-id @@ -1 +1 @@ -b3e5819252f2dfe873b98496c4b9f7aba7845977 \ No newline at end of file +ce3d07f7ec1645e24655704e780af2c167ec2228 \ No newline at end of file diff --git a/mcs/class/lib/monolite/1050200001/System.Numerics.dll.REMOVED.git-id b/mcs/class/lib/monolite/1050200001/System.Numerics.dll.REMOVED.git-id index 92c09ba0f0..3a2efdb9b2 100644 --- a/mcs/class/lib/monolite/1050200001/System.Numerics.dll.REMOVED.git-id +++ b/mcs/class/lib/monolite/1050200001/System.Numerics.dll.REMOVED.git-id @@ -1 +1 @@ -b27b8a6e548edff6c0506e9b608ba59afdb8918a \ No newline at end of file +e06237966e578465031c9b5b75fda2646c22d3b8 \ No newline at end of file diff --git a/mcs/class/lib/monolite/1050200001/System.Security.dll.REMOVED.git-id b/mcs/class/lib/monolite/1050200001/System.Security.dll.REMOVED.git-id index 28cfe5b51e..0dbceb402a 100644 --- a/mcs/class/lib/monolite/1050200001/System.Security.dll.REMOVED.git-id +++ b/mcs/class/lib/monolite/1050200001/System.Security.dll.REMOVED.git-id @@ -1 +1 @@ -abe11ddc5086f3f9280be51b8317faade585a3d0 \ No newline at end of file +e5df4b091b873c156c670e852104e4fc3e8c0471 \ No newline at end of file diff --git a/mcs/class/lib/monolite/1050200001/System.Xml.dll.REMOVED.git-id b/mcs/class/lib/monolite/1050200001/System.Xml.dll.REMOVED.git-id index 771f8b94c8..f1b8318228 100644 --- a/mcs/class/lib/monolite/1050200001/System.Xml.dll.REMOVED.git-id +++ b/mcs/class/lib/monolite/1050200001/System.Xml.dll.REMOVED.git-id @@ -1 +1 @@ -793058153521be1aa8a87270c4b9b6946fe603fc \ No newline at end of file +5d90e89d6a858e59e8cc2236e8cc8c2123078544 \ No newline at end of file diff --git a/mcs/class/lib/monolite/1050200001/mscorlib.dll.REMOVED.git-id b/mcs/class/lib/monolite/1050200001/mscorlib.dll.REMOVED.git-id index 89b4986256..65a1934021 100644 --- a/mcs/class/lib/monolite/1050200001/mscorlib.dll.REMOVED.git-id +++ b/mcs/class/lib/monolite/1050200001/mscorlib.dll.REMOVED.git-id @@ -1 +1 @@ -1ddf2e51db3032fd1035fa077362a1776bda49ec \ No newline at end of file +d2881996900ded8e0a91bd974814b5bceb32a3f8 \ No newline at end of file diff --git a/mono/metadata/icall.c.REMOVED.git-id b/mono/metadata/icall.c.REMOVED.git-id index a1e9ec96d5..2974876233 100644 --- a/mono/metadata/icall.c.REMOVED.git-id +++ b/mono/metadata/icall.c.REMOVED.git-id @@ -1 +1 @@ -91d2682dc6ca4a024ddf6b780aadc6390c5aa4f5 \ No newline at end of file +8cde6305565e88ec7e71e3242c5d16d87b28ee71 \ No newline at end of file diff --git a/mono/metadata/w32handle.c b/mono/metadata/w32handle.c index cff31a8928..dfd42b1d05 100644 --- a/mono/metadata/w32handle.c +++ b/mono/metadata/w32handle.c @@ -683,6 +683,8 @@ w32handle_destroy (gpointer handle) close_func (handle, handle_specific); } + memset (handle_specific, 0, mono_w32handle_ops_typesize (type)); + g_free (handle_specific); } diff --git a/mono/mini/generics.cs b/mono/mini/generics.cs index e9b41a64e0..eafbd1c0e5 100644 --- a/mono/mini/generics.cs +++ b/mono/mini/generics.cs @@ -1314,6 +1314,13 @@ class Tests return RuntimeHelpers.IsReferenceOrContainsReferences (); } + class IsRefClass { + [MethodImplAttribute (MethodImplOptions.NoInlining)] + public bool is_ref () { + return RuntimeHelpers.IsReferenceOrContainsReferences (); + } + } + [MethodImplAttribute (MethodImplOptions.NoInlining)] public static bool is_ref_or_contains_refs_gen_ref () { return RuntimeHelpers.IsReferenceOrContainsReferences> (); @@ -1343,6 +1350,12 @@ class Tests int i; } + struct AStruct3 { + T1 t1; + T2 t2; + T3 t3; + } + public static int test_0_isreference_intrins () { if (RuntimeHelpers.IsReferenceOrContainsReferences ()) return 1; @@ -1368,6 +1381,14 @@ class Tests if (is_ref_or_contains_refs_gen_noref ()) return 10; + // Complex type from shared class method + var c1 = new IsRefClass> (); + if (c1.is_ref ()) + return 11; + var c2 = new IsRefClass> (); + if (!c2.is_ref ()) + return 12; + return 0; } } diff --git a/mono/mini/gshared.cs b/mono/mini/gshared.cs index 29943694c7..61402f7a4e 100644 --- a/mono/mini/gshared.cs +++ b/mono/mini/gshared.cs @@ -1972,6 +1972,30 @@ public class Tests gsharedvt_vphi (0); return 0; } + + struct AStruct3 { + T1 t1; + T2 t2; + T3 t3; + } + + interface IFaceIsRef { + bool is_ref (); + } + + class ClassIsRef : IFaceIsRef { + [MethodImplAttribute (MethodImplOptions.NoInlining)] + public bool is_ref () { + return RuntimeHelpers.IsReferenceOrContainsReferences (); + } + } + + public static int test_0_isreference_intrins () { + IFaceIsRef iface = new ClassIsRef (); + Console.WriteLine ("X: " + iface.is_ref> ()); + Console.WriteLine ("X: " + iface.is_ref> ()); + return 0; + } } // #13191 diff --git a/mono/mini/method-to-ir.c.REMOVED.git-id b/mono/mini/method-to-ir.c.REMOVED.git-id index 3f5a0281f9..d4890ccbbd 100644 --- a/mono/mini/method-to-ir.c.REMOVED.git-id +++ b/mono/mini/method-to-ir.c.REMOVED.git-id @@ -1 +1 @@ -770bd88ea486b45ddf4e7b0b0853bb2919302a9a \ No newline at end of file +326e6c1f9d2a80b0aee2b24acf87dcae411c4ffa \ No newline at end of file diff --git a/mono/mini/version.h b/mono/mini/version.h index 7e93b14621..2d31a96056 100644 --- a/mono/mini/version.h +++ b/mono/mini/version.h @@ -1 +1 @@ -#define FULL_VERSION "explicit/478c04a" +#define FULL_VERSION "explicit/3d531ba" diff --git a/mono/utils/mono-os-mutex.h b/mono/utils/mono-os-mutex.h index d6c5250256..3888d26441 100644 --- a/mono/utils/mono-os-mutex.h +++ b/mono/utils/mono-os-mutex.h @@ -215,7 +215,7 @@ mono_os_cond_timedwait (mono_cond_t *cond, mono_mutex_t *mutex, guint32 timeout_ res = pthread_cond_timedwait (cond, mutex, &ts); if (G_UNLIKELY (res != 0 && res != ETIMEDOUT)) - g_error ("%s: pthread_cond_timedwait failed with \"%s\" (%d)", __func__, g_strerror (res), res); + g_error ("%s: pthread_cond_timedwait failed with \"%s\" (%d) %ld %ld %d", __func__, g_strerror (res), res, ts.tv_sec, ts.tv_nsec, timeout_ms); return res != 0 ? -1 : 0; } diff --git a/po/mcs/de.gmo b/po/mcs/de.gmo index d5600c6f9a..2682246279 100644 Binary files a/po/mcs/de.gmo and b/po/mcs/de.gmo differ diff --git a/po/mcs/de.po.REMOVED.git-id b/po/mcs/de.po.REMOVED.git-id index ca0c90467d..f285487f16 100644 --- a/po/mcs/de.po.REMOVED.git-id +++ b/po/mcs/de.po.REMOVED.git-id @@ -1 +1 @@ -e43ee10cac736cf5caff5e90c39de29168d20d6c \ No newline at end of file +1ff674825e833f9eb6565b3b1b224fc68142c7ec \ No newline at end of file diff --git a/po/mcs/es.gmo b/po/mcs/es.gmo index 1d8117e3b8..a10f6cbe50 100644 Binary files a/po/mcs/es.gmo and b/po/mcs/es.gmo differ diff --git a/po/mcs/es.po.REMOVED.git-id b/po/mcs/es.po.REMOVED.git-id index 96e566b393..6641657e5c 100644 --- a/po/mcs/es.po.REMOVED.git-id +++ b/po/mcs/es.po.REMOVED.git-id @@ -1 +1 @@ -28d0680ed476c3f403c44ddf5cd77793cb914dc9 \ No newline at end of file +1f1bca67f5d7b53f10b917d6506b250e9b55aebc \ No newline at end of file diff --git a/po/mcs/ja.gmo b/po/mcs/ja.gmo index eefe8c4a61..8450cec434 100644 Binary files a/po/mcs/ja.gmo and b/po/mcs/ja.gmo differ diff --git a/po/mcs/ja.po.REMOVED.git-id b/po/mcs/ja.po.REMOVED.git-id index 79fcb0b0a7..949d190ab1 100644 --- a/po/mcs/ja.po.REMOVED.git-id +++ b/po/mcs/ja.po.REMOVED.git-id @@ -1 +1 @@ -b17804e1dc2deb94f41de0bd458814284976340f \ No newline at end of file +372406d6d85830f3d29d7fc05582226359765f09 \ No newline at end of file diff --git a/po/mcs/mcs.pot b/po/mcs/mcs.pot index 4994f6e50d..60b599193e 100644 --- a/po/mcs/mcs.pot +++ b/po/mcs/mcs.pot @@ -6,9 +6,9 @@ #, fuzzy msgid "" msgstr "" -"Project-Id-Version: mono 5.2.0.196\n" +"Project-Id-Version: mono 5.2.0.209\n" "Report-Msgid-Bugs-To: http://www.mono-project.com/Bugs\n" -"POT-Creation-Date: 2017-06-30 09:12+0000\n" +"POT-Creation-Date: 2017-07-24 15:23+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" diff --git a/po/mcs/pt_BR.gmo b/po/mcs/pt_BR.gmo index f5b7d628c6..de8a26c9e2 100644 Binary files a/po/mcs/pt_BR.gmo and b/po/mcs/pt_BR.gmo differ diff --git a/po/mcs/pt_BR.po.REMOVED.git-id b/po/mcs/pt_BR.po.REMOVED.git-id index 0eb55db39e..533280cc9d 100644 --- a/po/mcs/pt_BR.po.REMOVED.git-id +++ b/po/mcs/pt_BR.po.REMOVED.git-id @@ -1 +1 @@ -c0fb4a021b2b9f8df75dabaa3d56f56fa6c1d017 \ No newline at end of file +8ebce91f9a9a3ebc76fcd8da969a4b24726f180d \ No newline at end of file