From 0fd140e8ec28bbfa9689070a4e7a981b64a9c647 Mon Sep 17 00:00:00 2001 From: Ben Adams Date: Mon, 20 Aug 2018 17:22:20 +0100 Subject: [PATCH] Make DateTimeOffset a readonly struct (dotnet/coreclr#19552) Commit migrated from https://github.com/dotnet/coreclr/commit/9499b08eefd895158c3f3c7834e185a73619128d --- .../System.Private.CoreLib/src/System/DateTimeOffset.cs | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/libraries/System.Private.CoreLib/src/System/DateTimeOffset.cs b/src/libraries/System.Private.CoreLib/src/System/DateTimeOffset.cs index fd86132..e89cbc6 100644 --- a/src/libraries/System.Private.CoreLib/src/System/DateTimeOffset.cs +++ b/src/libraries/System.Private.CoreLib/src/System/DateTimeOffset.cs @@ -31,7 +31,7 @@ namespace System [StructLayout(LayoutKind.Auto)] [Serializable] [System.Runtime.CompilerServices.TypeForwardedFrom("mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089")] - public struct DateTimeOffset : IComparable, IFormattable, IComparable, IEquatable, ISerializable, IDeserializationCallback, ISpanFormattable + public readonly struct DateTimeOffset : IComparable, IFormattable, IComparable, IEquatable, ISerializable, IDeserializationCallback, ISpanFormattable { // Constants internal const long MaxOffset = TimeSpan.TicksPerHour * 14; @@ -49,8 +49,8 @@ namespace System public static readonly DateTimeOffset UnixEpoch = new DateTimeOffset(DateTime.UnixEpochTicks, TimeSpan.Zero); // Instance Fields - private DateTime _dateTime; - private short _offsetMinutes; + private readonly DateTime _dateTime; + private readonly short _offsetMinutes; // Constructors @@ -553,8 +553,8 @@ namespace System { try { - _offsetMinutes = ValidateOffset(Offset); - _dateTime = ValidateDate(ClockDateTime, Offset); + ValidateOffset(Offset); + ValidateDate(ClockDateTime, Offset); } catch (ArgumentException e) { -- 2.7.4