diff --git a/Configuration/GlobalAssemblyInfo.cs b/Configuration/GlobalAssemblyInfo.cs index fee2b8fec..53da61a11 100644 --- a/Configuration/GlobalAssemblyInfo.cs +++ b/Configuration/GlobalAssemblyInfo.cs @@ -15,7 +15,7 @@ internal static class RevisionClass public const string Major = "3"; public const string Minor = "3"; public const string Build = "0"; - public const string Revision = "1545"; + public const string Revision = "1546"; public const string MainVersion = Major + "." + Minor; public const string FullVersion = Major + "." + Minor + "." + Build + "." + Revision; diff --git a/Configuration/Version.defs b/Configuration/Version.defs index 3e5552526..07ee203f4 100644 --- a/Configuration/Version.defs +++ b/Configuration/Version.defs @@ -1,4 +1,4 @@ -%COREVERSION%=0 -%REVISION%=1545 %MINOR%=3 +%REVISION%=1546 +%COREVERSION%=0 %MAJOR%=3 diff --git a/ReleaseGenerators/PascalABCNET_version.nsh b/ReleaseGenerators/PascalABCNET_version.nsh index 39963b717..69916a48a 100644 --- a/ReleaseGenerators/PascalABCNET_version.nsh +++ b/ReleaseGenerators/PascalABCNET_version.nsh @@ -1 +1 @@ -!define VERSION '3.3.0.1545' +!define VERSION '3.3.0.1546' diff --git a/TestSuite/CompilationSamples/TupleEq.pas b/TestSuite/CompilationSamples/TupleEq.pas new file mode 100644 index 000000000..0ba34b706 --- /dev/null +++ b/TestSuite/CompilationSamples/TupleEq.pas @@ -0,0 +1,6 @@ +begin + var b: System.Tuple; + b := nil; + if b=nil then + +end. \ No newline at end of file diff --git a/bin/Lib/PABCSystem.pas b/bin/Lib/PABCSystem.pas index ad513b7be..c1347298c 100644 --- a/bin/Lib/PABCSystem.pas +++ b/bin/Lib/PABCSystem.pas @@ -10200,9 +10200,9 @@ begin end; ///-- -function operator= (Self: (T1,T2); v: (T1,T2)); extensionmethod := Self.Equals( v ) ; +function operator= (Self: (T1,T2); v: (T1,T2)); extensionmethod := Object.ReferenceEquals(Self,v) ? True: Self.Equals( v ) ; ///-- -function operator<> (Self: (T1,T2); v: (T1,T2)); extensionmethod := not Self.Equals( v ); +function operator<> (Self: (T1,T2); v: (T1,T2)); extensionmethod := not (Self = v); ///-- function CompareToTup2(v1: (T1,T2); v2: (T1,T2)) := (v1 as System.IComparable).CompareTo(v2); ///-- @@ -10215,9 +10215,9 @@ function operator> (Self: (T1,T2); v: (T1,T2)); extensionmethod := Compa function operator>= (Self: (T1,T2); v: (T1,T2)); extensionmethod := CompareToTup2(Self,v) >= 0; ///-- -function operator= (Self: (T1,T2,T3); v: (T1,T2,T3)); extensionmethod := Self.Equals( v ) ; +function operator= (Self: (T1,T2,T3); v: (T1,T2,T3)); extensionmethod := Object.ReferenceEquals(Self,v) ? True: Self.Equals( v ) ; ///-- -function operator<> (Self: (T1,T2,T3); v: (T1,T2,T3)); extensionmethod := not Self.Equals( v ); +function operator<> (Self: (T1,T2,T3); v: (T1,T2,T3)); extensionmethod := not (Self = v); ///-- function CompareToTup3(v1: (T1,T2,T3); v2: (T1,T2,T3)) := (v1 as System.IComparable).CompareTo(v2); ///-- @@ -10230,9 +10230,9 @@ function operator> (Self: (T1,T2,T3); v: (T1,T2,T3)); extensionmethod function operator>= (Self: (T1,T2,T3); v: (T1,T2,T3)); extensionmethod := CompareToTup3(Self,v) >= 0; ///-- -function operator= (Self: (T1,T2,T3,T4); v: (T1,T2,T3,T4)); extensionmethod := Self.Equals( v ) ; +function operator= (Self: (T1,T2,T3,T4); v: (T1,T2,T3,T4)); extensionmethod := Object.ReferenceEquals(Self,v) ? True: Self.Equals( v ) ; ///-- -function operator<> (Self: (T1,T2,T3,T4); v: (T1,T2,T3,T4)); extensionmethod := not Self.Equals( v ); +function operator<> (Self: (T1,T2,T3,T4); v: (T1,T2,T3,T4)); extensionmethod := not (Self = v); ///-- function CompareToTup4(v1: (T1,T2,T3,T4); v2: (T1,T2,T3,T4)) := (v1 as System.IComparable).CompareTo(v2); ///--