1776 references to binaryOps
Microsoft.CodeAnalysis.CSharp.Semantic.UnitTests (1776)
Semantics\NativeIntegerTests.cs (1776)
10541binaryOps(symbol, "nint", "object"); 10542binaryOps(symbol, "nint", "string"); 10543binaryOps(symbol, "nint", "void*", null, (symbol == "-") ? $"void* void*.{name}(void* left, long right)" : null, getBadBinaryOpsDiagnostics(symbol, "nint", "void*", includeVoidError: true), getBadBinaryOpsDiagnostics(symbol, "void*", "nint", includeBadBinaryOps: includeBadBinaryOps, includeVoidError: true)); 10544binaryOps(symbol, "nint", "bool"); 10545binaryOps(symbol, "nint", "char", $"nint nint.{name}(nint left, nint right)"); 10546binaryOps(symbol, "nint", "sbyte", $"nint nint.{name}(nint left, nint right)"); 10547binaryOps(symbol, "nint", "byte", $"nint nint.{name}(nint left, nint right)"); 10548binaryOps(symbol, "nint", "short", $"nint nint.{name}(nint left, nint right)"); 10549binaryOps(symbol, "nint", "ushort", $"nint nint.{name}(nint left, nint right)"); 10550binaryOps(symbol, "nint", "int", $"nint nint.{name}(nint left, nint right)"); 10551binaryOps(symbol, "nint", "uint", $"long long.{name}(long left, long right)"); 10552binaryOps(symbol, "nint", "nint", $"nint nint.{name}(nint left, nint right)"); 10553binaryOps(symbol, "nint", "nuint", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nint", "nuint"), getAmbiguousBinaryOpsDiagnostics(symbol, "nuint", "nint")); 10554binaryOps(symbol, "nint", "long", $"long long.{name}(long left, long right)"); 10555binaryOps(symbol, "nint", "ulong", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nint", "ulong"), getAmbiguousBinaryOpsDiagnostics(symbol, "ulong", "nint")); 10556binaryOps(symbol, "nint", "float", $"float float.{name}(float left, float right)"); 10557binaryOps(symbol, "nint", "double", $"double double.{name}(double left, double right)"); 10558binaryOps(symbol, "nint", "decimal", $"decimal decimal.{name}(decimal left, decimal right)"); 10559binaryOps(symbol, "nint", "System.IntPtr", $"nint nint.{name}(nint left, nint right)"); 10560binaryOps(symbol, "nint", "System.UIntPtr"); 10561binaryOps(symbol, "nint", "bool?"); 10562binaryOps(symbol, "nint", "char?", $"nint nint.{name}(nint left, nint right)"); 10563binaryOps(symbol, "nint", "sbyte?", $"nint nint.{name}(nint left, nint right)"); 10564binaryOps(symbol, "nint", "byte?", $"nint nint.{name}(nint left, nint right)"); 10565binaryOps(symbol, "nint", "short?", $"nint nint.{name}(nint left, nint right)"); 10566binaryOps(symbol, "nint", "ushort?", $"nint nint.{name}(nint left, nint right)"); 10567binaryOps(symbol, "nint", "int?", $"nint nint.{name}(nint left, nint right)"); 10568binaryOps(symbol, "nint", "uint?", $"long long.{name}(long left, long right)"); 10569binaryOps(symbol, "nint", "nint?", $"nint nint.{name}(nint left, nint right)"); 10570binaryOps(symbol, "nint", "nuint?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nint", "nuint?"), getAmbiguousBinaryOpsDiagnostics(symbol, "nuint?", "nint")); 10571binaryOps(symbol, "nint", "long?", $"long long.{name}(long left, long right)"); 10572binaryOps(symbol, "nint", "ulong?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nint", "ulong?"), getAmbiguousBinaryOpsDiagnostics(symbol, "ulong?", "nint")); 10573binaryOps(symbol, "nint", "float?", $"float float.{name}(float left, float right)"); 10574binaryOps(symbol, "nint", "double?", $"double double.{name}(double left, double right)"); 10575binaryOps(symbol, "nint", "decimal?", $"decimal decimal.{name}(decimal left, decimal right)"); 10576binaryOps(symbol, "nint", "System.IntPtr?", $"nint nint.{name}(nint left, nint right)"); 10577binaryOps(symbol, "nint", "System.UIntPtr?"); 10578binaryOps(symbol, "nint", "object"); 10579binaryOps(symbol, "nint?", "string"); 10580binaryOps(symbol, "nint?", "void*", null, null, getBadBinaryOpsDiagnostics(symbol, "nint?", "void*", includeVoidError: true), getBadBinaryOpsDiagnostics(symbol, "void*", "nint?", includeVoidError: true)); 10581binaryOps(symbol, "nint?", "bool"); 10582binaryOps(symbol, "nint?", "char", $"nint nint.{name}(nint left, nint right)"); 10583binaryOps(symbol, "nint?", "sbyte", $"nint nint.{name}(nint left, nint right)"); 10584binaryOps(symbol, "nint?", "byte", $"nint nint.{name}(nint left, nint right)"); 10585binaryOps(symbol, "nint?", "short", $"nint nint.{name}(nint left, nint right)"); 10586binaryOps(symbol, "nint?", "ushort", $"nint nint.{name}(nint left, nint right)"); 10587binaryOps(symbol, "nint?", "int", $"nint nint.{name}(nint left, nint right)"); 10588binaryOps(symbol, "nint?", "uint", $"long long.{name}(long left, long right)"); 10589binaryOps(symbol, "nint?", "nint", $"nint nint.{name}(nint left, nint right)"); 10590binaryOps(symbol, "nint?", "nuint", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nint?", "nuint"), getAmbiguousBinaryOpsDiagnostics(symbol, "nuint", "nint?")); 10591binaryOps(symbol, "nint?", "long", $"long long.{name}(long left, long right)"); 10592binaryOps(symbol, "nint?", "ulong", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nint?", "ulong"), getAmbiguousBinaryOpsDiagnostics(symbol, "ulong", "nint?")); 10593binaryOps(symbol, "nint?", "float", $"float float.{name}(float left, float right)"); 10594binaryOps(symbol, "nint?", "double", $"double double.{name}(double left, double right)"); 10595binaryOps(symbol, "nint?", "decimal", $"decimal decimal.{name}(decimal left, decimal right)"); 10596binaryOps(symbol, "nint?", "System.IntPtr", $"nint nint.{name}(nint left, nint right)"); 10597binaryOps(symbol, "nint?", "System.UIntPtr"); 10598binaryOps(symbol, "nint?", "bool?"); 10599binaryOps(symbol, "nint?", "char?", $"nint nint.{name}(nint left, nint right)"); 10600binaryOps(symbol, "nint?", "sbyte?", $"nint nint.{name}(nint left, nint right)"); 10601binaryOps(symbol, "nint?", "byte?", $"nint nint.{name}(nint left, nint right)"); 10602binaryOps(symbol, "nint?", "short?", $"nint nint.{name}(nint left, nint right)"); 10603binaryOps(symbol, "nint?", "ushort?", $"nint nint.{name}(nint left, nint right)"); 10604binaryOps(symbol, "nint?", "int?", $"nint nint.{name}(nint left, nint right)"); 10605binaryOps(symbol, "nint?", "uint?", $"long long.{name}(long left, long right)"); 10606binaryOps(symbol, "nint?", "nint?", $"nint nint.{name}(nint left, nint right)"); 10607binaryOps(symbol, "nint?", "nuint?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nint?", "nuint?"), getAmbiguousBinaryOpsDiagnostics(symbol, "nuint?", "nint?")); 10608binaryOps(symbol, "nint?", "long?", $"long long.{name}(long left, long right)"); 10609binaryOps(symbol, "nint?", "ulong?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nint?", "ulong?"), getAmbiguousBinaryOpsDiagnostics(symbol, "ulong?", "nint?")); 10610binaryOps(symbol, "nint?", "float?", $"float float.{name}(float left, float right)"); 10611binaryOps(symbol, "nint?", "double?", $"double double.{name}(double left, double right)"); 10612binaryOps(symbol, "nint?", "decimal?", $"decimal decimal.{name}(decimal left, decimal right)"); 10613binaryOps(symbol, "nint?", "System.IntPtr?", $"nint nint.{name}(nint left, nint right)"); 10614binaryOps(symbol, "nint?", "System.UIntPtr?"); 10615binaryOps(symbol, "nuint", "object"); 10616binaryOps(symbol, "nuint", "string"); 10617binaryOps(symbol, "nuint", "void*", null, (symbol == "-") ? $"void* void*.{name}(void* left, ulong right)" : null, getBadBinaryOpsDiagnostics(symbol, "nuint", "void*", includeVoidError: true), getBadBinaryOpsDiagnostics(symbol, "void*", "nuint", includeBadBinaryOps: includeBadBinaryOps, includeVoidError: true)); 10618binaryOps(symbol, "nuint", "bool"); 10619binaryOps(symbol, "nuint", "char", $"nuint nuint.{name}(nuint left, nuint right)"); 10620binaryOps(symbol, "nuint", "sbyte", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint", "sbyte"), getAmbiguousBinaryOpsDiagnostics(symbol, "sbyte", "nuint")); 10621binaryOps(symbol, "nuint", "byte", $"nuint nuint.{name}(nuint left, nuint right)"); 10622binaryOps(symbol, "nuint", "short", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint", "short"), getAmbiguousBinaryOpsDiagnostics(symbol, "short", "nuint")); 10623binaryOps(symbol, "nuint", "ushort", $"nuint nuint.{name}(nuint left, nuint right)"); 10624binaryOps(symbol, "nuint", "int", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint", "int"), getAmbiguousBinaryOpsDiagnostics(symbol, "int", "nuint")); 10625binaryOps(symbol, "nuint", "uint", $"nuint nuint.{name}(nuint left, nuint right)"); 10626binaryOps(symbol, "nuint", "nint", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint", "nint"), getAmbiguousBinaryOpsDiagnostics(symbol, "nint", "nuint")); 10627binaryOps(symbol, "nuint", "nuint", $"nuint nuint.{name}(nuint left, nuint right)"); 10628binaryOps(symbol, "nuint", "long", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint", "long"), getAmbiguousBinaryOpsDiagnostics(symbol, "long", "nuint")); 10629binaryOps(symbol, "nuint", "ulong", $"ulong ulong.{name}(ulong left, ulong right)"); 10630binaryOps(symbol, "nuint", "float", $"float float.{name}(float left, float right)"); 10631binaryOps(symbol, "nuint", "double", $"double double.{name}(double left, double right)"); 10632binaryOps(symbol, "nuint", "decimal", $"decimal decimal.{name}(decimal left, decimal right)"); 10633binaryOps(symbol, "nuint", "System.IntPtr"); 10634binaryOps(symbol, "nuint", "System.UIntPtr", $"nuint nuint.{name}(nuint left, nuint right)"); 10635binaryOps(symbol, "nuint", "bool?"); 10636binaryOps(symbol, "nuint", "char?", $"nuint nuint.{name}(nuint left, nuint right)"); 10637binaryOps(symbol, "nuint", "sbyte?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint", "sbyte?"), getAmbiguousBinaryOpsDiagnostics(symbol, "sbyte?", "nuint")); 10638binaryOps(symbol, "nuint", "byte?", $"nuint nuint.{name}(nuint left, nuint right)"); 10639binaryOps(symbol, "nuint", "short?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint", "short?"), getAmbiguousBinaryOpsDiagnostics(symbol, "short?", "nuint")); 10640binaryOps(symbol, "nuint", "ushort?", $"nuint nuint.{name}(nuint left, nuint right)"); 10641binaryOps(symbol, "nuint", "int?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint", "int?"), getAmbiguousBinaryOpsDiagnostics(symbol, "int?", "nuint")); 10642binaryOps(symbol, "nuint", "uint?", $"nuint nuint.{name}(nuint left, nuint right)"); 10643binaryOps(symbol, "nuint", "nint?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint", "nint?"), getAmbiguousBinaryOpsDiagnostics(symbol, "nint?", "nuint")); 10644binaryOps(symbol, "nuint", "nuint?", $"nuint nuint.{name}(nuint left, nuint right)"); 10645binaryOps(symbol, "nuint", "long?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint", "long?"), getAmbiguousBinaryOpsDiagnostics(symbol, "long?", "nuint")); 10646binaryOps(symbol, "nuint", "ulong?", $"ulong ulong.{name}(ulong left, ulong right)"); 10647binaryOps(symbol, "nuint", "float?", $"float float.{name}(float left, float right)"); 10648binaryOps(symbol, "nuint", "double?", $"double double.{name}(double left, double right)"); 10649binaryOps(symbol, "nuint", "decimal?", $"decimal decimal.{name}(decimal left, decimal right)"); 10650binaryOps(symbol, "nuint", "System.IntPtr?"); 10651binaryOps(symbol, "nuint", "System.UIntPtr?", $"nuint nuint.{name}(nuint left, nuint right)"); 10652binaryOps(symbol, "nuint?", "object"); 10653binaryOps(symbol, "nuint?", "string"); 10654binaryOps(symbol, "nuint?", "void*", null, null, getBadBinaryOpsDiagnostics(symbol, "nuint?", "void*", includeVoidError: true), getBadBinaryOpsDiagnostics(symbol, "void*", "nuint?", includeVoidError: true)); 10655binaryOps(symbol, "nuint?", "bool"); 10656binaryOps(symbol, "nuint?", "char", $"nuint nuint.{name}(nuint left, nuint right)"); 10657binaryOps(symbol, "nuint?", "sbyte", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint?", "sbyte"), getAmbiguousBinaryOpsDiagnostics(symbol, "sbyte", "nuint?")); 10658binaryOps(symbol, "nuint?", "byte", $"nuint nuint.{name}(nuint left, nuint right)"); 10659binaryOps(symbol, "nuint?", "short", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint?", "short"), getAmbiguousBinaryOpsDiagnostics(symbol, "short", "nuint?")); 10660binaryOps(symbol, "nuint?", "ushort", $"nuint nuint.{name}(nuint left, nuint right)"); 10661binaryOps(symbol, "nuint?", "int", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint?", "int"), getAmbiguousBinaryOpsDiagnostics(symbol, "int", "nuint?")); 10662binaryOps(symbol, "nuint?", "uint", $"nuint nuint.{name}(nuint left, nuint right)"); 10663binaryOps(symbol, "nuint?", "nint", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint?", "nint"), getAmbiguousBinaryOpsDiagnostics(symbol, "nint", "nuint?")); 10664binaryOps(symbol, "nuint?", "nuint", $"nuint nuint.{name}(nuint left, nuint right)"); 10665binaryOps(symbol, "nuint?", "long", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint?", "long"), getAmbiguousBinaryOpsDiagnostics(symbol, "long", "nuint?")); 10666binaryOps(symbol, "nuint?", "ulong", $"ulong ulong.{name}(ulong left, ulong right)"); 10667binaryOps(symbol, "nuint?", "float", $"float float.{name}(float left, float right)"); 10668binaryOps(symbol, "nuint?", "double", $"double double.{name}(double left, double right)"); 10669binaryOps(symbol, "nuint?", "decimal", $"decimal decimal.{name}(decimal left, decimal right)"); 10670binaryOps(symbol, "nuint?", "System.IntPtr"); 10671binaryOps(symbol, "nuint?", "System.UIntPtr", $"nuint nuint.{name}(nuint left, nuint right)"); 10672binaryOps(symbol, "nuint?", "bool?"); 10673binaryOps(symbol, "nuint?", "char?", $"nuint nuint.{name}(nuint left, nuint right)"); 10674binaryOps(symbol, "nuint?", "sbyte?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint?", "sbyte?"), getAmbiguousBinaryOpsDiagnostics(symbol, "sbyte?", "nuint?")); 10675binaryOps(symbol, "nuint?", "byte?", $"nuint nuint.{name}(nuint left, nuint right)"); 10676binaryOps(symbol, "nuint?", "short?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint?", "short?"), getAmbiguousBinaryOpsDiagnostics(symbol, "short?", "nuint?")); 10677binaryOps(symbol, "nuint?", "ushort?", $"nuint nuint.{name}(nuint left, nuint right)"); 10678binaryOps(symbol, "nuint?", "int?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint?", "int?"), getAmbiguousBinaryOpsDiagnostics(symbol, "int?", "nuint?")); 10679binaryOps(symbol, "nuint?", "uint?", $"nuint nuint.{name}(nuint left, nuint right)"); 10680binaryOps(symbol, "nuint?", "nint?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint?", "nint?"), getAmbiguousBinaryOpsDiagnostics(symbol, "nint?", "nuint?")); 10681binaryOps(symbol, "nuint?", "nuint?", $"nuint nuint.{name}(nuint left, nuint right)"); 10682binaryOps(symbol, "nuint?", "long?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint?", "long?"), getAmbiguousBinaryOpsDiagnostics(symbol, "long?", "nuint?")); 10683binaryOps(symbol, "nuint?", "ulong?", $"ulong ulong.{name}(ulong left, ulong right)"); 10684binaryOps(symbol, "nuint?", "float?", $"float float.{name}(float left, float right)"); 10685binaryOps(symbol, "nuint?", "double?", $"double double.{name}(double left, double right)"); 10686binaryOps(symbol, "nuint?", "decimal?", $"decimal decimal.{name}(decimal left, decimal right)"); 10687binaryOps(symbol, "nuint?", "System.IntPtr?"); 10688binaryOps(symbol, "nuint?", "System.UIntPtr?", $"nuint nuint.{name}(nuint left, nuint right)"); 10689binaryOps(symbol, "System.IntPtr", "object"); 10690binaryOps(symbol, "System.IntPtr", "string"); 10691binaryOps(symbol, "System.IntPtr", "void*", null, null, getBadBinaryOpsDiagnostics(symbol, "System.IntPtr", "void*", includeVoidError: true), getBadBinaryOpsDiagnostics(symbol, "void*", "System.IntPtr", includeVoidError: true)); 10692binaryOps(symbol, "System.IntPtr", "bool"); 10693binaryOps(symbol, "System.IntPtr", "char", (symbol == "-") ? $"System.IntPtr System.IntPtr.{name}(System.IntPtr pointer, int offset)" : null, null); 10694binaryOps(symbol, "System.IntPtr", "sbyte", (symbol == "-") ? $"System.IntPtr System.IntPtr.{name}(System.IntPtr pointer, int offset)" : null, null); 10695binaryOps(symbol, "System.IntPtr", "byte", (symbol == "-") ? $"System.IntPtr System.IntPtr.{name}(System.IntPtr pointer, int offset)" : null, null); 10696binaryOps(symbol, "System.IntPtr", "short", (symbol == "-") ? $"System.IntPtr System.IntPtr.{name}(System.IntPtr pointer, int offset)" : null, null); 10697binaryOps(symbol, "System.IntPtr", "ushort", (symbol == "-") ? $"System.IntPtr System.IntPtr.{name}(System.IntPtr pointer, int offset)" : null, null); 10698binaryOps(symbol, "System.IntPtr", "int", (symbol == "-") ? $"System.IntPtr System.IntPtr.{name}(System.IntPtr pointer, int offset)" : null, null); 10699binaryOps(symbol, "System.IntPtr", "uint"); 10700binaryOps(symbol, "System.IntPtr", "nint", $"nint nint.{name}(nint left, nint right)"); 10701binaryOps(symbol, "System.IntPtr", "nuint"); 10702binaryOps(symbol, "System.IntPtr", "long"); 10703binaryOps(symbol, "System.IntPtr", "ulong"); 10704binaryOps(symbol, "System.IntPtr", "float"); 10705binaryOps(symbol, "System.IntPtr", "double"); 10706binaryOps(symbol, "System.IntPtr", "decimal"); 10707binaryOps(symbol, "System.IntPtr", "System.IntPtr"); 10708binaryOps(symbol, "System.IntPtr", "System.UIntPtr"); 10709binaryOps(symbol, "System.IntPtr", "bool?"); 10710binaryOps(symbol, "System.IntPtr", "char?", (symbol == "-") ? $"System.IntPtr System.IntPtr.{name}(System.IntPtr pointer, int offset)" : null, null); 10711binaryOps(symbol, "System.IntPtr", "sbyte?", (symbol == "-") ? $"System.IntPtr System.IntPtr.{name}(System.IntPtr pointer, int offset)" : null, null); 10712binaryOps(symbol, "System.IntPtr", "byte?", (symbol == "-") ? $"System.IntPtr System.IntPtr.{name}(System.IntPtr pointer, int offset)" : null, null); 10713binaryOps(symbol, "System.IntPtr", "short?", (symbol == "-") ? $"System.IntPtr System.IntPtr.{name}(System.IntPtr pointer, int offset)" : null, null); 10714binaryOps(symbol, "System.IntPtr", "ushort?", (symbol == "-") ? $"System.IntPtr System.IntPtr.{name}(System.IntPtr pointer, int offset)" : null, null); 10715binaryOps(symbol, "System.IntPtr", "int?", (symbol == "-") ? $"System.IntPtr System.IntPtr.{name}(System.IntPtr pointer, int offset)" : null, null); 10716binaryOps(symbol, "System.IntPtr", "uint?"); 10717binaryOps(symbol, "System.IntPtr", "nint?", $"nint nint.{name}(nint left, nint right)"); 10718binaryOps(symbol, "System.IntPtr", "nuint?"); 10719binaryOps(symbol, "System.IntPtr", "long?"); 10720binaryOps(symbol, "System.IntPtr", "ulong?"); 10721binaryOps(symbol, "System.IntPtr", "float?"); 10722binaryOps(symbol, "System.IntPtr", "double?"); 10723binaryOps(symbol, "System.IntPtr", "decimal?"); 10724binaryOps(symbol, "System.IntPtr", "System.IntPtr?"); 10725binaryOps(symbol, "System.IntPtr", "System.UIntPtr?"); 10726binaryOps(symbol, "System.IntPtr", "object"); 10727binaryOps(symbol, "System.IntPtr?", "string"); 10728binaryOps(symbol, "System.IntPtr?", "void*", null, null, getBadBinaryOpsDiagnostics(symbol, "System.IntPtr?", "void*", includeVoidError: true), getBadBinaryOpsDiagnostics(symbol, "void*", "System.IntPtr?", includeVoidError: true)); 10729binaryOps(symbol, "System.IntPtr?", "bool"); 10730binaryOps(symbol, "System.IntPtr?", "char", (symbol == "-") ? $"System.IntPtr System.IntPtr.{name}(System.IntPtr pointer, int offset)" : null, null); 10731binaryOps(symbol, "System.IntPtr?", "sbyte", (symbol == "-") ? $"System.IntPtr System.IntPtr.{name}(System.IntPtr pointer, int offset)" : null, null); 10732binaryOps(symbol, "System.IntPtr?", "byte", (symbol == "-") ? $"System.IntPtr System.IntPtr.{name}(System.IntPtr pointer, int offset)" : null, null); 10733binaryOps(symbol, "System.IntPtr?", "short", (symbol == "-") ? $"System.IntPtr System.IntPtr.{name}(System.IntPtr pointer, int offset)" : null, null); 10734binaryOps(symbol, "System.IntPtr?", "ushort", (symbol == "-") ? $"System.IntPtr System.IntPtr.{name}(System.IntPtr pointer, int offset)" : null, null); 10735binaryOps(symbol, "System.IntPtr?", "int", (symbol == "-") ? $"System.IntPtr System.IntPtr.{name}(System.IntPtr pointer, int offset)" : null, null); 10736binaryOps(symbol, "System.IntPtr?", "uint"); 10737binaryOps(symbol, "System.IntPtr?", "nint", $"nint nint.{name}(nint left, nint right)"); 10738binaryOps(symbol, "System.IntPtr?", "nuint"); 10739binaryOps(symbol, "System.IntPtr?", "long"); 10740binaryOps(symbol, "System.IntPtr?", "ulong"); 10741binaryOps(symbol, "System.IntPtr?", "float"); 10742binaryOps(symbol, "System.IntPtr?", "double"); 10743binaryOps(symbol, "System.IntPtr?", "decimal"); 10744binaryOps(symbol, "System.IntPtr?", "System.IntPtr"); 10745binaryOps(symbol, "System.IntPtr?", "System.UIntPtr"); 10746binaryOps(symbol, "System.IntPtr?", "bool?"); 10747binaryOps(symbol, "System.IntPtr?", "char?", (symbol == "-") ? $"System.IntPtr System.IntPtr.{name}(System.IntPtr pointer, int offset)" : null, null); 10748binaryOps(symbol, "System.IntPtr?", "sbyte?", (symbol == "-") ? $"System.IntPtr System.IntPtr.{name}(System.IntPtr pointer, int offset)" : null, null); 10749binaryOps(symbol, "System.IntPtr?", "byte?", (symbol == "-") ? $"System.IntPtr System.IntPtr.{name}(System.IntPtr pointer, int offset)" : null, null); 10750binaryOps(symbol, "System.IntPtr?", "short?", (symbol == "-") ? $"System.IntPtr System.IntPtr.{name}(System.IntPtr pointer, int offset)" : null, null); 10751binaryOps(symbol, "System.IntPtr?", "ushort?", (symbol == "-") ? $"System.IntPtr System.IntPtr.{name}(System.IntPtr pointer, int offset)" : null, null); 10752binaryOps(symbol, "System.IntPtr?", "int?", (symbol == "-") ? $"System.IntPtr System.IntPtr.{name}(System.IntPtr pointer, int offset)" : null, null); 10753binaryOps(symbol, "System.IntPtr?", "uint?"); 10754binaryOps(symbol, "System.IntPtr?", "nint?", $"nint nint.{name}(nint left, nint right)"); 10755binaryOps(symbol, "System.IntPtr?", "nuint?"); 10756binaryOps(symbol, "System.IntPtr?", "long?"); 10757binaryOps(symbol, "System.IntPtr?", "ulong?"); 10758binaryOps(symbol, "System.IntPtr?", "float?"); 10759binaryOps(symbol, "System.IntPtr?", "double?"); 10760binaryOps(symbol, "System.IntPtr?", "decimal?"); 10761binaryOps(symbol, "System.IntPtr?", "System.IntPtr?"); 10762binaryOps(symbol, "System.IntPtr?", "System.UIntPtr?"); 10763binaryOps(symbol, "System.UIntPtr", "object"); 10764binaryOps(symbol, "System.UIntPtr", "string"); 10765binaryOps(symbol, "System.UIntPtr", "void*", null, null, getBadBinaryOpsDiagnostics(symbol, "System.UIntPtr", "void*", includeVoidError: true), getBadBinaryOpsDiagnostics(symbol, "void*", "System.UIntPtr", includeVoidError: true)); 10766binaryOps(symbol, "System.UIntPtr", "bool"); 10767binaryOps(symbol, "System.UIntPtr", "char", (symbol == "-") ? $"System.UIntPtr System.UIntPtr.{name}(System.UIntPtr pointer, int offset)" : null, null); 10768binaryOps(symbol, "System.UIntPtr", "sbyte", (symbol == "-") ? $"System.UIntPtr System.UIntPtr.{name}(System.UIntPtr pointer, int offset)" : null, null); 10769binaryOps(symbol, "System.UIntPtr", "byte", (symbol == "-") ? $"System.UIntPtr System.UIntPtr.{name}(System.UIntPtr pointer, int offset)" : null, null); 10770binaryOps(symbol, "System.UIntPtr", "short", (symbol == "-") ? $"System.UIntPtr System.UIntPtr.{name}(System.UIntPtr pointer, int offset)" : null, null); 10771binaryOps(symbol, "System.UIntPtr", "ushort", (symbol == "-") ? $"System.UIntPtr System.UIntPtr.{name}(System.UIntPtr pointer, int offset)" : null, null); 10772binaryOps(symbol, "System.UIntPtr", "int", (symbol == "-") ? $"System.UIntPtr System.UIntPtr.{name}(System.UIntPtr pointer, int offset)" : null, null); 10773binaryOps(symbol, "System.UIntPtr", "uint"); 10774binaryOps(symbol, "System.UIntPtr", "nint"); 10775binaryOps(symbol, "System.UIntPtr", "nuint", $"nuint nuint.{name}(nuint left, nuint right)"); 10776binaryOps(symbol, "System.UIntPtr", "long"); 10777binaryOps(symbol, "System.UIntPtr", "ulong"); 10778binaryOps(symbol, "System.UIntPtr", "float"); 10779binaryOps(symbol, "System.UIntPtr", "double"); 10780binaryOps(symbol, "System.UIntPtr", "decimal"); 10781binaryOps(symbol, "System.UIntPtr", "System.IntPtr"); 10782binaryOps(symbol, "System.UIntPtr", "System.UIntPtr"); 10783binaryOps(symbol, "System.UIntPtr", "bool?"); 10784binaryOps(symbol, "System.UIntPtr", "char?", (symbol == "-") ? $"System.UIntPtr System.UIntPtr.{name}(System.UIntPtr pointer, int offset)" : null, null); 10785binaryOps(symbol, "System.UIntPtr", "sbyte?", (symbol == "-") ? $"System.UIntPtr System.UIntPtr.{name}(System.UIntPtr pointer, int offset)" : null, null); 10786binaryOps(symbol, "System.UIntPtr", "byte?", (symbol == "-") ? $"System.UIntPtr System.UIntPtr.{name}(System.UIntPtr pointer, int offset)" : null, null); 10787binaryOps(symbol, "System.UIntPtr", "short?", (symbol == "-") ? $"System.UIntPtr System.UIntPtr.{name}(System.UIntPtr pointer, int offset)" : null, null); 10788binaryOps(symbol, "System.UIntPtr", "ushort?", (symbol == "-") ? $"System.UIntPtr System.UIntPtr.{name}(System.UIntPtr pointer, int offset)" : null, null); 10789binaryOps(symbol, "System.UIntPtr", "int?", (symbol == "-") ? $"System.UIntPtr System.UIntPtr.{name}(System.UIntPtr pointer, int offset)" : null, null); 10790binaryOps(symbol, "System.UIntPtr", "uint?"); 10791binaryOps(symbol, "System.UIntPtr", "nint?"); 10792binaryOps(symbol, "System.UIntPtr", "nuint?", $"nuint nuint.{name}(nuint left, nuint right)"); 10793binaryOps(symbol, "System.UIntPtr", "long?"); 10794binaryOps(symbol, "System.UIntPtr", "ulong?"); 10795binaryOps(symbol, "System.UIntPtr", "float?"); 10796binaryOps(symbol, "System.UIntPtr", "double?"); 10797binaryOps(symbol, "System.UIntPtr", "decimal?"); 10798binaryOps(symbol, "System.UIntPtr", "System.IntPtr?"); 10799binaryOps(symbol, "System.UIntPtr", "System.UIntPtr?"); 10800binaryOps(symbol, "System.UIntPtr?", "object"); 10801binaryOps(symbol, "System.UIntPtr?", "string"); 10802binaryOps(symbol, "System.UIntPtr?", "void*", null, null, getBadBinaryOpsDiagnostics(symbol, "System.UIntPtr?", "void*", includeVoidError: true), getBadBinaryOpsDiagnostics(symbol, "void*", "System.UIntPtr?", includeVoidError: true)); 10803binaryOps(symbol, "System.UIntPtr?", "bool"); 10804binaryOps(symbol, "System.UIntPtr?", "char", (symbol == "-") ? $"System.UIntPtr System.UIntPtr.{name}(System.UIntPtr pointer, int offset)" : null, null); 10805binaryOps(symbol, "System.UIntPtr?", "sbyte", (symbol == "-") ? $"System.UIntPtr System.UIntPtr.{name}(System.UIntPtr pointer, int offset)" : null, null); 10806binaryOps(symbol, "System.UIntPtr?", "byte", (symbol == "-") ? $"System.UIntPtr System.UIntPtr.{name}(System.UIntPtr pointer, int offset)" : null, null); 10807binaryOps(symbol, "System.UIntPtr?", "short", (symbol == "-") ? $"System.UIntPtr System.UIntPtr.{name}(System.UIntPtr pointer, int offset)" : null, null); 10808binaryOps(symbol, "System.UIntPtr?", "ushort", (symbol == "-") ? $"System.UIntPtr System.UIntPtr.{name}(System.UIntPtr pointer, int offset)" : null, null); 10809binaryOps(symbol, "System.UIntPtr?", "int", (symbol == "-") ? $"System.UIntPtr System.UIntPtr.{name}(System.UIntPtr pointer, int offset)" : null, null); 10810binaryOps(symbol, "System.UIntPtr?", "uint"); 10811binaryOps(symbol, "System.UIntPtr?", "nint"); 10812binaryOps(symbol, "System.UIntPtr?", "nuint", $"nuint nuint.{name}(nuint left, nuint right)"); 10813binaryOps(symbol, "System.UIntPtr?", "long"); 10814binaryOps(symbol, "System.UIntPtr?", "ulong"); 10815binaryOps(symbol, "System.UIntPtr?", "float"); 10816binaryOps(symbol, "System.UIntPtr?", "double"); 10817binaryOps(symbol, "System.UIntPtr?", "decimal"); 10818binaryOps(symbol, "System.UIntPtr?", "System.IntPtr"); 10819binaryOps(symbol, "System.UIntPtr?", "System.UIntPtr"); 10820binaryOps(symbol, "System.UIntPtr?", "bool?"); 10821binaryOps(symbol, "System.UIntPtr?", "char?", (symbol == "-") ? $"System.UIntPtr System.UIntPtr.{name}(System.UIntPtr pointer, int offset)" : null, null); 10822binaryOps(symbol, "System.UIntPtr?", "sbyte?", (symbol == "-") ? $"System.UIntPtr System.UIntPtr.{name}(System.UIntPtr pointer, int offset)" : null, null); 10823binaryOps(symbol, "System.UIntPtr?", "byte?", (symbol == "-") ? $"System.UIntPtr System.UIntPtr.{name}(System.UIntPtr pointer, int offset)" : null, null); 10824binaryOps(symbol, "System.UIntPtr?", "short?", (symbol == "-") ? $"System.UIntPtr System.UIntPtr.{name}(System.UIntPtr pointer, int offset)" : null, null); 10825binaryOps(symbol, "System.UIntPtr?", "ushort?", (symbol == "-") ? $"System.UIntPtr System.UIntPtr.{name}(System.UIntPtr pointer, int offset)" : null, null); 10826binaryOps(symbol, "System.UIntPtr?", "int?", (symbol == "-") ? $"System.UIntPtr System.UIntPtr.{name}(System.UIntPtr pointer, int offset)" : null, null); 10827binaryOps(symbol, "System.UIntPtr?", "uint?"); 10828binaryOps(symbol, "System.UIntPtr?", "nint?"); 10829binaryOps(symbol, "System.UIntPtr?", "nuint?", $"nuint nuint.{name}(nuint left, nuint right)"); 10830binaryOps(symbol, "System.UIntPtr?", "long?"); 10831binaryOps(symbol, "System.UIntPtr?", "ulong?"); 10832binaryOps(symbol, "System.UIntPtr?", "float?"); 10833binaryOps(symbol, "System.UIntPtr?", "double?"); 10834binaryOps(symbol, "System.UIntPtr?", "decimal?"); 10835binaryOps(symbol, "System.UIntPtr?", "System.IntPtr?"); 10836binaryOps(symbol, "System.UIntPtr?", "System.UIntPtr?"); 10841binaryOps(symbol, "nint", "object"); 10842binaryOps(symbol, "nint", "string"); 10843binaryOps(symbol, "nint", "void*", null, null, getBadBinaryOpsDiagnostics(symbol, "nint", "void*"), getBadBinaryOpsDiagnostics(symbol, "void*", "nint")); 10844binaryOps(symbol, "nint", "bool"); 10845binaryOps(symbol, "nint", "char", $"bool nint.{name}(nint left, nint right)"); 10846binaryOps(symbol, "nint", "sbyte", $"bool nint.{name}(nint left, nint right)"); 10847binaryOps(symbol, "nint", "byte", $"bool nint.{name}(nint left, nint right)"); 10848binaryOps(symbol, "nint", "short", $"bool nint.{name}(nint left, nint right)"); 10849binaryOps(symbol, "nint", "ushort", $"bool nint.{name}(nint left, nint right)"); 10850binaryOps(symbol, "nint", "int", $"bool nint.{name}(nint left, nint right)"); 10851binaryOps(symbol, "nint", "uint", $"bool long.{name}(long left, long right)"); 10852binaryOps(symbol, "nint", "nint", $"bool nint.{name}(nint left, nint right)"); 10853binaryOps(symbol, "nint", "nuint", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nint", "nuint"), getAmbiguousBinaryOpsDiagnostics(symbol, "nuint", "nint")); 10854binaryOps(symbol, "nint", "long", $"bool long.{name}(long left, long right)"); 10855binaryOps(symbol, "nint", "ulong", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nint", "ulong"), getAmbiguousBinaryOpsDiagnostics(symbol, "ulong", "nint")); 10856binaryOps(symbol, "nint", "float", $"bool float.{name}(float left, float right)"); 10857binaryOps(symbol, "nint", "double", $"bool double.{name}(double left, double right)"); 10858binaryOps(symbol, "nint", "decimal", $"bool decimal.{name}(decimal left, decimal right)"); 10859binaryOps(symbol, "nint", "System.IntPtr", $"bool nint.{name}(nint left, nint right)"); 10860binaryOps(symbol, "nint", "System.UIntPtr"); 10861binaryOps(symbol, "nint", "bool?"); 10862binaryOps(symbol, "nint", "char?", $"bool nint.{name}(nint left, nint right)"); 10863binaryOps(symbol, "nint", "sbyte?", $"bool nint.{name}(nint left, nint right)"); 10864binaryOps(symbol, "nint", "byte?", $"bool nint.{name}(nint left, nint right)"); 10865binaryOps(symbol, "nint", "short?", $"bool nint.{name}(nint left, nint right)"); 10866binaryOps(symbol, "nint", "ushort?", $"bool nint.{name}(nint left, nint right)"); 10867binaryOps(symbol, "nint", "int?", $"bool nint.{name}(nint left, nint right)"); 10868binaryOps(symbol, "nint", "uint?", $"bool long.{name}(long left, long right)"); 10869binaryOps(symbol, "nint", "nint?", $"bool nint.{name}(nint left, nint right)"); 10870binaryOps(symbol, "nint", "nuint?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nint", "nuint?"), getAmbiguousBinaryOpsDiagnostics(symbol, "nuint?", "nint")); 10871binaryOps(symbol, "nint", "long?", $"bool long.{name}(long left, long right)"); 10872binaryOps(symbol, "nint", "ulong?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nint", "ulong?"), getAmbiguousBinaryOpsDiagnostics(symbol, "ulong?", "nint")); 10873binaryOps(symbol, "nint", "float?", $"bool float.{name}(float left, float right)"); 10874binaryOps(symbol, "nint", "double?", $"bool double.{name}(double left, double right)"); 10875binaryOps(symbol, "nint", "decimal?", $"bool decimal.{name}(decimal left, decimal right)"); 10876binaryOps(symbol, "nint", "System.IntPtr?", $"bool nint.{name}(nint left, nint right)"); 10877binaryOps(symbol, "nint", "System.UIntPtr?"); 10878binaryOps(symbol, "nint", "object"); 10879binaryOps(symbol, "nint?", "string"); 10880binaryOps(symbol, "nint?", "void*", null, null, getBadBinaryOpsDiagnostics(symbol, "nint?", "void*"), getBadBinaryOpsDiagnostics(symbol, "void*", "nint?")); 10881binaryOps(symbol, "nint?", "bool"); 10882binaryOps(symbol, "nint?", "char", $"bool nint.{name}(nint left, nint right)"); 10883binaryOps(symbol, "nint?", "sbyte", $"bool nint.{name}(nint left, nint right)"); 10884binaryOps(symbol, "nint?", "byte", $"bool nint.{name}(nint left, nint right)"); 10885binaryOps(symbol, "nint?", "short", $"bool nint.{name}(nint left, nint right)"); 10886binaryOps(symbol, "nint?", "ushort", $"bool nint.{name}(nint left, nint right)"); 10887binaryOps(symbol, "nint?", "int", $"bool nint.{name}(nint left, nint right)"); 10888binaryOps(symbol, "nint?", "uint", $"bool long.{name}(long left, long right)"); 10889binaryOps(symbol, "nint?", "nint", $"bool nint.{name}(nint left, nint right)"); 10890binaryOps(symbol, "nint?", "nuint", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nint?", "nuint"), getAmbiguousBinaryOpsDiagnostics(symbol, "nuint", "nint?")); 10891binaryOps(symbol, "nint?", "long", $"bool long.{name}(long left, long right)"); 10892binaryOps(symbol, "nint?", "ulong", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nint?", "ulong"), getAmbiguousBinaryOpsDiagnostics(symbol, "ulong", "nint?")); 10893binaryOps(symbol, "nint?", "float", $"bool float.{name}(float left, float right)"); 10894binaryOps(symbol, "nint?", "double", $"bool double.{name}(double left, double right)"); 10895binaryOps(symbol, "nint?", "decimal", $"bool decimal.{name}(decimal left, decimal right)"); 10896binaryOps(symbol, "nint?", "System.IntPtr", $"bool nint.{name}(nint left, nint right)"); 10897binaryOps(symbol, "nint?", "System.UIntPtr"); 10898binaryOps(symbol, "nint?", "bool?"); 10899binaryOps(symbol, "nint?", "char?", $"bool nint.{name}(nint left, nint right)"); 10900binaryOps(symbol, "nint?", "sbyte?", $"bool nint.{name}(nint left, nint right)"); 10901binaryOps(symbol, "nint?", "byte?", $"bool nint.{name}(nint left, nint right)"); 10902binaryOps(symbol, "nint?", "short?", $"bool nint.{name}(nint left, nint right)"); 10903binaryOps(symbol, "nint?", "ushort?", $"bool nint.{name}(nint left, nint right)"); 10904binaryOps(symbol, "nint?", "int?", $"bool nint.{name}(nint left, nint right)"); 10905binaryOps(symbol, "nint?", "uint?", $"bool long.{name}(long left, long right)"); 10906binaryOps(symbol, "nint?", "nint?", $"bool nint.{name}(nint left, nint right)"); 10907binaryOps(symbol, "nint?", "nuint?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nint?", "nuint?"), getAmbiguousBinaryOpsDiagnostics(symbol, "nuint?", "nint?")); 10908binaryOps(symbol, "nint?", "long?", $"bool long.{name}(long left, long right)"); 10909binaryOps(symbol, "nint?", "ulong?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nint?", "ulong?"), getAmbiguousBinaryOpsDiagnostics(symbol, "ulong?", "nint?")); 10910binaryOps(symbol, "nint?", "float?", $"bool float.{name}(float left, float right)"); 10911binaryOps(symbol, "nint?", "double?", $"bool double.{name}(double left, double right)"); 10912binaryOps(symbol, "nint?", "decimal?", $"bool decimal.{name}(decimal left, decimal right)"); 10913binaryOps(symbol, "nint?", "System.IntPtr?", $"bool nint.{name}(nint left, nint right)"); 10914binaryOps(symbol, "nint?", "System.UIntPtr?"); 10915binaryOps(symbol, "nuint", "object"); 10916binaryOps(symbol, "nuint", "string"); 10917binaryOps(symbol, "nuint", "void*", null, null, getBadBinaryOpsDiagnostics(symbol, "nuint", "void*"), getBadBinaryOpsDiagnostics(symbol, "void*", "nuint")); 10918binaryOps(symbol, "nuint", "bool"); 10919binaryOps(symbol, "nuint", "char", $"bool nuint.{name}(nuint left, nuint right)"); 10920binaryOps(symbol, "nuint", "sbyte", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint", "sbyte"), getAmbiguousBinaryOpsDiagnostics(symbol, "sbyte", "nuint")); 10921binaryOps(symbol, "nuint", "byte", $"bool nuint.{name}(nuint left, nuint right)"); 10922binaryOps(symbol, "nuint", "short", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint", "short"), getAmbiguousBinaryOpsDiagnostics(symbol, "short", "nuint")); 10923binaryOps(symbol, "nuint", "ushort", $"bool nuint.{name}(nuint left, nuint right)"); 10924binaryOps(symbol, "nuint", "int", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint", "int"), getAmbiguousBinaryOpsDiagnostics(symbol, "int", "nuint")); 10925binaryOps(symbol, "nuint", "uint", $"bool nuint.{name}(nuint left, nuint right)"); 10926binaryOps(symbol, "nuint", "nint", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint", "nint"), getAmbiguousBinaryOpsDiagnostics(symbol, "nint", "nuint")); 10927binaryOps(symbol, "nuint", "nuint", $"bool nuint.{name}(nuint left, nuint right)"); 10928binaryOps(symbol, "nuint", "long", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint", "long"), getAmbiguousBinaryOpsDiagnostics(symbol, "long", "nuint")); 10929binaryOps(symbol, "nuint", "ulong", $"bool ulong.{name}(ulong left, ulong right)"); 10930binaryOps(symbol, "nuint", "float", $"bool float.{name}(float left, float right)"); 10931binaryOps(symbol, "nuint", "double", $"bool double.{name}(double left, double right)"); 10932binaryOps(symbol, "nuint", "decimal", $"bool decimal.{name}(decimal left, decimal right)"); 10933binaryOps(symbol, "nuint", "System.IntPtr"); 10934binaryOps(symbol, "nuint", "System.UIntPtr", $"bool nuint.{name}(nuint left, nuint right)"); 10935binaryOps(symbol, "nuint", "bool?"); 10936binaryOps(symbol, "nuint", "char?", $"bool nuint.{name}(nuint left, nuint right)"); 10937binaryOps(symbol, "nuint", "sbyte?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint", "sbyte?"), getAmbiguousBinaryOpsDiagnostics(symbol, "sbyte?", "nuint")); 10938binaryOps(symbol, "nuint", "byte?", $"bool nuint.{name}(nuint left, nuint right)"); 10939binaryOps(symbol, "nuint", "short?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint", "short?"), getAmbiguousBinaryOpsDiagnostics(symbol, "short?", "nuint")); 10940binaryOps(symbol, "nuint", "ushort?", $"bool nuint.{name}(nuint left, nuint right)"); 10941binaryOps(symbol, "nuint", "int?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint", "int?"), getAmbiguousBinaryOpsDiagnostics(symbol, "int?", "nuint")); 10942binaryOps(symbol, "nuint", "uint?", $"bool nuint.{name}(nuint left, nuint right)"); 10943binaryOps(symbol, "nuint", "nint?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint", "nint?"), getAmbiguousBinaryOpsDiagnostics(symbol, "nint?", "nuint")); 10944binaryOps(symbol, "nuint", "nuint?", $"bool nuint.{name}(nuint left, nuint right)"); 10945binaryOps(symbol, "nuint", "long?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint", "long?"), getAmbiguousBinaryOpsDiagnostics(symbol, "long?", "nuint")); 10946binaryOps(symbol, "nuint", "ulong?", $"bool ulong.{name}(ulong left, ulong right)"); 10947binaryOps(symbol, "nuint", "float?", $"bool float.{name}(float left, float right)"); 10948binaryOps(symbol, "nuint", "double?", $"bool double.{name}(double left, double right)"); 10949binaryOps(symbol, "nuint", "decimal?", $"bool decimal.{name}(decimal left, decimal right)"); 10950binaryOps(symbol, "nuint", "System.IntPtr?"); 10951binaryOps(symbol, "nuint", "System.UIntPtr?", $"bool nuint.{name}(nuint left, nuint right)"); 10952binaryOps(symbol, "nuint?", "object"); 10953binaryOps(symbol, "nuint?", "string"); 10954binaryOps(symbol, "nuint?", "void*", null, null, getBadBinaryOpsDiagnostics(symbol, "nuint?", "void*"), getBadBinaryOpsDiagnostics(symbol, "void*", "nuint?")); 10955binaryOps(symbol, "nuint?", "bool"); 10956binaryOps(symbol, "nuint?", "char", $"bool nuint.{name}(nuint left, nuint right)"); 10957binaryOps(symbol, "nuint?", "sbyte", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint?", "sbyte"), getAmbiguousBinaryOpsDiagnostics(symbol, "sbyte", "nuint?")); 10958binaryOps(symbol, "nuint?", "byte", $"bool nuint.{name}(nuint left, nuint right)"); 10959binaryOps(symbol, "nuint?", "short", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint?", "short"), getAmbiguousBinaryOpsDiagnostics(symbol, "short", "nuint?")); 10960binaryOps(symbol, "nuint?", "ushort", $"bool nuint.{name}(nuint left, nuint right)"); 10961binaryOps(symbol, "nuint?", "int", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint?", "int"), getAmbiguousBinaryOpsDiagnostics(symbol, "int", "nuint?")); 10962binaryOps(symbol, "nuint?", "uint", $"bool nuint.{name}(nuint left, nuint right)"); 10963binaryOps(symbol, "nuint?", "nint", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint?", "nint"), getAmbiguousBinaryOpsDiagnostics(symbol, "nint", "nuint?")); 10964binaryOps(symbol, "nuint?", "nuint", $"bool nuint.{name}(nuint left, nuint right)"); 10965binaryOps(symbol, "nuint?", "long", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint?", "long"), getAmbiguousBinaryOpsDiagnostics(symbol, "long", "nuint?")); 10966binaryOps(symbol, "nuint?", "ulong", $"bool ulong.{name}(ulong left, ulong right)"); 10967binaryOps(symbol, "nuint?", "float", $"bool float.{name}(float left, float right)"); 10968binaryOps(symbol, "nuint?", "double", $"bool double.{name}(double left, double right)"); 10969binaryOps(symbol, "nuint?", "decimal", $"bool decimal.{name}(decimal left, decimal right)"); 10970binaryOps(symbol, "nuint?", "System.IntPtr"); 10971binaryOps(symbol, "nuint?", "System.UIntPtr", $"bool nuint.{name}(nuint left, nuint right)"); 10972binaryOps(symbol, "nuint?", "bool?"); 10973binaryOps(symbol, "nuint?", "char?", $"bool nuint.{name}(nuint left, nuint right)"); 10974binaryOps(symbol, "nuint?", "sbyte?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint?", "sbyte?"), getAmbiguousBinaryOpsDiagnostics(symbol, "sbyte?", "nuint?")); 10975binaryOps(symbol, "nuint?", "byte?", $"bool nuint.{name}(nuint left, nuint right)"); 10976binaryOps(symbol, "nuint?", "short?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint?", "short?"), getAmbiguousBinaryOpsDiagnostics(symbol, "short?", "nuint?")); 10977binaryOps(symbol, "nuint?", "ushort?", $"bool nuint.{name}(nuint left, nuint right)"); 10978binaryOps(symbol, "nuint?", "int?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint?", "int?"), getAmbiguousBinaryOpsDiagnostics(symbol, "int?", "nuint?")); 10979binaryOps(symbol, "nuint?", "uint?", $"bool nuint.{name}(nuint left, nuint right)"); 10980binaryOps(symbol, "nuint?", "nint?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint?", "nint?"), getAmbiguousBinaryOpsDiagnostics(symbol, "nint?", "nuint?")); 10981binaryOps(symbol, "nuint?", "nuint?", $"bool nuint.{name}(nuint left, nuint right)"); 10982binaryOps(symbol, "nuint?", "long?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint?", "long?"), getAmbiguousBinaryOpsDiagnostics(symbol, "long?", "nuint?")); 10983binaryOps(symbol, "nuint?", "ulong?", $"bool ulong.{name}(ulong left, ulong right)"); 10984binaryOps(symbol, "nuint?", "float?", $"bool float.{name}(float left, float right)"); 10985binaryOps(symbol, "nuint?", "double?", $"bool double.{name}(double left, double right)"); 10986binaryOps(symbol, "nuint?", "decimal?", $"bool decimal.{name}(decimal left, decimal right)"); 10987binaryOps(symbol, "nuint?", "System.IntPtr?"); 10988binaryOps(symbol, "nuint?", "System.UIntPtr?", $"bool nuint.{name}(nuint left, nuint right)"); 10989binaryOps(symbol, "System.IntPtr", "object"); 10990binaryOps(symbol, "System.IntPtr", "string"); 10991binaryOps(symbol, "System.IntPtr", "void*"); 10992binaryOps(symbol, "System.IntPtr", "bool"); 10993binaryOps(symbol, "System.IntPtr", "char"); 10994binaryOps(symbol, "System.IntPtr", "sbyte"); 10995binaryOps(symbol, "System.IntPtr", "byte"); 10996binaryOps(symbol, "System.IntPtr", "short"); 10997binaryOps(symbol, "System.IntPtr", "ushort"); 10998binaryOps(symbol, "System.IntPtr", "int"); 10999binaryOps(symbol, "System.IntPtr", "uint"); 11000binaryOps(symbol, "System.IntPtr", "nint", $"bool nint.{name}(nint left, nint right)"); 11001binaryOps(symbol, "System.IntPtr", "nuint"); 11002binaryOps(symbol, "System.IntPtr", "long"); 11003binaryOps(symbol, "System.IntPtr", "ulong"); 11004binaryOps(symbol, "System.IntPtr", "float"); 11005binaryOps(symbol, "System.IntPtr", "double"); 11006binaryOps(symbol, "System.IntPtr", "decimal"); 11007binaryOps(symbol, "System.IntPtr", "System.IntPtr"); 11008binaryOps(symbol, "System.IntPtr", "System.UIntPtr"); 11009binaryOps(symbol, "System.IntPtr", "bool?"); 11010binaryOps(symbol, "System.IntPtr", "char?"); 11011binaryOps(symbol, "System.IntPtr", "sbyte?"); 11012binaryOps(symbol, "System.IntPtr", "byte?"); 11013binaryOps(symbol, "System.IntPtr", "short?"); 11014binaryOps(symbol, "System.IntPtr", "ushort?"); 11015binaryOps(symbol, "System.IntPtr", "int?"); 11016binaryOps(symbol, "System.IntPtr", "uint?"); 11017binaryOps(symbol, "System.IntPtr", "nint?", $"bool nint.{name}(nint left, nint right)"); 11018binaryOps(symbol, "System.IntPtr", "nuint?"); 11019binaryOps(symbol, "System.IntPtr", "long?"); 11020binaryOps(symbol, "System.IntPtr", "ulong?"); 11021binaryOps(symbol, "System.IntPtr", "float?"); 11022binaryOps(symbol, "System.IntPtr", "double?"); 11023binaryOps(symbol, "System.IntPtr", "decimal?"); 11024binaryOps(symbol, "System.IntPtr", "System.IntPtr?"); 11025binaryOps(symbol, "System.IntPtr", "System.UIntPtr?"); 11026binaryOps(symbol, "System.IntPtr", "object"); 11027binaryOps(symbol, "System.IntPtr?", "string"); 11028binaryOps(symbol, "System.IntPtr?", "void*"); 11029binaryOps(symbol, "System.IntPtr?", "bool"); 11030binaryOps(symbol, "System.IntPtr?", "char"); 11031binaryOps(symbol, "System.IntPtr?", "sbyte"); 11032binaryOps(symbol, "System.IntPtr?", "byte"); 11033binaryOps(symbol, "System.IntPtr?", "short"); 11034binaryOps(symbol, "System.IntPtr?", "ushort"); 11035binaryOps(symbol, "System.IntPtr?", "int"); 11036binaryOps(symbol, "System.IntPtr?", "uint"); 11037binaryOps(symbol, "System.IntPtr?", "nint", $"bool nint.{name}(nint left, nint right)"); 11038binaryOps(symbol, "System.IntPtr?", "nuint"); 11039binaryOps(symbol, "System.IntPtr?", "long"); 11040binaryOps(symbol, "System.IntPtr?", "ulong"); 11041binaryOps(symbol, "System.IntPtr?", "float"); 11042binaryOps(symbol, "System.IntPtr?", "double"); 11043binaryOps(symbol, "System.IntPtr?", "decimal"); 11044binaryOps(symbol, "System.IntPtr?", "System.IntPtr"); 11045binaryOps(symbol, "System.IntPtr?", "System.UIntPtr"); 11046binaryOps(symbol, "System.IntPtr?", "bool?"); 11047binaryOps(symbol, "System.IntPtr?", "char?"); 11048binaryOps(symbol, "System.IntPtr?", "sbyte?"); 11049binaryOps(symbol, "System.IntPtr?", "byte?"); 11050binaryOps(symbol, "System.IntPtr?", "short?"); 11051binaryOps(symbol, "System.IntPtr?", "ushort?"); 11052binaryOps(symbol, "System.IntPtr?", "int?"); 11053binaryOps(symbol, "System.IntPtr?", "uint?"); 11054binaryOps(symbol, "System.IntPtr?", "nint?", $"bool nint.{name}(nint left, nint right)"); 11055binaryOps(symbol, "System.IntPtr?", "nuint?"); 11056binaryOps(symbol, "System.IntPtr?", "long?"); 11057binaryOps(symbol, "System.IntPtr?", "ulong?"); 11058binaryOps(symbol, "System.IntPtr?", "float?"); 11059binaryOps(symbol, "System.IntPtr?", "double?"); 11060binaryOps(symbol, "System.IntPtr?", "decimal?"); 11061binaryOps(symbol, "System.IntPtr?", "System.IntPtr?"); 11062binaryOps(symbol, "System.IntPtr?", "System.UIntPtr?"); 11063binaryOps(symbol, "System.UIntPtr", "object"); 11064binaryOps(symbol, "System.UIntPtr", "string"); 11065binaryOps(symbol, "System.UIntPtr", "void*"); 11066binaryOps(symbol, "System.UIntPtr", "bool"); 11067binaryOps(symbol, "System.UIntPtr", "char"); 11068binaryOps(symbol, "System.UIntPtr", "sbyte"); 11069binaryOps(symbol, "System.UIntPtr", "byte"); 11070binaryOps(symbol, "System.UIntPtr", "short"); 11071binaryOps(symbol, "System.UIntPtr", "ushort"); 11072binaryOps(symbol, "System.UIntPtr", "int"); 11073binaryOps(symbol, "System.UIntPtr", "uint"); 11074binaryOps(symbol, "System.UIntPtr", "nint"); 11075binaryOps(symbol, "System.UIntPtr", "nuint", $"bool nuint.{name}(nuint left, nuint right)"); 11076binaryOps(symbol, "System.UIntPtr", "long"); 11077binaryOps(symbol, "System.UIntPtr", "ulong"); 11078binaryOps(symbol, "System.UIntPtr", "float"); 11079binaryOps(symbol, "System.UIntPtr", "double"); 11080binaryOps(symbol, "System.UIntPtr", "decimal"); 11081binaryOps(symbol, "System.UIntPtr", "System.IntPtr"); 11082binaryOps(symbol, "System.UIntPtr", "System.UIntPtr"); 11083binaryOps(symbol, "System.UIntPtr", "bool?"); 11084binaryOps(symbol, "System.UIntPtr", "char?"); 11085binaryOps(symbol, "System.UIntPtr", "sbyte?"); 11086binaryOps(symbol, "System.UIntPtr", "byte?"); 11087binaryOps(symbol, "System.UIntPtr", "short?"); 11088binaryOps(symbol, "System.UIntPtr", "ushort?"); 11089binaryOps(symbol, "System.UIntPtr", "int?"); 11090binaryOps(symbol, "System.UIntPtr", "uint?"); 11091binaryOps(symbol, "System.UIntPtr", "nint?"); 11092binaryOps(symbol, "System.UIntPtr", "nuint?", $"bool nuint.{name}(nuint left, nuint right)"); 11093binaryOps(symbol, "System.UIntPtr", "long?"); 11094binaryOps(symbol, "System.UIntPtr", "ulong?"); 11095binaryOps(symbol, "System.UIntPtr", "float?"); 11096binaryOps(symbol, "System.UIntPtr", "double?"); 11097binaryOps(symbol, "System.UIntPtr", "decimal?"); 11098binaryOps(symbol, "System.UIntPtr", "System.IntPtr?"); 11099binaryOps(symbol, "System.UIntPtr", "System.UIntPtr?"); 11100binaryOps(symbol, "System.UIntPtr", "object"); 11101binaryOps(symbol, "System.UIntPtr?", "string"); 11102binaryOps(symbol, "System.UIntPtr?", "void*"); 11103binaryOps(symbol, "System.UIntPtr?", "bool"); 11104binaryOps(symbol, "System.UIntPtr?", "char"); 11105binaryOps(symbol, "System.UIntPtr?", "sbyte"); 11106binaryOps(symbol, "System.UIntPtr?", "byte"); 11107binaryOps(symbol, "System.UIntPtr?", "short"); 11108binaryOps(symbol, "System.UIntPtr?", "ushort"); 11109binaryOps(symbol, "System.UIntPtr?", "int"); 11110binaryOps(symbol, "System.UIntPtr?", "uint"); 11111binaryOps(symbol, "System.UIntPtr?", "nint"); 11112binaryOps(symbol, "System.UIntPtr?", "nuint", $"bool nuint.{name}(nuint left, nuint right)"); 11113binaryOps(symbol, "System.UIntPtr?", "long"); 11114binaryOps(symbol, "System.UIntPtr?", "ulong"); 11115binaryOps(symbol, "System.UIntPtr?", "float"); 11116binaryOps(symbol, "System.UIntPtr?", "double"); 11117binaryOps(symbol, "System.UIntPtr?", "decimal"); 11118binaryOps(symbol, "System.UIntPtr?", "System.IntPtr"); 11119binaryOps(symbol, "System.UIntPtr?", "System.UIntPtr"); 11120binaryOps(symbol, "System.UIntPtr?", "bool?"); 11121binaryOps(symbol, "System.UIntPtr?", "char?"); 11122binaryOps(symbol, "System.UIntPtr?", "sbyte?"); 11123binaryOps(symbol, "System.UIntPtr?", "byte?"); 11124binaryOps(symbol, "System.UIntPtr?", "short?"); 11125binaryOps(symbol, "System.UIntPtr?", "ushort?"); 11126binaryOps(symbol, "System.UIntPtr?", "int?"); 11127binaryOps(symbol, "System.UIntPtr?", "uint?"); 11128binaryOps(symbol, "System.UIntPtr?", "nint?"); 11129binaryOps(symbol, "System.UIntPtr?", "nuint?", $"bool nuint.{name}(nuint left, nuint right)"); 11130binaryOps(symbol, "System.UIntPtr?", "long?"); 11131binaryOps(symbol, "System.UIntPtr?", "ulong?"); 11132binaryOps(symbol, "System.UIntPtr?", "float?"); 11133binaryOps(symbol, "System.UIntPtr?", "double?"); 11134binaryOps(symbol, "System.UIntPtr?", "decimal?"); 11135binaryOps(symbol, "System.UIntPtr?", "System.IntPtr?"); 11136binaryOps(symbol, "System.UIntPtr?", "System.UIntPtr?"); 11141binaryOps(symbol, "nint", "object"); 11142binaryOps(symbol, "nint", "string", $"string string.{name}(object left, string right)", $"string string.{name}(string left, object right)"); 11143binaryOps(symbol, "nint", "void*", $"void* void*.{name}(long left, void* right)", $"void* void*.{name}(void* left, long right)", new[] { Diagnostic(ErrorCode.ERR_VoidError, "x + y") }); 11144binaryOps(symbol, "nint", "bool"); 11145binaryOps(symbol, "nint", "char", $"nint nint.{name}(nint left, nint right)"); 11146binaryOps(symbol, "nint", "sbyte", $"nint nint.{name}(nint left, nint right)"); 11147binaryOps(symbol, "nint", "byte", $"nint nint.{name}(nint left, nint right)"); 11148binaryOps(symbol, "nint", "short", $"nint nint.{name}(nint left, nint right)"); 11149binaryOps(symbol, "nint", "ushort", $"nint nint.{name}(nint left, nint right)"); 11150binaryOps(symbol, "nint", "int", $"nint nint.{name}(nint left, nint right)"); 11151binaryOps(symbol, "nint", "uint", $"long long.{name}(long left, long right)"); 11152binaryOps(symbol, "nint", "nint", $"nint nint.{name}(nint left, nint right)"); 11153binaryOps(symbol, "nint", "nuint", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nint", "nuint"), getAmbiguousBinaryOpsDiagnostics(symbol, "nuint", "nint")); 11154binaryOps(symbol, "nint", "long", $"long long.{name}(long left, long right)"); 11155binaryOps(symbol, "nint", "ulong", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nint", "ulong"), getAmbiguousBinaryOpsDiagnostics(symbol, "ulong", "nint")); 11156binaryOps(symbol, "nint", "float", $"float float.{name}(float left, float right)"); 11157binaryOps(symbol, "nint", "double", $"double double.{name}(double left, double right)"); 11158binaryOps(symbol, "nint", "decimal", $"decimal decimal.{name}(decimal left, decimal right)"); 11159binaryOps(symbol, "nint", "System.IntPtr", $"nint nint.{name}(nint left, nint right)"); 11160binaryOps(symbol, "nint", "System.UIntPtr"); 11161binaryOps(symbol, "nint", "bool?"); 11162binaryOps(symbol, "nint", "char?", $"nint nint.{name}(nint left, nint right)"); 11163binaryOps(symbol, "nint", "sbyte?", $"nint nint.{name}(nint left, nint right)"); 11164binaryOps(symbol, "nint", "byte?", $"nint nint.{name}(nint left, nint right)"); 11165binaryOps(symbol, "nint", "short?", $"nint nint.{name}(nint left, nint right)"); 11166binaryOps(symbol, "nint", "ushort?", $"nint nint.{name}(nint left, nint right)"); 11167binaryOps(symbol, "nint", "int?", $"nint nint.{name}(nint left, nint right)"); 11168binaryOps(symbol, "nint", "uint?", $"long long.{name}(long left, long right)"); 11169binaryOps(symbol, "nint", "nint?", $"nint nint.{name}(nint left, nint right)"); 11170binaryOps(symbol, "nint", "nuint?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nint", "nuint?"), getAmbiguousBinaryOpsDiagnostics(symbol, "nuint?", "nint")); 11171binaryOps(symbol, "nint", "long?", $"long long.{name}(long left, long right)"); 11172binaryOps(symbol, "nint", "ulong?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nint", "ulong?"), getAmbiguousBinaryOpsDiagnostics(symbol, "ulong?", "nint")); 11173binaryOps(symbol, "nint", "float?", $"float float.{name}(float left, float right)"); 11174binaryOps(symbol, "nint", "double?", $"double double.{name}(double left, double right)"); 11175binaryOps(symbol, "nint", "decimal?", $"decimal decimal.{name}(decimal left, decimal right)"); 11176binaryOps(symbol, "nint", "System.IntPtr?", $"nint nint.{name}(nint left, nint right)"); 11177binaryOps(symbol, "nint", "System.UIntPtr?"); 11178binaryOps(symbol, "nint", "object"); 11179binaryOps(symbol, "nint?", "string", $"string string.{name}(object left, string right)", $"string string.{name}(string left, object right)"); 11180binaryOps(symbol, "nint?", "void*", null, null, getBadBinaryOpsDiagnostics(symbol, "nint?", "void*", includeVoidError: true), getBadBinaryOpsDiagnostics(symbol, "void*", "nint?", includeVoidError: true)); 11181binaryOps(symbol, "nint?", "bool"); 11182binaryOps(symbol, "nint?", "char", $"nint nint.{name}(nint left, nint right)"); 11183binaryOps(symbol, "nint?", "sbyte", $"nint nint.{name}(nint left, nint right)"); 11184binaryOps(symbol, "nint?", "byte", $"nint nint.{name}(nint left, nint right)"); 11185binaryOps(symbol, "nint?", "short", $"nint nint.{name}(nint left, nint right)"); 11186binaryOps(symbol, "nint?", "ushort", $"nint nint.{name}(nint left, nint right)"); 11187binaryOps(symbol, "nint?", "int", $"nint nint.{name}(nint left, nint right)"); 11188binaryOps(symbol, "nint?", "uint", $"long long.{name}(long left, long right)"); 11189binaryOps(symbol, "nint?", "nint", $"nint nint.{name}(nint left, nint right)"); 11190binaryOps(symbol, "nint?", "nuint", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nint?", "nuint"), getAmbiguousBinaryOpsDiagnostics(symbol, "nuint", "nint?")); 11191binaryOps(symbol, "nint?", "long", $"long long.{name}(long left, long right)"); 11192binaryOps(symbol, "nint?", "ulong", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nint?", "ulong"), getAmbiguousBinaryOpsDiagnostics(symbol, "ulong", "nint?")); 11193binaryOps(symbol, "nint?", "float", $"float float.{name}(float left, float right)"); 11194binaryOps(symbol, "nint?", "double", $"double double.{name}(double left, double right)"); 11195binaryOps(symbol, "nint?", "decimal", $"decimal decimal.{name}(decimal left, decimal right)"); 11196binaryOps(symbol, "nint?", "System.IntPtr", $"nint nint.{name}(nint left, nint right)"); 11197binaryOps(symbol, "nint?", "System.UIntPtr"); 11198binaryOps(symbol, "nint?", "bool?"); 11199binaryOps(symbol, "nint?", "char?", $"nint nint.{name}(nint left, nint right)"); 11200binaryOps(symbol, "nint?", "sbyte?", $"nint nint.{name}(nint left, nint right)"); 11201binaryOps(symbol, "nint?", "byte?", $"nint nint.{name}(nint left, nint right)"); 11202binaryOps(symbol, "nint?", "short?", $"nint nint.{name}(nint left, nint right)"); 11203binaryOps(symbol, "nint?", "ushort?", $"nint nint.{name}(nint left, nint right)"); 11204binaryOps(symbol, "nint?", "int?", $"nint nint.{name}(nint left, nint right)"); 11205binaryOps(symbol, "nint?", "uint?", $"long long.{name}(long left, long right)"); 11206binaryOps(symbol, "nint?", "nint?", $"nint nint.{name}(nint left, nint right)"); 11207binaryOps(symbol, "nint?", "nuint?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nint?", "nuint?"), getAmbiguousBinaryOpsDiagnostics(symbol, "nuint?", "nint?")); 11208binaryOps(symbol, "nint?", "long?", $"long long.{name}(long left, long right)"); 11209binaryOps(symbol, "nint?", "ulong?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nint?", "ulong?"), getAmbiguousBinaryOpsDiagnostics(symbol, "ulong?", "nint?")); 11210binaryOps(symbol, "nint?", "float?", $"float float.{name}(float left, float right)"); 11211binaryOps(symbol, "nint?", "double?", $"double double.{name}(double left, double right)"); 11212binaryOps(symbol, "nint?", "decimal?", $"decimal decimal.{name}(decimal left, decimal right)"); 11213binaryOps(symbol, "nint?", "System.IntPtr?", $"nint nint.{name}(nint left, nint right)"); 11214binaryOps(symbol, "nint?", "System.UIntPtr?"); 11215binaryOps(symbol, "nuint", "object"); 11216binaryOps(symbol, "nuint", "string", $"string string.{name}(object left, string right)", $"string string.{name}(string left, object right)"); 11217binaryOps(symbol, "nuint", "void*", $"void* void*.{name}(ulong left, void* right)", $"void* void*.{name}(void* left, ulong right)", new[] { Diagnostic(ErrorCode.ERR_VoidError, "x + y") }); 11218binaryOps(symbol, "nuint", "bool"); 11219binaryOps(symbol, "nuint", "char", $"nuint nuint.{name}(nuint left, nuint right)"); 11220binaryOps(symbol, "nuint", "sbyte", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint", "sbyte"), getAmbiguousBinaryOpsDiagnostics(symbol, "sbyte", "nuint")); 11221binaryOps(symbol, "nuint", "byte", $"nuint nuint.{name}(nuint left, nuint right)"); 11222binaryOps(symbol, "nuint", "short", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint", "short"), getAmbiguousBinaryOpsDiagnostics(symbol, "short", "nuint")); 11223binaryOps(symbol, "nuint", "ushort", $"nuint nuint.{name}(nuint left, nuint right)"); 11224binaryOps(symbol, "nuint", "int", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint", "int"), getAmbiguousBinaryOpsDiagnostics(symbol, "int", "nuint")); 11225binaryOps(symbol, "nuint", "uint", $"nuint nuint.{name}(nuint left, nuint right)"); 11226binaryOps(symbol, "nuint", "nint", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint", "nint"), getAmbiguousBinaryOpsDiagnostics(symbol, "nint", "nuint")); 11227binaryOps(symbol, "nuint", "nuint", $"nuint nuint.{name}(nuint left, nuint right)"); 11228binaryOps(symbol, "nuint", "long", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint", "long"), getAmbiguousBinaryOpsDiagnostics(symbol, "long", "nuint")); 11229binaryOps(symbol, "nuint", "ulong", $"ulong ulong.{name}(ulong left, ulong right)"); 11230binaryOps(symbol, "nuint", "float", $"float float.{name}(float left, float right)"); 11231binaryOps(symbol, "nuint", "double", $"double double.{name}(double left, double right)"); 11232binaryOps(symbol, "nuint", "decimal", $"decimal decimal.{name}(decimal left, decimal right)"); 11233binaryOps(symbol, "nuint", "System.IntPtr"); 11234binaryOps(symbol, "nuint", "System.UIntPtr", $"nuint nuint.{name}(nuint left, nuint right)"); 11235binaryOps(symbol, "nuint", "bool?"); 11236binaryOps(symbol, "nuint", "char?", $"nuint nuint.{name}(nuint left, nuint right)"); 11237binaryOps(symbol, "nuint", "sbyte?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint", "sbyte?"), getAmbiguousBinaryOpsDiagnostics(symbol, "sbyte?", "nuint")); 11238binaryOps(symbol, "nuint", "byte?", $"nuint nuint.{name}(nuint left, nuint right)"); 11239binaryOps(symbol, "nuint", "short?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint", "short?"), getAmbiguousBinaryOpsDiagnostics(symbol, "short?", "nuint")); 11240binaryOps(symbol, "nuint", "ushort?", $"nuint nuint.{name}(nuint left, nuint right)"); 11241binaryOps(symbol, "nuint", "int?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint", "int?"), getAmbiguousBinaryOpsDiagnostics(symbol, "int?", "nuint")); 11242binaryOps(symbol, "nuint", "uint?", $"nuint nuint.{name}(nuint left, nuint right)"); 11243binaryOps(symbol, "nuint", "nint?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint", "nint?"), getAmbiguousBinaryOpsDiagnostics(symbol, "nint?", "nuint")); 11244binaryOps(symbol, "nuint", "nuint?", $"nuint nuint.{name}(nuint left, nuint right)"); 11245binaryOps(symbol, "nuint", "long?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint", "long?"), getAmbiguousBinaryOpsDiagnostics(symbol, "long?", "nuint")); 11246binaryOps(symbol, "nuint", "ulong?", $"ulong ulong.{name}(ulong left, ulong right)"); 11247binaryOps(symbol, "nuint", "float?", $"float float.{name}(float left, float right)"); 11248binaryOps(symbol, "nuint", "double?", $"double double.{name}(double left, double right)"); 11249binaryOps(symbol, "nuint", "decimal?", $"decimal decimal.{name}(decimal left, decimal right)"); 11250binaryOps(symbol, "nuint", "System.IntPtr?"); 11251binaryOps(symbol, "nuint", "System.UIntPtr?", $"nuint nuint.{name}(nuint left, nuint right)"); 11252binaryOps(symbol, "nuint?", "object"); 11253binaryOps(symbol, "nuint?", "string", $"string string.{name}(object left, string right)", $"string string.{name}(string left, object right)"); 11254binaryOps(symbol, "nuint?", "void*", null, null, getBadBinaryOpsDiagnostics(symbol, "nuint?", "void*", includeVoidError: true), getBadBinaryOpsDiagnostics(symbol, "void*", "nuint?", includeVoidError: true)); 11255binaryOps(symbol, "nuint?", "bool"); 11256binaryOps(symbol, "nuint?", "char", $"nuint nuint.{name}(nuint left, nuint right)"); 11257binaryOps(symbol, "nuint?", "sbyte", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint?", "sbyte"), getAmbiguousBinaryOpsDiagnostics(symbol, "sbyte", "nuint?")); 11258binaryOps(symbol, "nuint?", "byte", $"nuint nuint.{name}(nuint left, nuint right)"); 11259binaryOps(symbol, "nuint?", "short", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint?", "short"), getAmbiguousBinaryOpsDiagnostics(symbol, "short", "nuint?")); 11260binaryOps(symbol, "nuint?", "ushort", $"nuint nuint.{name}(nuint left, nuint right)"); 11261binaryOps(symbol, "nuint?", "int", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint?", "int"), getAmbiguousBinaryOpsDiagnostics(symbol, "int", "nuint?")); 11262binaryOps(symbol, "nuint?", "uint", $"nuint nuint.{name}(nuint left, nuint right)"); 11263binaryOps(symbol, "nuint?", "nint", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint?", "nint"), getAmbiguousBinaryOpsDiagnostics(symbol, "nint", "nuint?")); 11264binaryOps(symbol, "nuint?", "nuint", $"nuint nuint.{name}(nuint left, nuint right)"); 11265binaryOps(symbol, "nuint?", "long", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint?", "long"), getAmbiguousBinaryOpsDiagnostics(symbol, "long", "nuint?")); 11266binaryOps(symbol, "nuint?", "ulong", $"ulong ulong.{name}(ulong left, ulong right)"); 11267binaryOps(symbol, "nuint?", "float", $"float float.{name}(float left, float right)"); 11268binaryOps(symbol, "nuint?", "double", $"double double.{name}(double left, double right)"); 11269binaryOps(symbol, "nuint?", "decimal", $"decimal decimal.{name}(decimal left, decimal right)"); 11270binaryOps(symbol, "nuint?", "System.IntPtr"); 11271binaryOps(symbol, "nuint?", "System.UIntPtr", $"nuint nuint.{name}(nuint left, nuint right)"); 11272binaryOps(symbol, "nuint?", "bool?"); 11273binaryOps(symbol, "nuint?", "char?", $"nuint nuint.{name}(nuint left, nuint right)"); 11274binaryOps(symbol, "nuint?", "sbyte?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint?", "sbyte?"), getAmbiguousBinaryOpsDiagnostics(symbol, "sbyte?", "nuint?")); 11275binaryOps(symbol, "nuint?", "byte?", $"nuint nuint.{name}(nuint left, nuint right)"); 11276binaryOps(symbol, "nuint?", "short?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint?", "short?"), getAmbiguousBinaryOpsDiagnostics(symbol, "short?", "nuint?")); 11277binaryOps(symbol, "nuint?", "ushort?", $"nuint nuint.{name}(nuint left, nuint right)"); 11278binaryOps(symbol, "nuint?", "int?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint?", "int?"), getAmbiguousBinaryOpsDiagnostics(symbol, "int?", "nuint?")); 11279binaryOps(symbol, "nuint?", "uint?", $"nuint nuint.{name}(nuint left, nuint right)"); 11280binaryOps(symbol, "nuint?", "nint?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint?", "nint?"), getAmbiguousBinaryOpsDiagnostics(symbol, "nint?", "nuint?")); 11281binaryOps(symbol, "nuint?", "nuint?", $"nuint nuint.{name}(nuint left, nuint right)"); 11282binaryOps(symbol, "nuint?", "long?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint?", "long?"), getAmbiguousBinaryOpsDiagnostics(symbol, "long?", "nuint?")); 11283binaryOps(symbol, "nuint?", "ulong?", $"ulong ulong.{name}(ulong left, ulong right)"); 11284binaryOps(symbol, "nuint?", "float?", $"float float.{name}(float left, float right)"); 11285binaryOps(symbol, "nuint?", "double?", $"double double.{name}(double left, double right)"); 11286binaryOps(symbol, "nuint?", "decimal?", $"decimal decimal.{name}(decimal left, decimal right)"); 11287binaryOps(symbol, "nuint?", "System.IntPtr?"); 11288binaryOps(symbol, "nuint?", "System.UIntPtr?", $"nuint nuint.{name}(nuint left, nuint right)"); 11289binaryOps(symbol, "System.IntPtr", "object"); 11290binaryOps(symbol, "System.IntPtr", "string", $"string string.{name}(object left, string right)", $"string string.{name}(string left, object right)"); 11291binaryOps(symbol, "System.IntPtr", "void*", null, null, getBadBinaryOpsDiagnostics(symbol, "System.IntPtr", "void*", includeVoidError: true), getBadBinaryOpsDiagnostics(symbol, "void*", "System.IntPtr", includeVoidError: true)); 11292binaryOps(symbol, "System.IntPtr", "bool"); 11293binaryOps(symbol, "System.IntPtr", "char", $"System.IntPtr System.IntPtr.{name}(System.IntPtr pointer, int offset)", null); 11294binaryOps(symbol, "System.IntPtr", "sbyte", $"System.IntPtr System.IntPtr.{name}(System.IntPtr pointer, int offset)", null); 11295binaryOps(symbol, "System.IntPtr", "byte", $"System.IntPtr System.IntPtr.{name}(System.IntPtr pointer, int offset)", null); 11296binaryOps(symbol, "System.IntPtr", "short", $"System.IntPtr System.IntPtr.{name}(System.IntPtr pointer, int offset)", null); 11297binaryOps(symbol, "System.IntPtr", "ushort", $"System.IntPtr System.IntPtr.{name}(System.IntPtr pointer, int offset)", null); 11298binaryOps(symbol, "System.IntPtr", "int", $"System.IntPtr System.IntPtr.{name}(System.IntPtr pointer, int offset)", null); 11299binaryOps(symbol, "System.IntPtr", "uint"); 11300binaryOps(symbol, "System.IntPtr", "nint", $"nint nint.{name}(nint left, nint right)"); 11301binaryOps(symbol, "System.IntPtr", "nuint"); 11302binaryOps(symbol, "System.IntPtr", "long"); 11303binaryOps(symbol, "System.IntPtr", "ulong"); 11304binaryOps(symbol, "System.IntPtr", "float"); 11305binaryOps(symbol, "System.IntPtr", "double"); 11306binaryOps(symbol, "System.IntPtr", "decimal"); 11307binaryOps(symbol, "System.IntPtr", "System.IntPtr"); 11308binaryOps(symbol, "System.IntPtr", "System.UIntPtr"); 11309binaryOps(symbol, "System.IntPtr", "bool?"); 11310binaryOps(symbol, "System.IntPtr", "char?", $"System.IntPtr System.IntPtr.{name}(System.IntPtr pointer, int offset)", null); 11311binaryOps(symbol, "System.IntPtr", "sbyte?", $"System.IntPtr System.IntPtr.{name}(System.IntPtr pointer, int offset)", null); 11312binaryOps(symbol, "System.IntPtr", "byte?", $"System.IntPtr System.IntPtr.{name}(System.IntPtr pointer, int offset)", null); 11313binaryOps(symbol, "System.IntPtr", "short?", $"System.IntPtr System.IntPtr.{name}(System.IntPtr pointer, int offset)", null); 11314binaryOps(symbol, "System.IntPtr", "ushort?", $"System.IntPtr System.IntPtr.{name}(System.IntPtr pointer, int offset)", null); 11315binaryOps(symbol, "System.IntPtr", "int?", $"System.IntPtr System.IntPtr.{name}(System.IntPtr pointer, int offset)", null); 11316binaryOps(symbol, "System.IntPtr", "uint?"); 11317binaryOps(symbol, "System.IntPtr", "nint?", $"nint nint.{name}(nint left, nint right)"); 11318binaryOps(symbol, "System.IntPtr", "nuint?"); 11319binaryOps(symbol, "System.IntPtr", "long?"); 11320binaryOps(symbol, "System.IntPtr", "ulong?"); 11321binaryOps(symbol, "System.IntPtr", "float?"); 11322binaryOps(symbol, "System.IntPtr", "double?"); 11323binaryOps(symbol, "System.IntPtr", "decimal?"); 11324binaryOps(symbol, "System.IntPtr", "System.IntPtr?"); 11325binaryOps(symbol, "System.IntPtr", "System.UIntPtr?"); 11326binaryOps(symbol, "System.IntPtr", "object"); 11327binaryOps(symbol, "System.IntPtr?", "string", $"string string.{name}(object left, string right)", $"string string.{name}(string left, object right)"); 11328binaryOps(symbol, "System.IntPtr?", "void*", null, null, getBadBinaryOpsDiagnostics(symbol, "System.IntPtr?", "void*", includeVoidError: true), getBadBinaryOpsDiagnostics(symbol, "void*", "System.IntPtr?", includeVoidError: true)); 11329binaryOps(symbol, "System.IntPtr?", "bool"); 11330binaryOps(symbol, "System.IntPtr?", "char", $"System.IntPtr System.IntPtr.{name}(System.IntPtr pointer, int offset)", null); 11331binaryOps(symbol, "System.IntPtr?", "sbyte", $"System.IntPtr System.IntPtr.{name}(System.IntPtr pointer, int offset)", null); 11332binaryOps(symbol, "System.IntPtr?", "byte", $"System.IntPtr System.IntPtr.{name}(System.IntPtr pointer, int offset)", null); 11333binaryOps(symbol, "System.IntPtr?", "short", $"System.IntPtr System.IntPtr.{name}(System.IntPtr pointer, int offset)", null); 11334binaryOps(symbol, "System.IntPtr?", "ushort", $"System.IntPtr System.IntPtr.{name}(System.IntPtr pointer, int offset)", null); 11335binaryOps(symbol, "System.IntPtr?", "int", $"System.IntPtr System.IntPtr.{name}(System.IntPtr pointer, int offset)", null); 11336binaryOps(symbol, "System.IntPtr?", "uint"); 11337binaryOps(symbol, "System.IntPtr?", "nint", $"nint nint.{name}(nint left, nint right)"); 11338binaryOps(symbol, "System.IntPtr?", "nuint"); 11339binaryOps(symbol, "System.IntPtr?", "long"); 11340binaryOps(symbol, "System.IntPtr?", "ulong"); 11341binaryOps(symbol, "System.IntPtr?", "float"); 11342binaryOps(symbol, "System.IntPtr?", "double"); 11343binaryOps(symbol, "System.IntPtr?", "decimal"); 11344binaryOps(symbol, "System.IntPtr?", "System.IntPtr"); 11345binaryOps(symbol, "System.IntPtr?", "System.UIntPtr"); 11346binaryOps(symbol, "System.IntPtr?", "bool?"); 11347binaryOps(symbol, "System.IntPtr?", "char?", $"System.IntPtr System.IntPtr.{name}(System.IntPtr pointer, int offset)", null); 11348binaryOps(symbol, "System.IntPtr?", "sbyte?", $"System.IntPtr System.IntPtr.{name}(System.IntPtr pointer, int offset)", null); 11349binaryOps(symbol, "System.IntPtr?", "byte?", $"System.IntPtr System.IntPtr.{name}(System.IntPtr pointer, int offset)", null); 11350binaryOps(symbol, "System.IntPtr?", "short?", $"System.IntPtr System.IntPtr.{name}(System.IntPtr pointer, int offset)", null); 11351binaryOps(symbol, "System.IntPtr?", "ushort?", $"System.IntPtr System.IntPtr.{name}(System.IntPtr pointer, int offset)", null); 11352binaryOps(symbol, "System.IntPtr?", "int?", $"System.IntPtr System.IntPtr.{name}(System.IntPtr pointer, int offset)", null); 11353binaryOps(symbol, "System.IntPtr?", "uint?"); 11354binaryOps(symbol, "System.IntPtr?", "nint?", $"nint nint.{name}(nint left, nint right)"); 11355binaryOps(symbol, "System.IntPtr?", "nuint?"); 11356binaryOps(symbol, "System.IntPtr?", "long?"); 11357binaryOps(symbol, "System.IntPtr?", "ulong?"); 11358binaryOps(symbol, "System.IntPtr?", "float?"); 11359binaryOps(symbol, "System.IntPtr?", "double?"); 11360binaryOps(symbol, "System.IntPtr?", "decimal?"); 11361binaryOps(symbol, "System.IntPtr?", "System.IntPtr?"); 11362binaryOps(symbol, "System.IntPtr?", "System.UIntPtr?"); 11363binaryOps(symbol, "System.UIntPtr", "object"); 11364binaryOps(symbol, "System.UIntPtr", "string", $"string string.{name}(object left, string right)", $"string string.{name}(string left, object right)"); 11365binaryOps(symbol, "System.UIntPtr", "void*", null, null, getBadBinaryOpsDiagnostics(symbol, "System.UIntPtr", "void*", includeVoidError: true), getBadBinaryOpsDiagnostics(symbol, "void*", "System.UIntPtr", includeVoidError: true)); 11366binaryOps(symbol, "System.UIntPtr", "bool"); 11367binaryOps(symbol, "System.UIntPtr", "char", $"System.UIntPtr System.UIntPtr.{name}(System.UIntPtr pointer, int offset)", null); 11368binaryOps(symbol, "System.UIntPtr", "sbyte", $"System.UIntPtr System.UIntPtr.{name}(System.UIntPtr pointer, int offset)", null); 11369binaryOps(symbol, "System.UIntPtr", "byte", $"System.UIntPtr System.UIntPtr.{name}(System.UIntPtr pointer, int offset)", null); 11370binaryOps(symbol, "System.UIntPtr", "short", $"System.UIntPtr System.UIntPtr.{name}(System.UIntPtr pointer, int offset)", null); 11371binaryOps(symbol, "System.UIntPtr", "ushort", $"System.UIntPtr System.UIntPtr.{name}(System.UIntPtr pointer, int offset)", null); 11372binaryOps(symbol, "System.UIntPtr", "int", $"System.UIntPtr System.UIntPtr.{name}(System.UIntPtr pointer, int offset)", null); 11373binaryOps(symbol, "System.UIntPtr", "uint"); 11374binaryOps(symbol, "System.UIntPtr", "nint"); 11375binaryOps(symbol, "System.UIntPtr", "nuint", $"nuint nuint.{name}(nuint left, nuint right)"); 11376binaryOps(symbol, "System.UIntPtr", "long"); 11377binaryOps(symbol, "System.UIntPtr", "ulong"); 11378binaryOps(symbol, "System.UIntPtr", "float"); 11379binaryOps(symbol, "System.UIntPtr", "double"); 11380binaryOps(symbol, "System.UIntPtr", "decimal"); 11381binaryOps(symbol, "System.UIntPtr", "System.IntPtr"); 11382binaryOps(symbol, "System.UIntPtr", "System.UIntPtr"); 11383binaryOps(symbol, "System.UIntPtr", "bool?"); 11384binaryOps(symbol, "System.UIntPtr", "char?", $"System.UIntPtr System.UIntPtr.{name}(System.UIntPtr pointer, int offset)", null); 11385binaryOps(symbol, "System.UIntPtr", "sbyte?", $"System.UIntPtr System.UIntPtr.{name}(System.UIntPtr pointer, int offset)", null); 11386binaryOps(symbol, "System.UIntPtr", "byte?", $"System.UIntPtr System.UIntPtr.{name}(System.UIntPtr pointer, int offset)", null); 11387binaryOps(symbol, "System.UIntPtr", "short?", $"System.UIntPtr System.UIntPtr.{name}(System.UIntPtr pointer, int offset)", null); 11388binaryOps(symbol, "System.UIntPtr", "ushort?", $"System.UIntPtr System.UIntPtr.{name}(System.UIntPtr pointer, int offset)", null); 11389binaryOps(symbol, "System.UIntPtr", "int?", $"System.UIntPtr System.UIntPtr.{name}(System.UIntPtr pointer, int offset)", null); 11390binaryOps(symbol, "System.UIntPtr", "uint?"); 11391binaryOps(symbol, "System.UIntPtr", "nint?"); 11392binaryOps(symbol, "System.UIntPtr", "nuint?", $"nuint nuint.{name}(nuint left, nuint right)"); 11393binaryOps(symbol, "System.UIntPtr", "long?"); 11394binaryOps(symbol, "System.UIntPtr", "ulong?"); 11395binaryOps(symbol, "System.UIntPtr", "float?"); 11396binaryOps(symbol, "System.UIntPtr", "double?"); 11397binaryOps(symbol, "System.UIntPtr", "decimal?"); 11398binaryOps(symbol, "System.UIntPtr", "System.IntPtr?"); 11399binaryOps(symbol, "System.UIntPtr", "System.UIntPtr?"); 11400binaryOps(symbol, "System.UIntPtr", "object"); 11401binaryOps(symbol, "System.UIntPtr?", "string", $"string string.{name}(object left, string right)", $"string string.{name}(string left, object right)"); 11402binaryOps(symbol, "System.UIntPtr?", "void*", null, null, getBadBinaryOpsDiagnostics(symbol, "System.UIntPtr?", "void*", includeVoidError: true), getBadBinaryOpsDiagnostics(symbol, "void*", "System.UIntPtr?", includeVoidError: true)); 11403binaryOps(symbol, "System.UIntPtr?", "bool"); 11404binaryOps(symbol, "System.UIntPtr?", "char", $"System.UIntPtr System.UIntPtr.{name}(System.UIntPtr pointer, int offset)", null); 11405binaryOps(symbol, "System.UIntPtr?", "sbyte", $"System.UIntPtr System.UIntPtr.{name}(System.UIntPtr pointer, int offset)", null); 11406binaryOps(symbol, "System.UIntPtr?", "byte", $"System.UIntPtr System.UIntPtr.{name}(System.UIntPtr pointer, int offset)", null); 11407binaryOps(symbol, "System.UIntPtr?", "short", $"System.UIntPtr System.UIntPtr.{name}(System.UIntPtr pointer, int offset)", null); 11408binaryOps(symbol, "System.UIntPtr?", "ushort", $"System.UIntPtr System.UIntPtr.{name}(System.UIntPtr pointer, int offset)", null); 11409binaryOps(symbol, "System.UIntPtr?", "int", $"System.UIntPtr System.UIntPtr.{name}(System.UIntPtr pointer, int offset)", null); 11410binaryOps(symbol, "System.UIntPtr?", "uint"); 11411binaryOps(symbol, "System.UIntPtr?", "nint"); 11412binaryOps(symbol, "System.UIntPtr?", "nuint", $"nuint nuint.{name}(nuint left, nuint right)"); 11413binaryOps(symbol, "System.UIntPtr?", "long"); 11414binaryOps(symbol, "System.UIntPtr?", "ulong"); 11415binaryOps(symbol, "System.UIntPtr?", "float"); 11416binaryOps(symbol, "System.UIntPtr?", "double"); 11417binaryOps(symbol, "System.UIntPtr?", "decimal"); 11418binaryOps(symbol, "System.UIntPtr?", "System.IntPtr"); 11419binaryOps(symbol, "System.UIntPtr?", "System.UIntPtr"); 11420binaryOps(symbol, "System.UIntPtr?", "bool?"); 11421binaryOps(symbol, "System.UIntPtr?", "char?", $"System.UIntPtr System.UIntPtr.{name}(System.UIntPtr pointer, int offset)", null); 11422binaryOps(symbol, "System.UIntPtr?", "sbyte?", $"System.UIntPtr System.UIntPtr.{name}(System.UIntPtr pointer, int offset)", null); 11423binaryOps(symbol, "System.UIntPtr?", "byte?", $"System.UIntPtr System.UIntPtr.{name}(System.UIntPtr pointer, int offset)", null); 11424binaryOps(symbol, "System.UIntPtr?", "short?", $"System.UIntPtr System.UIntPtr.{name}(System.UIntPtr pointer, int offset)", null); 11425binaryOps(symbol, "System.UIntPtr?", "ushort?", $"System.UIntPtr System.UIntPtr.{name}(System.UIntPtr pointer, int offset)", null); 11426binaryOps(symbol, "System.UIntPtr?", "int?", $"System.UIntPtr System.UIntPtr.{name}(System.UIntPtr pointer, int offset)", null); 11427binaryOps(symbol, "System.UIntPtr?", "uint?"); 11428binaryOps(symbol, "System.UIntPtr?", "nint?"); 11429binaryOps(symbol, "System.UIntPtr?", "nuint?", $"nuint nuint.{name}(nuint left, nuint right)"); 11430binaryOps(symbol, "System.UIntPtr?", "long?"); 11431binaryOps(symbol, "System.UIntPtr?", "ulong?"); 11432binaryOps(symbol, "System.UIntPtr?", "float?"); 11433binaryOps(symbol, "System.UIntPtr?", "double?"); 11434binaryOps(symbol, "System.UIntPtr?", "decimal?"); 11435binaryOps(symbol, "System.UIntPtr?", "System.IntPtr?"); 11436binaryOps(symbol, "System.UIntPtr?", "System.UIntPtr?"); 11441binaryOps(symbol, "nint", "object"); 11442binaryOps(symbol, "nint", "string"); 11443binaryOps(symbol, "nint", "void*", null, null, getBadBinaryOpsDiagnostics(symbol, "nint", "void*", includeVoidError: true), getBadBinaryOpsDiagnostics(symbol, "void*", "nint", includeVoidError: true)); 11444binaryOps(symbol, "nint", "bool"); 11445binaryOps(symbol, "nint", "char", $"nint nint.{name}(nint left, int right)", null); 11446binaryOps(symbol, "nint", "sbyte", $"nint nint.{name}(nint left, int right)", null); 11447binaryOps(symbol, "nint", "byte", $"nint nint.{name}(nint left, int right)", null); 11448binaryOps(symbol, "nint", "short", $"nint nint.{name}(nint left, int right)", null); 11449binaryOps(symbol, "nint", "ushort", $"nint nint.{name}(nint left, int right)", null); 11450binaryOps(symbol, "nint", "int", $"nint nint.{name}(nint left, int right)", null); 11451binaryOps(symbol, "nint", "uint"); 11452binaryOps(symbol, "nint", "nint"); 11453binaryOps(symbol, "nint", "nuint"); 11454binaryOps(symbol, "nint", "long"); 11455binaryOps(symbol, "nint", "ulong"); 11456binaryOps(symbol, "nint", "float"); 11457binaryOps(symbol, "nint", "double"); 11458binaryOps(symbol, "nint", "decimal"); 11459binaryOps(symbol, "nint", "System.IntPtr"); 11460binaryOps(symbol, "nint", "System.UIntPtr"); 11461binaryOps(symbol, "nint", "bool?"); 11462binaryOps(symbol, "nint", "char?", $"nint nint.{name}(nint left, int right)", null); 11463binaryOps(symbol, "nint", "sbyte?", $"nint nint.{name}(nint left, int right)", null); 11464binaryOps(symbol, "nint", "byte?", $"nint nint.{name}(nint left, int right)", null); 11465binaryOps(symbol, "nint", "short?", $"nint nint.{name}(nint left, int right)", null); 11466binaryOps(symbol, "nint", "ushort?", $"nint nint.{name}(nint left, int right)", null); 11467binaryOps(symbol, "nint", "int?", $"nint nint.{name}(nint left, int right)", null); 11468binaryOps(symbol, "nint", "uint?"); 11469binaryOps(symbol, "nint", "nint?"); 11470binaryOps(symbol, "nint", "nuint?"); 11471binaryOps(symbol, "nint", "long?"); 11472binaryOps(symbol, "nint", "ulong?"); 11473binaryOps(symbol, "nint", "float?"); 11474binaryOps(symbol, "nint", "double?"); 11475binaryOps(symbol, "nint", "decimal?"); 11476binaryOps(symbol, "nint", "System.IntPtr?"); 11477binaryOps(symbol, "nint", "System.UIntPtr?"); 11478binaryOps(symbol, "nint", "object"); 11479binaryOps(symbol, "nint?", "string"); 11480binaryOps(symbol, "nint?", "void*", null, null, getBadBinaryOpsDiagnostics(symbol, "nint?", "void*", includeVoidError: true), getBadBinaryOpsDiagnostics(symbol, "void*", "nint?", includeVoidError: true)); 11481binaryOps(symbol, "nint?", "bool"); 11482binaryOps(symbol, "nint?", "char", $"nint nint.{name}(nint left, int right)", null); 11483binaryOps(symbol, "nint?", "sbyte", $"nint nint.{name}(nint left, int right)", null); 11484binaryOps(symbol, "nint?", "byte", $"nint nint.{name}(nint left, int right)", null); 11485binaryOps(symbol, "nint?", "short", $"nint nint.{name}(nint left, int right)", null); 11486binaryOps(symbol, "nint?", "ushort", $"nint nint.{name}(nint left, int right)", null); 11487binaryOps(symbol, "nint?", "int", $"nint nint.{name}(nint left, int right)", null); 11488binaryOps(symbol, "nint?", "uint"); 11489binaryOps(symbol, "nint?", "nint"); 11490binaryOps(symbol, "nint?", "nuint"); 11491binaryOps(symbol, "nint?", "long"); 11492binaryOps(symbol, "nint?", "ulong"); 11493binaryOps(symbol, "nint?", "float"); 11494binaryOps(symbol, "nint?", "double"); 11495binaryOps(symbol, "nint?", "decimal"); 11496binaryOps(symbol, "nint?", "System.IntPtr"); 11497binaryOps(symbol, "nint?", "System.UIntPtr"); 11498binaryOps(symbol, "nint?", "bool?"); 11499binaryOps(symbol, "nint?", "char?", $"nint nint.{name}(nint left, int right)", null); 11500binaryOps(symbol, "nint?", "sbyte?", $"nint nint.{name}(nint left, int right)", null); 11501binaryOps(symbol, "nint?", "byte?", $"nint nint.{name}(nint left, int right)", null); 11502binaryOps(symbol, "nint?", "short?", $"nint nint.{name}(nint left, int right)", null); 11503binaryOps(symbol, "nint?", "ushort?", $"nint nint.{name}(nint left, int right)", null); 11504binaryOps(symbol, "nint?", "int?", $"nint nint.{name}(nint left, int right)", null); 11505binaryOps(symbol, "nint?", "uint?"); 11506binaryOps(symbol, "nint?", "nint?"); 11507binaryOps(symbol, "nint?", "nuint?"); 11508binaryOps(symbol, "nint?", "long?"); 11509binaryOps(symbol, "nint?", "ulong?"); 11510binaryOps(symbol, "nint?", "float?"); 11511binaryOps(symbol, "nint?", "double?"); 11512binaryOps(symbol, "nint?", "decimal?"); 11513binaryOps(symbol, "nint?", "System.IntPtr?"); 11514binaryOps(symbol, "nint?", "System.UIntPtr?"); 11515binaryOps(symbol, "nuint", "object"); 11516binaryOps(symbol, "nuint", "string"); 11517binaryOps(symbol, "nuint", "void*", null, null, getBadBinaryOpsDiagnostics(symbol, "nuint", "void*", includeVoidError: true), getBadBinaryOpsDiagnostics(symbol, "void*", "nuint", includeVoidError: true)); 11518binaryOps(symbol, "nuint", "bool"); 11519binaryOps(symbol, "nuint", "char", $"nuint nuint.{name}(nuint left, int right)", null); 11520binaryOps(symbol, "nuint", "sbyte", $"nuint nuint.{name}(nuint left, int right)", null); 11521binaryOps(symbol, "nuint", "byte", $"nuint nuint.{name}(nuint left, int right)", null); 11522binaryOps(symbol, "nuint", "short", $"nuint nuint.{name}(nuint left, int right)", null); 11523binaryOps(symbol, "nuint", "ushort", $"nuint nuint.{name}(nuint left, int right)", null); 11524binaryOps(symbol, "nuint", "int", $"nuint nuint.{name}(nuint left, int right)", null); 11525binaryOps(symbol, "nuint", "uint"); 11526binaryOps(symbol, "nuint", "nint"); 11527binaryOps(symbol, "nuint", "nuint"); 11528binaryOps(symbol, "nuint", "long"); 11529binaryOps(symbol, "nuint", "ulong"); 11530binaryOps(symbol, "nuint", "float"); 11531binaryOps(symbol, "nuint", "double"); 11532binaryOps(symbol, "nuint", "decimal"); 11533binaryOps(symbol, "nuint", "System.IntPtr"); 11534binaryOps(symbol, "nuint", "System.UIntPtr"); 11535binaryOps(symbol, "nuint", "bool?"); 11536binaryOps(symbol, "nuint", "char?", $"nuint nuint.{name}(nuint left, int right)", null); 11537binaryOps(symbol, "nuint", "sbyte?", $"nuint nuint.{name}(nuint left, int right)", null); 11538binaryOps(symbol, "nuint", "byte?", $"nuint nuint.{name}(nuint left, int right)", null); 11539binaryOps(symbol, "nuint", "short?", $"nuint nuint.{name}(nuint left, int right)", null); 11540binaryOps(symbol, "nuint", "ushort?", $"nuint nuint.{name}(nuint left, int right)", null); 11541binaryOps(symbol, "nuint", "int?", $"nuint nuint.{name}(nuint left, int right)", null); 11542binaryOps(symbol, "nuint", "uint?"); 11543binaryOps(symbol, "nuint", "nint?"); 11544binaryOps(symbol, "nuint", "nuint?"); 11545binaryOps(symbol, "nuint", "long?"); 11546binaryOps(symbol, "nuint", "ulong?"); 11547binaryOps(symbol, "nuint", "float?"); 11548binaryOps(symbol, "nuint", "double?"); 11549binaryOps(symbol, "nuint", "decimal?"); 11550binaryOps(symbol, "nuint", "System.IntPtr?"); 11551binaryOps(symbol, "nuint", "System.UIntPtr?"); 11552binaryOps(symbol, "nuint?", "object"); 11553binaryOps(symbol, "nuint?", "string"); 11554binaryOps(symbol, "nuint?", "void*", null, null, getBadBinaryOpsDiagnostics(symbol, "nuint?", "void*", includeVoidError: true), getBadBinaryOpsDiagnostics(symbol, "void*", "nuint?", includeVoidError: true)); 11555binaryOps(symbol, "nuint?", "bool"); 11556binaryOps(symbol, "nuint?", "char", $"nuint nuint.{name}(nuint left, int right)", null); 11557binaryOps(symbol, "nuint?", "sbyte", $"nuint nuint.{name}(nuint left, int right)", null); 11558binaryOps(symbol, "nuint?", "byte", $"nuint nuint.{name}(nuint left, int right)", null); 11559binaryOps(symbol, "nuint?", "short", $"nuint nuint.{name}(nuint left, int right)", null); 11560binaryOps(symbol, "nuint?", "ushort", $"nuint nuint.{name}(nuint left, int right)", null); 11561binaryOps(symbol, "nuint?", "int", $"nuint nuint.{name}(nuint left, int right)", null); 11562binaryOps(symbol, "nuint?", "uint"); 11563binaryOps(symbol, "nuint?", "nint"); 11564binaryOps(symbol, "nuint?", "nuint"); 11565binaryOps(symbol, "nuint?", "long"); 11566binaryOps(symbol, "nuint?", "ulong"); 11567binaryOps(symbol, "nuint?", "float"); 11568binaryOps(symbol, "nuint?", "double"); 11569binaryOps(symbol, "nuint?", "decimal"); 11570binaryOps(symbol, "nuint?", "System.IntPtr"); 11571binaryOps(symbol, "nuint?", "System.UIntPtr"); 11572binaryOps(symbol, "nuint?", "bool?"); 11573binaryOps(symbol, "nuint?", "char?", $"nuint nuint.{name}(nuint left, int right)", null); 11574binaryOps(symbol, "nuint?", "sbyte?", $"nuint nuint.{name}(nuint left, int right)", null); 11575binaryOps(symbol, "nuint?", "byte?", $"nuint nuint.{name}(nuint left, int right)", null); 11576binaryOps(symbol, "nuint?", "short?", $"nuint nuint.{name}(nuint left, int right)", null); 11577binaryOps(symbol, "nuint?", "ushort?", $"nuint nuint.{name}(nuint left, int right)", null); 11578binaryOps(symbol, "nuint?", "int?", $"nuint nuint.{name}(nuint left, int right)", null); 11579binaryOps(symbol, "nuint?", "uint?"); 11580binaryOps(symbol, "nuint?", "nint?"); 11581binaryOps(symbol, "nuint?", "nuint?"); 11582binaryOps(symbol, "nuint?", "long?"); 11583binaryOps(symbol, "nuint?", "ulong?"); 11584binaryOps(symbol, "nuint?", "float?"); 11585binaryOps(symbol, "nuint?", "double?"); 11586binaryOps(symbol, "nuint?", "decimal?"); 11587binaryOps(symbol, "nuint?", "System.IntPtr?"); 11588binaryOps(symbol, "nuint?", "System.UIntPtr?"); 11589binaryOps(symbol, "System.IntPtr", "object"); 11590binaryOps(symbol, "System.IntPtr", "string"); 11591binaryOps(symbol, "System.IntPtr", "void*", null, null, getBadBinaryOpsDiagnostics(symbol, "System.IntPtr", "void*", includeVoidError: true), getBadBinaryOpsDiagnostics(symbol, "void*", "System.IntPtr", includeVoidError: true)); 11592binaryOps(symbol, "System.IntPtr", "bool"); 11593binaryOps(symbol, "System.IntPtr", "char"); 11594binaryOps(symbol, "System.IntPtr", "sbyte"); 11595binaryOps(symbol, "System.IntPtr", "byte"); 11596binaryOps(symbol, "System.IntPtr", "short"); 11597binaryOps(symbol, "System.IntPtr", "ushort"); 11598binaryOps(symbol, "System.IntPtr", "int"); 11599binaryOps(symbol, "System.IntPtr", "uint"); 11600binaryOps(symbol, "System.IntPtr", "nint"); 11601binaryOps(symbol, "System.IntPtr", "nuint"); 11602binaryOps(symbol, "System.IntPtr", "long"); 11603binaryOps(symbol, "System.IntPtr", "ulong"); 11604binaryOps(symbol, "System.IntPtr", "float"); 11605binaryOps(symbol, "System.IntPtr", "double"); 11606binaryOps(symbol, "System.IntPtr", "decimal"); 11607binaryOps(symbol, "System.IntPtr", "System.IntPtr"); 11608binaryOps(symbol, "System.IntPtr", "System.UIntPtr"); 11609binaryOps(symbol, "System.IntPtr", "bool?"); 11610binaryOps(symbol, "System.IntPtr", "char?"); 11611binaryOps(symbol, "System.IntPtr", "sbyte?"); 11612binaryOps(symbol, "System.IntPtr", "byte?"); 11613binaryOps(symbol, "System.IntPtr", "short?"); 11614binaryOps(symbol, "System.IntPtr", "ushort?"); 11615binaryOps(symbol, "System.IntPtr", "int?"); 11616binaryOps(symbol, "System.IntPtr", "uint?"); 11617binaryOps(symbol, "System.IntPtr", "nint?"); 11618binaryOps(symbol, "System.IntPtr", "nuint?"); 11619binaryOps(symbol, "System.IntPtr", "long?"); 11620binaryOps(symbol, "System.IntPtr", "ulong?"); 11621binaryOps(symbol, "System.IntPtr", "float?"); 11622binaryOps(symbol, "System.IntPtr", "double?"); 11623binaryOps(symbol, "System.IntPtr", "decimal?"); 11624binaryOps(symbol, "System.IntPtr", "System.IntPtr?"); 11625binaryOps(symbol, "System.IntPtr", "System.UIntPtr?"); 11626binaryOps(symbol, "System.IntPtr", "object"); 11627binaryOps(symbol, "System.IntPtr?", "string"); 11628binaryOps(symbol, "System.IntPtr?", "void*", null, null, getBadBinaryOpsDiagnostics(symbol, "System.IntPtr?", "void*", includeVoidError: true), getBadBinaryOpsDiagnostics(symbol, "void*", "System.IntPtr?", includeVoidError: true)); 11629binaryOps(symbol, "System.IntPtr?", "bool"); 11630binaryOps(symbol, "System.IntPtr?", "char"); 11631binaryOps(symbol, "System.IntPtr?", "sbyte"); 11632binaryOps(symbol, "System.IntPtr?", "byte"); 11633binaryOps(symbol, "System.IntPtr?", "short"); 11634binaryOps(symbol, "System.IntPtr?", "ushort"); 11635binaryOps(symbol, "System.IntPtr?", "int"); 11636binaryOps(symbol, "System.IntPtr?", "uint"); 11637binaryOps(symbol, "System.IntPtr?", "nint"); 11638binaryOps(symbol, "System.IntPtr?", "nuint"); 11639binaryOps(symbol, "System.IntPtr?", "long"); 11640binaryOps(symbol, "System.IntPtr?", "ulong"); 11641binaryOps(symbol, "System.IntPtr?", "float"); 11642binaryOps(symbol, "System.IntPtr?", "double"); 11643binaryOps(symbol, "System.IntPtr?", "decimal"); 11644binaryOps(symbol, "System.IntPtr?", "System.IntPtr"); 11645binaryOps(symbol, "System.IntPtr?", "System.UIntPtr"); 11646binaryOps(symbol, "System.IntPtr?", "bool?"); 11647binaryOps(symbol, "System.IntPtr?", "char?"); 11648binaryOps(symbol, "System.IntPtr?", "sbyte?"); 11649binaryOps(symbol, "System.IntPtr?", "byte?"); 11650binaryOps(symbol, "System.IntPtr?", "short?"); 11651binaryOps(symbol, "System.IntPtr?", "ushort?"); 11652binaryOps(symbol, "System.IntPtr?", "int?"); 11653binaryOps(symbol, "System.IntPtr?", "uint?"); 11654binaryOps(symbol, "System.IntPtr?", "nint?"); 11655binaryOps(symbol, "System.IntPtr?", "nuint?"); 11656binaryOps(symbol, "System.IntPtr?", "long?"); 11657binaryOps(symbol, "System.IntPtr?", "ulong?"); 11658binaryOps(symbol, "System.IntPtr?", "float?"); 11659binaryOps(symbol, "System.IntPtr?", "double?"); 11660binaryOps(symbol, "System.IntPtr?", "decimal?"); 11661binaryOps(symbol, "System.IntPtr?", "System.IntPtr?"); 11662binaryOps(symbol, "System.IntPtr?", "System.UIntPtr?"); 11663binaryOps(symbol, "System.UIntPtr", "object"); 11664binaryOps(symbol, "System.UIntPtr", "string"); 11665binaryOps(symbol, "System.UIntPtr", "void*", null, null, getBadBinaryOpsDiagnostics(symbol, "System.UIntPtr", "void*", includeVoidError: true), getBadBinaryOpsDiagnostics(symbol, "void*", "System.UIntPtr", includeVoidError: true)); 11666binaryOps(symbol, "System.UIntPtr", "bool"); 11667binaryOps(symbol, "System.UIntPtr", "char"); 11668binaryOps(symbol, "System.UIntPtr", "sbyte"); 11669binaryOps(symbol, "System.UIntPtr", "byte"); 11670binaryOps(symbol, "System.UIntPtr", "short"); 11671binaryOps(symbol, "System.UIntPtr", "ushort"); 11672binaryOps(symbol, "System.UIntPtr", "int"); 11673binaryOps(symbol, "System.UIntPtr", "uint"); 11674binaryOps(symbol, "System.UIntPtr", "nint"); 11675binaryOps(symbol, "System.UIntPtr", "nuint"); 11676binaryOps(symbol, "System.UIntPtr", "long"); 11677binaryOps(symbol, "System.UIntPtr", "ulong"); 11678binaryOps(symbol, "System.UIntPtr", "float"); 11679binaryOps(symbol, "System.UIntPtr", "double"); 11680binaryOps(symbol, "System.UIntPtr", "decimal"); 11681binaryOps(symbol, "System.UIntPtr", "System.IntPtr"); 11682binaryOps(symbol, "System.UIntPtr", "System.UIntPtr"); 11683binaryOps(symbol, "System.UIntPtr", "bool?"); 11684binaryOps(symbol, "System.UIntPtr", "char?"); 11685binaryOps(symbol, "System.UIntPtr", "sbyte?"); 11686binaryOps(symbol, "System.UIntPtr", "byte?"); 11687binaryOps(symbol, "System.UIntPtr", "short?"); 11688binaryOps(symbol, "System.UIntPtr", "ushort?"); 11689binaryOps(symbol, "System.UIntPtr", "int?"); 11690binaryOps(symbol, "System.UIntPtr", "uint?"); 11691binaryOps(symbol, "System.UIntPtr", "nint?"); 11692binaryOps(symbol, "System.UIntPtr", "nuint?"); 11693binaryOps(symbol, "System.UIntPtr", "long?"); 11694binaryOps(symbol, "System.UIntPtr", "ulong?"); 11695binaryOps(symbol, "System.UIntPtr", "float?"); 11696binaryOps(symbol, "System.UIntPtr", "double?"); 11697binaryOps(symbol, "System.UIntPtr", "decimal?"); 11698binaryOps(symbol, "System.UIntPtr", "System.IntPtr?"); 11699binaryOps(symbol, "System.UIntPtr", "System.UIntPtr?"); 11700binaryOps(symbol, "System.UIntPtr", "object"); 11701binaryOps(symbol, "System.UIntPtr?", "string"); 11702binaryOps(symbol, "System.UIntPtr?", "void*", null, null, getBadBinaryOpsDiagnostics(symbol, "System.UIntPtr?", "void*", includeVoidError: true), getBadBinaryOpsDiagnostics(symbol, "void*", "System.UIntPtr?", includeVoidError: true)); 11703binaryOps(symbol, "System.UIntPtr?", "bool"); 11704binaryOps(symbol, "System.UIntPtr?", "char"); 11705binaryOps(symbol, "System.UIntPtr?", "sbyte"); 11706binaryOps(symbol, "System.UIntPtr?", "byte"); 11707binaryOps(symbol, "System.UIntPtr?", "short"); 11708binaryOps(symbol, "System.UIntPtr?", "ushort"); 11709binaryOps(symbol, "System.UIntPtr?", "int"); 11710binaryOps(symbol, "System.UIntPtr?", "uint"); 11711binaryOps(symbol, "System.UIntPtr?", "nint"); 11712binaryOps(symbol, "System.UIntPtr?", "nuint"); 11713binaryOps(symbol, "System.UIntPtr?", "long"); 11714binaryOps(symbol, "System.UIntPtr?", "ulong"); 11715binaryOps(symbol, "System.UIntPtr?", "float"); 11716binaryOps(symbol, "System.UIntPtr?", "double"); 11717binaryOps(symbol, "System.UIntPtr?", "decimal"); 11718binaryOps(symbol, "System.UIntPtr?", "System.IntPtr"); 11719binaryOps(symbol, "System.UIntPtr?", "System.UIntPtr"); 11720binaryOps(symbol, "System.UIntPtr?", "bool?"); 11721binaryOps(symbol, "System.UIntPtr?", "char?"); 11722binaryOps(symbol, "System.UIntPtr?", "sbyte?"); 11723binaryOps(symbol, "System.UIntPtr?", "byte?"); 11724binaryOps(symbol, "System.UIntPtr?", "short?"); 11725binaryOps(symbol, "System.UIntPtr?", "ushort?"); 11726binaryOps(symbol, "System.UIntPtr?", "int?"); 11727binaryOps(symbol, "System.UIntPtr?", "uint?"); 11728binaryOps(symbol, "System.UIntPtr?", "nint?"); 11729binaryOps(symbol, "System.UIntPtr?", "nuint?"); 11730binaryOps(symbol, "System.UIntPtr?", "long?"); 11731binaryOps(symbol, "System.UIntPtr?", "ulong?"); 11732binaryOps(symbol, "System.UIntPtr?", "float?"); 11733binaryOps(symbol, "System.UIntPtr?", "double?"); 11734binaryOps(symbol, "System.UIntPtr?", "decimal?"); 11735binaryOps(symbol, "System.UIntPtr?", "System.IntPtr?"); 11736binaryOps(symbol, "System.UIntPtr?", "System.UIntPtr?"); 11741binaryOps(symbol, "nint", "object"); 11742binaryOps(symbol, "nint", "string"); 11743binaryOps(symbol, "nint", "void*", null, null, getBadBinaryOpsDiagnostics(symbol, "nint", "void*"), getBadBinaryOpsDiagnostics(symbol, "void*", "nint")); 11744binaryOps(symbol, "nint", "bool"); 11745binaryOps(symbol, "nint", "char", $"bool nint.{name}(nint left, nint right)"); 11746binaryOps(symbol, "nint", "sbyte", $"bool nint.{name}(nint left, nint right)"); 11747binaryOps(symbol, "nint", "byte", $"bool nint.{name}(nint left, nint right)"); 11748binaryOps(symbol, "nint", "short", $"bool nint.{name}(nint left, nint right)"); 11749binaryOps(symbol, "nint", "ushort", $"bool nint.{name}(nint left, nint right)"); 11750binaryOps(symbol, "nint", "int", $"bool nint.{name}(nint left, nint right)"); 11751binaryOps(symbol, "nint", "uint", $"bool long.{name}(long left, long right)"); 11752binaryOps(symbol, "nint", "nint", $"bool nint.{name}(nint left, nint right)"); 11753binaryOps(symbol, "nint", "nuint", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nint", "nuint"), getAmbiguousBinaryOpsDiagnostics(symbol, "nuint", "nint")); 11754binaryOps(symbol, "nint", "long", $"bool long.{name}(long left, long right)"); 11755binaryOps(symbol, "nint", "ulong", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nint", "ulong"), getAmbiguousBinaryOpsDiagnostics(symbol, "ulong", "nint")); 11756binaryOps(symbol, "nint", "float", $"bool float.{name}(float left, float right)"); 11757binaryOps(symbol, "nint", "double", $"bool double.{name}(double left, double right)"); 11758binaryOps(symbol, "nint", "decimal", $"bool decimal.{name}(decimal left, decimal right)"); 11759binaryOps(symbol, "nint", "System.IntPtr", $"bool System.IntPtr.{name}(System.IntPtr value1, System.IntPtr value2)"); 11760binaryOps(symbol, "nint", "System.UIntPtr"); 11761binaryOps(symbol, "nint", "bool?"); 11762binaryOps(symbol, "nint", "char?", $"bool nint.{name}(nint left, nint right)"); 11763binaryOps(symbol, "nint", "sbyte?", $"bool nint.{name}(nint left, nint right)"); 11764binaryOps(symbol, "nint", "byte?", $"bool nint.{name}(nint left, nint right)"); 11765binaryOps(symbol, "nint", "short?", $"bool nint.{name}(nint left, nint right)"); 11766binaryOps(symbol, "nint", "ushort?", $"bool nint.{name}(nint left, nint right)"); 11767binaryOps(symbol, "nint", "int?", $"bool nint.{name}(nint left, nint right)"); 11768binaryOps(symbol, "nint", "uint?", $"bool long.{name}(long left, long right)"); 11769binaryOps(symbol, "nint", "nint?", $"bool nint.{name}(nint left, nint right)"); 11770binaryOps(symbol, "nint", "nuint?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nint", "nuint?"), getAmbiguousBinaryOpsDiagnostics(symbol, "nuint?", "nint")); 11771binaryOps(symbol, "nint", "long?", $"bool long.{name}(long left, long right)"); 11772binaryOps(symbol, "nint", "ulong?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nint", "ulong?"), getAmbiguousBinaryOpsDiagnostics(symbol, "ulong?", "nint")); 11773binaryOps(symbol, "nint", "float?", $"bool float.{name}(float left, float right)"); 11774binaryOps(symbol, "nint", "double?", $"bool double.{name}(double left, double right)"); 11775binaryOps(symbol, "nint", "decimal?", $"bool decimal.{name}(decimal left, decimal right)"); 11776binaryOps(symbol, "nint", "System.IntPtr?", $"bool System.IntPtr.{name}(System.IntPtr value1, System.IntPtr value2)"); 11777binaryOps(symbol, "nint", "System.UIntPtr?"); 11778binaryOps(symbol, "nint", "object"); 11779binaryOps(symbol, "nint?", "string"); 11780binaryOps(symbol, "nint?", "void*", null, null, getBadBinaryOpsDiagnostics(symbol, "nint?", "void*"), getBadBinaryOpsDiagnostics(symbol, "void*", "nint?")); 11781binaryOps(symbol, "nint?", "bool"); 11782binaryOps(symbol, "nint?", "char", $"bool nint.{name}(nint left, nint right)"); 11783binaryOps(symbol, "nint?", "sbyte", $"bool nint.{name}(nint left, nint right)"); 11784binaryOps(symbol, "nint?", "byte", $"bool nint.{name}(nint left, nint right)"); 11785binaryOps(symbol, "nint?", "short", $"bool nint.{name}(nint left, nint right)"); 11786binaryOps(symbol, "nint?", "ushort", $"bool nint.{name}(nint left, nint right)"); 11787binaryOps(symbol, "nint?", "int", $"bool nint.{name}(nint left, nint right)"); 11788binaryOps(symbol, "nint?", "uint", $"bool long.{name}(long left, long right)"); 11789binaryOps(symbol, "nint?", "nint", $"bool nint.{name}(nint left, nint right)"); 11790binaryOps(symbol, "nint?", "nuint", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nint?", "nuint"), getAmbiguousBinaryOpsDiagnostics(symbol, "nuint", "nint?")); 11791binaryOps(symbol, "nint?", "long", $"bool long.{name}(long left, long right)"); 11792binaryOps(symbol, "nint?", "ulong", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nint?", "ulong"), getAmbiguousBinaryOpsDiagnostics(symbol, "ulong", "nint?")); 11793binaryOps(symbol, "nint?", "float", $"bool float.{name}(float left, float right)"); 11794binaryOps(symbol, "nint?", "double", $"bool double.{name}(double left, double right)"); 11795binaryOps(symbol, "nint?", "decimal", $"bool decimal.{name}(decimal left, decimal right)"); 11796binaryOps(symbol, "nint?", "System.IntPtr", $"bool System.IntPtr.{name}(System.IntPtr value1, System.IntPtr value2)"); 11797binaryOps(symbol, "nint?", "System.UIntPtr"); 11798binaryOps(symbol, "nint?", "bool?"); 11799binaryOps(symbol, "nint?", "char?", $"bool nint.{name}(nint left, nint right)"); 11800binaryOps(symbol, "nint?", "sbyte?", $"bool nint.{name}(nint left, nint right)"); 11801binaryOps(symbol, "nint?", "byte?", $"bool nint.{name}(nint left, nint right)"); 11802binaryOps(symbol, "nint?", "short?", $"bool nint.{name}(nint left, nint right)"); 11803binaryOps(symbol, "nint?", "ushort?", $"bool nint.{name}(nint left, nint right)"); 11804binaryOps(symbol, "nint?", "int?", $"bool nint.{name}(nint left, nint right)"); 11805binaryOps(symbol, "nint?", "uint?", $"bool long.{name}(long left, long right)"); 11806binaryOps(symbol, "nint?", "nint?", $"bool nint.{name}(nint left, nint right)"); 11807binaryOps(symbol, "nint?", "nuint?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nint?", "nuint?"), getAmbiguousBinaryOpsDiagnostics(symbol, "nuint?", "nint?")); 11808binaryOps(symbol, "nint?", "long?", $"bool long.{name}(long left, long right)"); 11809binaryOps(symbol, "nint?", "ulong?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nint?", "ulong?"), getAmbiguousBinaryOpsDiagnostics(symbol, "ulong?", "nint?")); 11810binaryOps(symbol, "nint?", "float?", $"bool float.{name}(float left, float right)"); 11811binaryOps(symbol, "nint?", "double?", $"bool double.{name}(double left, double right)"); 11812binaryOps(symbol, "nint?", "decimal?", $"bool decimal.{name}(decimal left, decimal right)"); 11813binaryOps(symbol, "nint?", "System.IntPtr?", $"bool System.IntPtr.{name}(System.IntPtr value1, System.IntPtr value2)"); 11814binaryOps(symbol, "nint?", "System.UIntPtr?"); 11815binaryOps(symbol, "nuint", "object"); 11816binaryOps(symbol, "nuint", "string"); 11817binaryOps(symbol, "nuint", "void*", null, null, getBadBinaryOpsDiagnostics(symbol, "nuint", "void*"), getBadBinaryOpsDiagnostics(symbol, "void*", "nuint")); 11818binaryOps(symbol, "nuint", "bool"); 11819binaryOps(symbol, "nuint", "char", $"bool nuint.{name}(nuint left, nuint right)"); 11820binaryOps(symbol, "nuint", "sbyte", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint", "sbyte"), getAmbiguousBinaryOpsDiagnostics(symbol, "sbyte", "nuint")); 11821binaryOps(symbol, "nuint", "byte", $"bool nuint.{name}(nuint left, nuint right)"); 11822binaryOps(symbol, "nuint", "short", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint", "short"), getAmbiguousBinaryOpsDiagnostics(symbol, "short", "nuint")); 11823binaryOps(symbol, "nuint", "ushort", $"bool nuint.{name}(nuint left, nuint right)"); 11824binaryOps(symbol, "nuint", "int", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint", "int"), getAmbiguousBinaryOpsDiagnostics(symbol, "int", "nuint")); 11825binaryOps(symbol, "nuint", "uint", $"bool nuint.{name}(nuint left, nuint right)"); 11826binaryOps(symbol, "nuint", "nint", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint", "nint"), getAmbiguousBinaryOpsDiagnostics(symbol, "nint", "nuint")); 11827binaryOps(symbol, "nuint", "nuint", $"bool nuint.{name}(nuint left, nuint right)"); 11828binaryOps(symbol, "nuint", "long", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint", "long"), getAmbiguousBinaryOpsDiagnostics(symbol, "long", "nuint")); 11829binaryOps(symbol, "nuint", "ulong", $"bool ulong.{name}(ulong left, ulong right)"); 11830binaryOps(symbol, "nuint", "float", $"bool float.{name}(float left, float right)"); 11831binaryOps(symbol, "nuint", "double", $"bool double.{name}(double left, double right)"); 11832binaryOps(symbol, "nuint", "decimal", $"bool decimal.{name}(decimal left, decimal right)"); 11833binaryOps(symbol, "nuint", "System.IntPtr"); 11834binaryOps(symbol, "nuint", "System.UIntPtr", $"bool System.UIntPtr.{name}(System.UIntPtr value1, System.UIntPtr value2)"); 11835binaryOps(symbol, "nuint", "bool?"); 11836binaryOps(symbol, "nuint", "char?", $"bool nuint.{name}(nuint left, nuint right)"); 11837binaryOps(symbol, "nuint", "sbyte?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint", "sbyte?"), getAmbiguousBinaryOpsDiagnostics(symbol, "sbyte?", "nuint")); 11838binaryOps(symbol, "nuint", "byte?", $"bool nuint.{name}(nuint left, nuint right)"); 11839binaryOps(symbol, "nuint", "short?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint", "short?"), getAmbiguousBinaryOpsDiagnostics(symbol, "short?", "nuint")); 11840binaryOps(symbol, "nuint", "ushort?", $"bool nuint.{name}(nuint left, nuint right)"); 11841binaryOps(symbol, "nuint", "int?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint", "int?"), getAmbiguousBinaryOpsDiagnostics(symbol, "int?", "nuint")); 11842binaryOps(symbol, "nuint", "uint?", $"bool nuint.{name}(nuint left, nuint right)"); 11843binaryOps(symbol, "nuint", "nint?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint", "nint?"), getAmbiguousBinaryOpsDiagnostics(symbol, "nint?", "nuint")); 11844binaryOps(symbol, "nuint", "nuint?", $"bool nuint.{name}(nuint left, nuint right)"); 11845binaryOps(symbol, "nuint", "long?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint", "long?"), getAmbiguousBinaryOpsDiagnostics(symbol, "long?", "nuint")); 11846binaryOps(symbol, "nuint", "ulong?", $"bool ulong.{name}(ulong left, ulong right)"); 11847binaryOps(symbol, "nuint", "float?", $"bool float.{name}(float left, float right)"); 11848binaryOps(symbol, "nuint", "double?", $"bool double.{name}(double left, double right)"); 11849binaryOps(symbol, "nuint", "decimal?", $"bool decimal.{name}(decimal left, decimal right)"); 11850binaryOps(symbol, "nuint", "System.IntPtr?"); 11851binaryOps(symbol, "nuint", "System.UIntPtr?", $"bool System.UIntPtr.{name}(System.UIntPtr value1, System.UIntPtr value2)"); 11852binaryOps(symbol, "nuint?", "object"); 11853binaryOps(symbol, "nuint?", "string"); 11854binaryOps(symbol, "nuint?", "void*", null, null, getBadBinaryOpsDiagnostics(symbol, "nuint?", "void*"), getBadBinaryOpsDiagnostics(symbol, "void*", "nuint?")); 11855binaryOps(symbol, "nuint?", "bool"); 11856binaryOps(symbol, "nuint?", "char", $"bool nuint.{name}(nuint left, nuint right)"); 11857binaryOps(symbol, "nuint?", "sbyte", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint?", "sbyte"), getAmbiguousBinaryOpsDiagnostics(symbol, "sbyte", "nuint?")); 11858binaryOps(symbol, "nuint?", "byte", $"bool nuint.{name}(nuint left, nuint right)"); 11859binaryOps(symbol, "nuint?", "short", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint?", "short"), getAmbiguousBinaryOpsDiagnostics(symbol, "short", "nuint?")); 11860binaryOps(symbol, "nuint?", "ushort", $"bool nuint.{name}(nuint left, nuint right)"); 11861binaryOps(symbol, "nuint?", "int", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint?", "int"), getAmbiguousBinaryOpsDiagnostics(symbol, "int", "nuint?")); 11862binaryOps(symbol, "nuint?", "uint", $"bool nuint.{name}(nuint left, nuint right)"); 11863binaryOps(symbol, "nuint?", "nint", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint?", "nint"), getAmbiguousBinaryOpsDiagnostics(symbol, "nint", "nuint?")); 11864binaryOps(symbol, "nuint?", "nuint", $"bool nuint.{name}(nuint left, nuint right)"); 11865binaryOps(symbol, "nuint?", "long", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint?", "long"), getAmbiguousBinaryOpsDiagnostics(symbol, "long", "nuint?")); 11866binaryOps(symbol, "nuint?", "ulong", $"bool ulong.{name}(ulong left, ulong right)"); 11867binaryOps(symbol, "nuint?", "float", $"bool float.{name}(float left, float right)"); 11868binaryOps(symbol, "nuint?", "double", $"bool double.{name}(double left, double right)"); 11869binaryOps(symbol, "nuint?", "decimal", $"bool decimal.{name}(decimal left, decimal right)"); 11870binaryOps(symbol, "nuint?", "System.IntPtr"); 11871binaryOps(symbol, "nuint?", "System.UIntPtr", $"bool System.UIntPtr.{name}(System.UIntPtr value1, System.UIntPtr value2)"); 11872binaryOps(symbol, "nuint?", "bool?"); 11873binaryOps(symbol, "nuint?", "char?", $"bool nuint.{name}(nuint left, nuint right)"); 11874binaryOps(symbol, "nuint?", "sbyte?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint?", "sbyte?"), getAmbiguousBinaryOpsDiagnostics(symbol, "sbyte?", "nuint?")); 11875binaryOps(symbol, "nuint?", "byte?", $"bool nuint.{name}(nuint left, nuint right)"); 11876binaryOps(symbol, "nuint?", "short?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint?", "short?"), getAmbiguousBinaryOpsDiagnostics(symbol, "short?", "nuint?")); 11877binaryOps(symbol, "nuint?", "ushort?", $"bool nuint.{name}(nuint left, nuint right)"); 11878binaryOps(symbol, "nuint?", "int?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint?", "int?"), getAmbiguousBinaryOpsDiagnostics(symbol, "int?", "nuint?")); 11879binaryOps(symbol, "nuint?", "uint?", $"bool nuint.{name}(nuint left, nuint right)"); 11880binaryOps(symbol, "nuint?", "nint?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint?", "nint?"), getAmbiguousBinaryOpsDiagnostics(symbol, "nint?", "nuint?")); 11881binaryOps(symbol, "nuint?", "nuint?", $"bool nuint.{name}(nuint left, nuint right)"); 11882binaryOps(symbol, "nuint?", "long?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint?", "long?"), getAmbiguousBinaryOpsDiagnostics(symbol, "long?", "nuint?")); 11883binaryOps(symbol, "nuint?", "ulong?", $"bool ulong.{name}(ulong left, ulong right)"); 11884binaryOps(symbol, "nuint?", "float?", $"bool float.{name}(float left, float right)"); 11885binaryOps(symbol, "nuint?", "double?", $"bool double.{name}(double left, double right)"); 11886binaryOps(symbol, "nuint?", "decimal?", $"bool decimal.{name}(decimal left, decimal right)"); 11887binaryOps(symbol, "nuint?", "System.IntPtr?"); 11888binaryOps(symbol, "nuint?", "System.UIntPtr?", $"bool System.UIntPtr.{name}(System.UIntPtr value1, System.UIntPtr value2)"); 11889binaryOps(symbol, "System.IntPtr", "object"); 11890binaryOps(symbol, "System.IntPtr", "string"); 11891binaryOps(symbol, "System.IntPtr", "void*"); 11892binaryOps(symbol, "System.IntPtr", "bool"); 11893binaryOps(symbol, "System.IntPtr", "char"); 11894binaryOps(symbol, "System.IntPtr", "sbyte"); 11895binaryOps(symbol, "System.IntPtr", "byte"); 11896binaryOps(symbol, "System.IntPtr", "short"); 11897binaryOps(symbol, "System.IntPtr", "ushort"); 11898binaryOps(symbol, "System.IntPtr", "int"); 11899binaryOps(symbol, "System.IntPtr", "uint"); 11900binaryOps(symbol, "System.IntPtr", "nint", $"bool System.IntPtr.{name}(System.IntPtr value1, System.IntPtr value2)"); 11901binaryOps(symbol, "System.IntPtr", "nuint"); 11902binaryOps(symbol, "System.IntPtr", "long"); 11903binaryOps(symbol, "System.IntPtr", "ulong"); 11904binaryOps(symbol, "System.IntPtr", "float"); 11905binaryOps(symbol, "System.IntPtr", "double"); 11906binaryOps(symbol, "System.IntPtr", "decimal"); 11907binaryOps(symbol, "System.IntPtr", "System.IntPtr", $"bool System.IntPtr.{name}(System.IntPtr value1, System.IntPtr value2)"); 11908binaryOps(symbol, "System.IntPtr", "System.UIntPtr"); 11909binaryOps(symbol, "System.IntPtr", "bool?"); 11910binaryOps(symbol, "System.IntPtr", "char?"); 11911binaryOps(symbol, "System.IntPtr", "sbyte?"); 11912binaryOps(symbol, "System.IntPtr", "byte?"); 11913binaryOps(symbol, "System.IntPtr", "short?"); 11914binaryOps(symbol, "System.IntPtr", "ushort?"); 11915binaryOps(symbol, "System.IntPtr", "int?"); 11916binaryOps(symbol, "System.IntPtr", "uint?"); 11917binaryOps(symbol, "System.IntPtr", "nint?", $"bool System.IntPtr.{name}(System.IntPtr value1, System.IntPtr value2)"); 11918binaryOps(symbol, "System.IntPtr", "nuint?"); 11919binaryOps(symbol, "System.IntPtr", "long?"); 11920binaryOps(symbol, "System.IntPtr", "ulong?"); 11921binaryOps(symbol, "System.IntPtr", "float?"); 11922binaryOps(symbol, "System.IntPtr", "double?"); 11923binaryOps(symbol, "System.IntPtr", "decimal?"); 11924binaryOps(symbol, "System.IntPtr", "System.IntPtr?", $"bool System.IntPtr.{name}(System.IntPtr value1, System.IntPtr value2)"); 11925binaryOps(symbol, "System.IntPtr", "System.UIntPtr?"); 11926binaryOps(symbol, "System.IntPtr", "object"); 11927binaryOps(symbol, "System.IntPtr?", "string"); 11928binaryOps(symbol, "System.IntPtr?", "void*"); 11929binaryOps(symbol, "System.IntPtr?", "bool"); 11930binaryOps(symbol, "System.IntPtr?", "char"); 11931binaryOps(symbol, "System.IntPtr?", "sbyte"); 11932binaryOps(symbol, "System.IntPtr?", "byte"); 11933binaryOps(symbol, "System.IntPtr?", "short"); 11934binaryOps(symbol, "System.IntPtr?", "ushort"); 11935binaryOps(symbol, "System.IntPtr?", "int"); 11936binaryOps(symbol, "System.IntPtr?", "uint"); 11937binaryOps(symbol, "System.IntPtr?", "nint", $"bool System.IntPtr.{name}(System.IntPtr value1, System.IntPtr value2)"); 11938binaryOps(symbol, "System.IntPtr?", "nuint"); 11939binaryOps(symbol, "System.IntPtr?", "long"); 11940binaryOps(symbol, "System.IntPtr?", "ulong"); 11941binaryOps(symbol, "System.IntPtr?", "float"); 11942binaryOps(symbol, "System.IntPtr?", "double"); 11943binaryOps(symbol, "System.IntPtr?", "decimal"); 11944binaryOps(symbol, "System.IntPtr?", "System.IntPtr", $"bool System.IntPtr.{name}(System.IntPtr value1, System.IntPtr value2)"); 11945binaryOps(symbol, "System.IntPtr?", "System.UIntPtr"); 11946binaryOps(symbol, "System.IntPtr?", "bool?"); 11947binaryOps(symbol, "System.IntPtr?", "char?"); 11948binaryOps(symbol, "System.IntPtr?", "sbyte?"); 11949binaryOps(symbol, "System.IntPtr?", "byte?"); 11950binaryOps(symbol, "System.IntPtr?", "short?"); 11951binaryOps(symbol, "System.IntPtr?", "ushort?"); 11952binaryOps(symbol, "System.IntPtr?", "int?"); 11953binaryOps(symbol, "System.IntPtr?", "uint?"); 11954binaryOps(symbol, "System.IntPtr?", "nint?", $"bool System.IntPtr.{name}(System.IntPtr value1, System.IntPtr value2)"); 11955binaryOps(symbol, "System.IntPtr?", "nuint?"); 11956binaryOps(symbol, "System.IntPtr?", "long?"); 11957binaryOps(symbol, "System.IntPtr?", "ulong?"); 11958binaryOps(symbol, "System.IntPtr?", "float?"); 11959binaryOps(symbol, "System.IntPtr?", "double?"); 11960binaryOps(symbol, "System.IntPtr?", "decimal?"); 11961binaryOps(symbol, "System.IntPtr?", "System.IntPtr?", $"bool System.IntPtr.{name}(System.IntPtr value1, System.IntPtr value2)"); 11962binaryOps(symbol, "System.IntPtr?", "System.UIntPtr?"); 11963binaryOps(symbol, "System.UIntPtr", "object"); 11964binaryOps(symbol, "System.UIntPtr", "string"); 11965binaryOps(symbol, "System.UIntPtr", "void*"); 11966binaryOps(symbol, "System.UIntPtr", "bool"); 11967binaryOps(symbol, "System.UIntPtr", "char"); 11968binaryOps(symbol, "System.UIntPtr", "sbyte"); 11969binaryOps(symbol, "System.UIntPtr", "byte"); 11970binaryOps(symbol, "System.UIntPtr", "short"); 11971binaryOps(symbol, "System.UIntPtr", "ushort"); 11972binaryOps(symbol, "System.UIntPtr", "int"); 11973binaryOps(symbol, "System.UIntPtr", "uint"); 11974binaryOps(symbol, "System.UIntPtr", "nint"); 11975binaryOps(symbol, "System.UIntPtr", "nuint", $"bool System.UIntPtr.{name}(System.UIntPtr value1, System.UIntPtr value2)"); 11976binaryOps(symbol, "System.UIntPtr", "long"); 11977binaryOps(symbol, "System.UIntPtr", "ulong"); 11978binaryOps(symbol, "System.UIntPtr", "float"); 11979binaryOps(symbol, "System.UIntPtr", "double"); 11980binaryOps(symbol, "System.UIntPtr", "decimal"); 11981binaryOps(symbol, "System.UIntPtr", "System.IntPtr"); 11982binaryOps(symbol, "System.UIntPtr", "System.UIntPtr", $"bool System.UIntPtr.{name}(System.UIntPtr value1, System.UIntPtr value2)"); 11983binaryOps(symbol, "System.UIntPtr", "bool?"); 11984binaryOps(symbol, "System.UIntPtr", "char?"); 11985binaryOps(symbol, "System.UIntPtr", "sbyte?"); 11986binaryOps(symbol, "System.UIntPtr", "byte?"); 11987binaryOps(symbol, "System.UIntPtr", "short?"); 11988binaryOps(symbol, "System.UIntPtr", "ushort?"); 11989binaryOps(symbol, "System.UIntPtr", "int?"); 11990binaryOps(symbol, "System.UIntPtr", "uint?"); 11991binaryOps(symbol, "System.UIntPtr", "nint?"); 11992binaryOps(symbol, "System.UIntPtr", "nuint?", $"bool System.UIntPtr.{name}(System.UIntPtr value1, System.UIntPtr value2)"); 11993binaryOps(symbol, "System.UIntPtr", "long?"); 11994binaryOps(symbol, "System.UIntPtr", "ulong?"); 11995binaryOps(symbol, "System.UIntPtr", "float?"); 11996binaryOps(symbol, "System.UIntPtr", "double?"); 11997binaryOps(symbol, "System.UIntPtr", "decimal?"); 11998binaryOps(symbol, "System.UIntPtr", "System.IntPtr?"); 11999binaryOps(symbol, "System.UIntPtr", "System.UIntPtr?", $"bool System.UIntPtr.{name}(System.UIntPtr value1, System.UIntPtr value2)"); 12000binaryOps(symbol, "System.UIntPtr", "object"); 12001binaryOps(symbol, "System.UIntPtr?", "string"); 12002binaryOps(symbol, "System.UIntPtr?", "void*"); 12003binaryOps(symbol, "System.UIntPtr?", "bool"); 12004binaryOps(symbol, "System.UIntPtr?", "char"); 12005binaryOps(symbol, "System.UIntPtr?", "sbyte"); 12006binaryOps(symbol, "System.UIntPtr?", "byte"); 12007binaryOps(symbol, "System.UIntPtr?", "short"); 12008binaryOps(symbol, "System.UIntPtr?", "ushort"); 12009binaryOps(symbol, "System.UIntPtr?", "int"); 12010binaryOps(symbol, "System.UIntPtr?", "uint"); 12011binaryOps(symbol, "System.UIntPtr?", "nint"); 12012binaryOps(symbol, "System.UIntPtr?", "nuint", $"bool System.UIntPtr.{name}(System.UIntPtr value1, System.UIntPtr value2)"); 12013binaryOps(symbol, "System.UIntPtr?", "long"); 12014binaryOps(symbol, "System.UIntPtr?", "ulong"); 12015binaryOps(symbol, "System.UIntPtr?", "float"); 12016binaryOps(symbol, "System.UIntPtr?", "double"); 12017binaryOps(symbol, "System.UIntPtr?", "decimal"); 12018binaryOps(symbol, "System.UIntPtr?", "System.IntPtr"); 12019binaryOps(symbol, "System.UIntPtr?", "System.UIntPtr", $"bool System.UIntPtr.{name}(System.UIntPtr value1, System.UIntPtr value2)"); 12020binaryOps(symbol, "System.UIntPtr?", "bool?"); 12021binaryOps(symbol, "System.UIntPtr?", "char?"); 12022binaryOps(symbol, "System.UIntPtr?", "sbyte?"); 12023binaryOps(symbol, "System.UIntPtr?", "byte?"); 12024binaryOps(symbol, "System.UIntPtr?", "short?"); 12025binaryOps(symbol, "System.UIntPtr?", "ushort?"); 12026binaryOps(symbol, "System.UIntPtr?", "int?"); 12027binaryOps(symbol, "System.UIntPtr?", "uint?"); 12028binaryOps(symbol, "System.UIntPtr?", "nint?"); 12029binaryOps(symbol, "System.UIntPtr?", "nuint?", $"bool System.UIntPtr.{name}(System.UIntPtr value1, System.UIntPtr value2)"); 12030binaryOps(symbol, "System.UIntPtr?", "long?"); 12031binaryOps(symbol, "System.UIntPtr?", "ulong?"); 12032binaryOps(symbol, "System.UIntPtr?", "float?"); 12033binaryOps(symbol, "System.UIntPtr?", "double?"); 12034binaryOps(symbol, "System.UIntPtr?", "decimal?"); 12035binaryOps(symbol, "System.UIntPtr?", "System.IntPtr?"); 12036binaryOps(symbol, "System.UIntPtr?", "System.UIntPtr?", $"bool System.UIntPtr.{name}(System.UIntPtr value1, System.UIntPtr value2)"); 12041binaryOps(symbol, "nint", "object"); 12042binaryOps(symbol, "nint", "string"); 12043binaryOps(symbol, "nint", "void*", null, null, getBadBinaryOpsDiagnostics(symbol, "nint", "void*", includeVoidError: true), getBadBinaryOpsDiagnostics(symbol, "void*", "nint", includeVoidError: true)); 12044binaryOps(symbol, "nint", "bool"); 12045binaryOps(symbol, "nint", "char", $"nint nint.{name}(nint left, nint right)"); 12046binaryOps(symbol, "nint", "sbyte", $"nint nint.{name}(nint left, nint right)"); 12047binaryOps(symbol, "nint", "byte", $"nint nint.{name}(nint left, nint right)"); 12048binaryOps(symbol, "nint", "short", $"nint nint.{name}(nint left, nint right)"); 12049binaryOps(symbol, "nint", "ushort", $"nint nint.{name}(nint left, nint right)"); 12050binaryOps(symbol, "nint", "int", $"nint nint.{name}(nint left, nint right)"); 12051binaryOps(symbol, "nint", "uint", $"long long.{name}(long left, long right)"); 12052binaryOps(symbol, "nint", "nint", $"nint nint.{name}(nint left, nint right)"); 12053binaryOps(symbol, "nint", "nuint"); 12054binaryOps(symbol, "nint", "long", $"long long.{name}(long left, long right)"); 12055binaryOps(symbol, "nint", "ulong"); 12056binaryOps(symbol, "nint", "float"); 12057binaryOps(symbol, "nint", "double"); 12058binaryOps(symbol, "nint", "decimal"); 12059binaryOps(symbol, "nint", "System.IntPtr", $"nint nint.{name}(nint left, nint right)"); 12060binaryOps(symbol, "nint", "System.UIntPtr"); 12061binaryOps(symbol, "nint", "bool?"); 12062binaryOps(symbol, "nint", "char?", $"nint nint.{name}(nint left, nint right)"); 12063binaryOps(symbol, "nint", "sbyte?", $"nint nint.{name}(nint left, nint right)"); 12064binaryOps(symbol, "nint", "byte?", $"nint nint.{name}(nint left, nint right)"); 12065binaryOps(symbol, "nint", "short?", $"nint nint.{name}(nint left, nint right)"); 12066binaryOps(symbol, "nint", "ushort?", $"nint nint.{name}(nint left, nint right)"); 12067binaryOps(symbol, "nint", "int?", $"nint nint.{name}(nint left, nint right)"); 12068binaryOps(symbol, "nint", "uint?", $"long long.{name}(long left, long right)"); 12069binaryOps(symbol, "nint", "nint?", $"nint nint.{name}(nint left, nint right)"); 12070binaryOps(symbol, "nint", "nuint?"); 12071binaryOps(symbol, "nint", "long?", $"long long.{name}(long left, long right)"); 12072binaryOps(symbol, "nint", "ulong?"); 12073binaryOps(symbol, "nint", "float?"); 12074binaryOps(symbol, "nint", "double?"); 12075binaryOps(symbol, "nint", "decimal?"); 12076binaryOps(symbol, "nint", "System.IntPtr?", $"nint nint.{name}(nint left, nint right)"); 12077binaryOps(symbol, "nint", "System.UIntPtr?"); 12078binaryOps(symbol, "nint", "object"); 12079binaryOps(symbol, "nint?", "string"); 12080binaryOps(symbol, "nint?", "void*", null, null, getBadBinaryOpsDiagnostics(symbol, "nint?", "void*", includeVoidError: true), getBadBinaryOpsDiagnostics(symbol, "void*", "nint?", includeVoidError: true)); 12081binaryOps(symbol, "nint?", "bool"); 12082binaryOps(symbol, "nint?", "char", $"nint nint.{name}(nint left, nint right)"); 12083binaryOps(symbol, "nint?", "sbyte", $"nint nint.{name}(nint left, nint right)"); 12084binaryOps(symbol, "nint?", "byte", $"nint nint.{name}(nint left, nint right)"); 12085binaryOps(symbol, "nint?", "short", $"nint nint.{name}(nint left, nint right)"); 12086binaryOps(symbol, "nint?", "ushort", $"nint nint.{name}(nint left, nint right)"); 12087binaryOps(symbol, "nint?", "int", $"nint nint.{name}(nint left, nint right)"); 12088binaryOps(symbol, "nint?", "uint", $"long long.{name}(long left, long right)"); 12089binaryOps(symbol, "nint?", "nint", $"nint nint.{name}(nint left, nint right)"); 12090binaryOps(symbol, "nint?", "nuint"); 12091binaryOps(symbol, "nint?", "long", $"long long.{name}(long left, long right)"); 12092binaryOps(symbol, "nint?", "ulong"); 12093binaryOps(symbol, "nint?", "float"); 12094binaryOps(symbol, "nint?", "double"); 12095binaryOps(symbol, "nint?", "decimal"); 12096binaryOps(symbol, "nint?", "System.IntPtr", $"nint nint.{name}(nint left, nint right)"); 12097binaryOps(symbol, "nint?", "System.UIntPtr"); 12098binaryOps(symbol, "nint?", "bool?"); 12099binaryOps(symbol, "nint?", "char?", $"nint nint.{name}(nint left, nint right)"); 12100binaryOps(symbol, "nint?", "sbyte?", $"nint nint.{name}(nint left, nint right)"); 12101binaryOps(symbol, "nint?", "byte?", $"nint nint.{name}(nint left, nint right)"); 12102binaryOps(symbol, "nint?", "short?", $"nint nint.{name}(nint left, nint right)"); 12103binaryOps(symbol, "nint?", "ushort?", $"nint nint.{name}(nint left, nint right)"); 12104binaryOps(symbol, "nint?", "int?", $"nint nint.{name}(nint left, nint right)"); 12105binaryOps(symbol, "nint?", "uint?", $"long long.{name}(long left, long right)"); 12106binaryOps(symbol, "nint?", "nint?", $"nint nint.{name}(nint left, nint right)"); 12107binaryOps(symbol, "nint?", "nuint?"); 12108binaryOps(symbol, "nint?", "long?", $"long long.{name}(long left, long right)"); 12109binaryOps(symbol, "nint?", "ulong?"); 12110binaryOps(symbol, "nint?", "float?"); 12111binaryOps(symbol, "nint?", "double?"); 12112binaryOps(symbol, "nint?", "decimal?"); 12113binaryOps(symbol, "nint?", "System.IntPtr?", $"nint nint.{name}(nint left, nint right)"); 12114binaryOps(symbol, "nint?", "System.UIntPtr?"); 12115binaryOps(symbol, "nuint", "object"); 12116binaryOps(symbol, "nuint", "string"); 12117binaryOps(symbol, "nuint", "void*", null, null, getBadBinaryOpsDiagnostics(symbol, "nuint", "void*", includeVoidError: true), getBadBinaryOpsDiagnostics(symbol, "void*", "nuint", includeVoidError: true)); 12118binaryOps(symbol, "nuint", "bool"); 12119binaryOps(symbol, "nuint", "char", $"nuint nuint.{name}(nuint left, nuint right)"); 12120binaryOps(symbol, "nuint", "sbyte"); 12121binaryOps(symbol, "nuint", "byte", $"nuint nuint.{name}(nuint left, nuint right)"); 12122binaryOps(symbol, "nuint", "short"); 12123binaryOps(symbol, "nuint", "ushort", $"nuint nuint.{name}(nuint left, nuint right)"); 12124binaryOps(symbol, "nuint", "int"); 12125binaryOps(symbol, "nuint", "uint", $"nuint nuint.{name}(nuint left, nuint right)"); 12126binaryOps(symbol, "nuint", "nint"); 12127binaryOps(symbol, "nuint", "nuint", $"nuint nuint.{name}(nuint left, nuint right)"); 12128binaryOps(symbol, "nuint", "long"); 12129binaryOps(symbol, "nuint", "ulong", $"ulong ulong.{name}(ulong left, ulong right)"); 12130binaryOps(symbol, "nuint", "float"); 12131binaryOps(symbol, "nuint", "double"); 12132binaryOps(symbol, "nuint", "decimal"); 12133binaryOps(symbol, "nuint", "System.IntPtr"); 12134binaryOps(symbol, "nuint", "System.UIntPtr", $"nuint nuint.{name}(nuint left, nuint right)"); 12135binaryOps(symbol, "nuint", "bool?"); 12136binaryOps(symbol, "nuint", "char?", $"nuint nuint.{name}(nuint left, nuint right)"); 12137binaryOps(symbol, "nuint", "sbyte?"); 12138binaryOps(symbol, "nuint", "byte?", $"nuint nuint.{name}(nuint left, nuint right)"); 12139binaryOps(symbol, "nuint", "short?"); 12140binaryOps(symbol, "nuint", "ushort?", $"nuint nuint.{name}(nuint left, nuint right)"); 12141binaryOps(symbol, "nuint", "int?"); 12142binaryOps(symbol, "nuint", "uint?", $"nuint nuint.{name}(nuint left, nuint right)"); 12143binaryOps(symbol, "nuint", "nint?"); 12144binaryOps(symbol, "nuint", "nuint?", $"nuint nuint.{name}(nuint left, nuint right)"); 12145binaryOps(symbol, "nuint", "long?"); 12146binaryOps(symbol, "nuint", "ulong?", $"ulong ulong.{name}(ulong left, ulong right)"); 12147binaryOps(symbol, "nuint", "float?"); 12148binaryOps(symbol, "nuint", "double?"); 12149binaryOps(symbol, "nuint", "decimal?"); 12150binaryOps(symbol, "nuint", "System.IntPtr?"); 12151binaryOps(symbol, "nuint", "System.UIntPtr?", $"nuint nuint.{name}(nuint left, nuint right)"); 12152binaryOps(symbol, "nuint?", "object"); 12153binaryOps(symbol, "nuint?", "string"); 12154binaryOps(symbol, "nuint?", "void*", null, null, getBadBinaryOpsDiagnostics(symbol, "nuint?", "void*", includeVoidError: true), getBadBinaryOpsDiagnostics(symbol, "void*", "nuint?", includeVoidError: true)); 12155binaryOps(symbol, "nuint?", "bool"); 12156binaryOps(symbol, "nuint?", "char", $"nuint nuint.{name}(nuint left, nuint right)"); 12157binaryOps(symbol, "nuint?", "sbyte"); 12158binaryOps(symbol, "nuint?", "byte", $"nuint nuint.{name}(nuint left, nuint right)"); 12159binaryOps(symbol, "nuint?", "short"); 12160binaryOps(symbol, "nuint?", "ushort", $"nuint nuint.{name}(nuint left, nuint right)"); 12161binaryOps(symbol, "nuint?", "int"); 12162binaryOps(symbol, "nuint?", "uint", $"nuint nuint.{name}(nuint left, nuint right)"); 12163binaryOps(symbol, "nuint?", "nint"); 12164binaryOps(symbol, "nuint?", "nuint", $"nuint nuint.{name}(nuint left, nuint right)"); 12165binaryOps(symbol, "nuint?", "long"); 12166binaryOps(symbol, "nuint?", "ulong", $"ulong ulong.{name}(ulong left, ulong right)"); 12167binaryOps(symbol, "nuint?", "float"); 12168binaryOps(symbol, "nuint?", "double"); 12169binaryOps(symbol, "nuint?", "decimal"); 12170binaryOps(symbol, "nuint?", "System.IntPtr"); 12171binaryOps(symbol, "nuint?", "System.UIntPtr", $"nuint nuint.{name}(nuint left, nuint right)"); 12172binaryOps(symbol, "nuint?", "bool?"); 12173binaryOps(symbol, "nuint?", "char?", $"nuint nuint.{name}(nuint left, nuint right)"); 12174binaryOps(symbol, "nuint?", "sbyte?"); 12175binaryOps(symbol, "nuint?", "byte?", $"nuint nuint.{name}(nuint left, nuint right)"); 12176binaryOps(symbol, "nuint?", "short?"); 12177binaryOps(symbol, "nuint?", "ushort?", $"nuint nuint.{name}(nuint left, nuint right)"); 12178binaryOps(symbol, "nuint?", "int?"); 12179binaryOps(symbol, "nuint?", "uint?", $"nuint nuint.{name}(nuint left, nuint right)"); 12180binaryOps(symbol, "nuint?", "nint?"); 12181binaryOps(symbol, "nuint?", "nuint?", $"nuint nuint.{name}(nuint left, nuint right)"); 12182binaryOps(symbol, "nuint?", "long?"); 12183binaryOps(symbol, "nuint?", "ulong?", $"ulong ulong.{name}(ulong left, ulong right)"); 12184binaryOps(symbol, "nuint?", "float?"); 12185binaryOps(symbol, "nuint?", "double?"); 12186binaryOps(symbol, "nuint?", "decimal?"); 12187binaryOps(symbol, "nuint?", "System.IntPtr?"); 12188binaryOps(symbol, "nuint?", "System.UIntPtr?", $"nuint nuint.{name}(nuint left, nuint right)"); 12189binaryOps(symbol, "System.IntPtr", "object"); 12190binaryOps(symbol, "System.IntPtr", "string"); 12191binaryOps(symbol, "System.IntPtr", "void*", null, null, getBadBinaryOpsDiagnostics(symbol, "System.IntPtr", "void*", includeVoidError: true), getBadBinaryOpsDiagnostics(symbol, "void*", "System.IntPtr", includeVoidError: true)); 12192binaryOps(symbol, "System.IntPtr", "bool"); 12193binaryOps(symbol, "System.IntPtr", "char"); 12194binaryOps(symbol, "System.IntPtr", "sbyte"); 12195binaryOps(symbol, "System.IntPtr", "byte"); 12196binaryOps(symbol, "System.IntPtr", "short"); 12197binaryOps(symbol, "System.IntPtr", "ushort"); 12198binaryOps(symbol, "System.IntPtr", "int"); 12199binaryOps(symbol, "System.IntPtr", "uint"); 12200binaryOps(symbol, "System.IntPtr", "nint", $"nint nint.{name}(nint left, nint right)"); 12201binaryOps(symbol, "System.IntPtr", "nuint"); 12202binaryOps(symbol, "System.IntPtr", "long"); 12203binaryOps(symbol, "System.IntPtr", "ulong"); 12204binaryOps(symbol, "System.IntPtr", "float"); 12205binaryOps(symbol, "System.IntPtr", "double"); 12206binaryOps(symbol, "System.IntPtr", "decimal"); 12207binaryOps(symbol, "System.IntPtr", "System.IntPtr"); 12208binaryOps(symbol, "System.IntPtr", "System.UIntPtr"); 12209binaryOps(symbol, "System.IntPtr", "bool?"); 12210binaryOps(symbol, "System.IntPtr", "char?"); 12211binaryOps(symbol, "System.IntPtr", "sbyte?"); 12212binaryOps(symbol, "System.IntPtr", "byte?"); 12213binaryOps(symbol, "System.IntPtr", "short?"); 12214binaryOps(symbol, "System.IntPtr", "ushort?"); 12215binaryOps(symbol, "System.IntPtr", "int?"); 12216binaryOps(symbol, "System.IntPtr", "uint?"); 12217binaryOps(symbol, "System.IntPtr", "nint?", $"nint nint.{name}(nint left, nint right)"); 12218binaryOps(symbol, "System.IntPtr", "nuint?"); 12219binaryOps(symbol, "System.IntPtr", "long?"); 12220binaryOps(symbol, "System.IntPtr", "ulong?"); 12221binaryOps(symbol, "System.IntPtr", "float?"); 12222binaryOps(symbol, "System.IntPtr", "double?"); 12223binaryOps(symbol, "System.IntPtr", "decimal?"); 12224binaryOps(symbol, "System.IntPtr", "System.IntPtr?"); 12225binaryOps(symbol, "System.IntPtr", "System.UIntPtr?"); 12226binaryOps(symbol, "System.IntPtr", "object"); 12227binaryOps(symbol, "System.IntPtr?", "string"); 12228binaryOps(symbol, "System.IntPtr?", "void*", null, null, getBadBinaryOpsDiagnostics(symbol, "System.IntPtr?", "void*", includeVoidError: true), getBadBinaryOpsDiagnostics(symbol, "void*", "System.IntPtr?", includeVoidError: true)); 12229binaryOps(symbol, "System.IntPtr?", "bool"); 12230binaryOps(symbol, "System.IntPtr?", "char"); 12231binaryOps(symbol, "System.IntPtr?", "sbyte"); 12232binaryOps(symbol, "System.IntPtr?", "byte"); 12233binaryOps(symbol, "System.IntPtr?", "short"); 12234binaryOps(symbol, "System.IntPtr?", "ushort"); 12235binaryOps(symbol, "System.IntPtr?", "int"); 12236binaryOps(symbol, "System.IntPtr?", "uint"); 12237binaryOps(symbol, "System.IntPtr?", "nint", $"nint nint.{name}(nint left, nint right)"); 12238binaryOps(symbol, "System.IntPtr?", "nuint"); 12239binaryOps(symbol, "System.IntPtr?", "long"); 12240binaryOps(symbol, "System.IntPtr?", "ulong"); 12241binaryOps(symbol, "System.IntPtr?", "float"); 12242binaryOps(symbol, "System.IntPtr?", "double"); 12243binaryOps(symbol, "System.IntPtr?", "decimal"); 12244binaryOps(symbol, "System.IntPtr?", "System.IntPtr"); 12245binaryOps(symbol, "System.IntPtr?", "System.UIntPtr"); 12246binaryOps(symbol, "System.IntPtr?", "bool?"); 12247binaryOps(symbol, "System.IntPtr?", "char?"); 12248binaryOps(symbol, "System.IntPtr?", "sbyte?"); 12249binaryOps(symbol, "System.IntPtr?", "byte?"); 12250binaryOps(symbol, "System.IntPtr?", "short?"); 12251binaryOps(symbol, "System.IntPtr?", "ushort?"); 12252binaryOps(symbol, "System.IntPtr?", "int?"); 12253binaryOps(symbol, "System.IntPtr?", "uint?"); 12254binaryOps(symbol, "System.IntPtr?", "nint?", $"nint nint.{name}(nint left, nint right)"); 12255binaryOps(symbol, "System.IntPtr?", "nuint?"); 12256binaryOps(symbol, "System.IntPtr?", "long?"); 12257binaryOps(symbol, "System.IntPtr?", "ulong?"); 12258binaryOps(symbol, "System.IntPtr?", "float?"); 12259binaryOps(symbol, "System.IntPtr?", "double?"); 12260binaryOps(symbol, "System.IntPtr?", "decimal?"); 12261binaryOps(symbol, "System.IntPtr?", "System.IntPtr?"); 12262binaryOps(symbol, "System.IntPtr?", "System.UIntPtr?"); 12263binaryOps(symbol, "System.UIntPtr", "object"); 12264binaryOps(symbol, "System.UIntPtr", "string"); 12265binaryOps(symbol, "System.UIntPtr", "void*", null, null, getBadBinaryOpsDiagnostics(symbol, "System.UIntPtr", "void*", includeVoidError: true), getBadBinaryOpsDiagnostics(symbol, "void*", "System.UIntPtr", includeVoidError: true)); 12266binaryOps(symbol, "System.UIntPtr", "bool"); 12267binaryOps(symbol, "System.UIntPtr", "char"); 12268binaryOps(symbol, "System.UIntPtr", "sbyte"); 12269binaryOps(symbol, "System.UIntPtr", "byte"); 12270binaryOps(symbol, "System.UIntPtr", "short"); 12271binaryOps(symbol, "System.UIntPtr", "ushort"); 12272binaryOps(symbol, "System.UIntPtr", "int"); 12273binaryOps(symbol, "System.UIntPtr", "uint"); 12274binaryOps(symbol, "System.UIntPtr", "nint"); 12275binaryOps(symbol, "System.UIntPtr", "nuint", $"nuint nuint.{name}(nuint left, nuint right)"); 12276binaryOps(symbol, "System.UIntPtr", "long"); 12277binaryOps(symbol, "System.UIntPtr", "ulong"); 12278binaryOps(symbol, "System.UIntPtr", "float"); 12279binaryOps(symbol, "System.UIntPtr", "double"); 12280binaryOps(symbol, "System.UIntPtr", "decimal"); 12281binaryOps(symbol, "System.UIntPtr", "System.IntPtr"); 12282binaryOps(symbol, "System.UIntPtr", "System.UIntPtr"); 12283binaryOps(symbol, "System.UIntPtr", "bool?"); 12284binaryOps(symbol, "System.UIntPtr", "char?"); 12285binaryOps(symbol, "System.UIntPtr", "sbyte?"); 12286binaryOps(symbol, "System.UIntPtr", "byte?"); 12287binaryOps(symbol, "System.UIntPtr", "short?"); 12288binaryOps(symbol, "System.UIntPtr", "ushort?"); 12289binaryOps(symbol, "System.UIntPtr", "int?"); 12290binaryOps(symbol, "System.UIntPtr", "uint?"); 12291binaryOps(symbol, "System.UIntPtr", "nint?"); 12292binaryOps(symbol, "System.UIntPtr", "nuint?", $"nuint nuint.{name}(nuint left, nuint right)"); 12293binaryOps(symbol, "System.UIntPtr", "long?"); 12294binaryOps(symbol, "System.UIntPtr", "ulong?"); 12295binaryOps(symbol, "System.UIntPtr", "float?"); 12296binaryOps(symbol, "System.UIntPtr", "double?"); 12297binaryOps(symbol, "System.UIntPtr", "decimal?"); 12298binaryOps(symbol, "System.UIntPtr", "System.IntPtr?"); 12299binaryOps(symbol, "System.UIntPtr", "System.UIntPtr?"); 12300binaryOps(symbol, "System.UIntPtr", "object"); 12301binaryOps(symbol, "System.UIntPtr?", "string"); 12302binaryOps(symbol, "System.UIntPtr?", "void*", null, null, getBadBinaryOpsDiagnostics(symbol, "System.UIntPtr?", "void*", includeVoidError: true), getBadBinaryOpsDiagnostics(symbol, "void*", "System.UIntPtr?", includeVoidError: true)); 12303binaryOps(symbol, "System.UIntPtr?", "bool"); 12304binaryOps(symbol, "System.UIntPtr?", "char"); 12305binaryOps(symbol, "System.UIntPtr?", "sbyte"); 12306binaryOps(symbol, "System.UIntPtr?", "byte"); 12307binaryOps(symbol, "System.UIntPtr?", "short"); 12308binaryOps(symbol, "System.UIntPtr?", "ushort"); 12309binaryOps(symbol, "System.UIntPtr?", "int"); 12310binaryOps(symbol, "System.UIntPtr?", "uint"); 12311binaryOps(symbol, "System.UIntPtr?", "nint"); 12312binaryOps(symbol, "System.UIntPtr?", "nuint", $"nuint nuint.{name}(nuint left, nuint right)"); 12313binaryOps(symbol, "System.UIntPtr?", "long"); 12314binaryOps(symbol, "System.UIntPtr?", "ulong"); 12315binaryOps(symbol, "System.UIntPtr?", "float"); 12316binaryOps(symbol, "System.UIntPtr?", "double"); 12317binaryOps(symbol, "System.UIntPtr?", "decimal"); 12318binaryOps(symbol, "System.UIntPtr?", "System.IntPtr"); 12319binaryOps(symbol, "System.UIntPtr?", "System.UIntPtr"); 12320binaryOps(symbol, "System.UIntPtr?", "bool?"); 12321binaryOps(symbol, "System.UIntPtr?", "char?"); 12322binaryOps(symbol, "System.UIntPtr?", "sbyte?"); 12323binaryOps(symbol, "System.UIntPtr?", "byte?"); 12324binaryOps(symbol, "System.UIntPtr?", "short?"); 12325binaryOps(symbol, "System.UIntPtr?", "ushort?"); 12326binaryOps(symbol, "System.UIntPtr?", "int?"); 12327binaryOps(symbol, "System.UIntPtr?", "uint?"); 12328binaryOps(symbol, "System.UIntPtr?", "nint?"); 12329binaryOps(symbol, "System.UIntPtr?", "nuint?", $"nuint nuint.{name}(nuint left, nuint right)"); 12330binaryOps(symbol, "System.UIntPtr?", "long?"); 12331binaryOps(symbol, "System.UIntPtr?", "ulong?"); 12332binaryOps(symbol, "System.UIntPtr?", "float?"); 12333binaryOps(symbol, "System.UIntPtr?", "double?"); 12334binaryOps(symbol, "System.UIntPtr?", "decimal?"); 12335binaryOps(symbol, "System.UIntPtr?", "System.IntPtr?"); 12336binaryOps(symbol, "System.UIntPtr?", "System.UIntPtr?");