888 references to unifiedBinaryOps
Microsoft.CodeAnalysis.CSharp.Emit2.UnitTests (888)
Emit\NumericIntPtrTests.cs (888)
7077unifiedBinaryOps(symbol, "nint", "object"); 7078unifiedBinaryOps(symbol, "nint", "string"); 7079unifiedBinaryOps(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)); 7080unifiedBinaryOps(symbol, "nint", "bool"); 7081unifiedBinaryOps(symbol, "nint", "char", $"nint nint.{name}(nint left, nint right)"); 7082unifiedBinaryOps(symbol, "nint", "sbyte", $"nint nint.{name}(nint left, nint right)"); 7083unifiedBinaryOps(symbol, "nint", "byte", $"nint nint.{name}(nint left, nint right)"); 7084unifiedBinaryOps(symbol, "nint", "short", $"nint nint.{name}(nint left, nint right)"); 7085unifiedBinaryOps(symbol, "nint", "ushort", $"nint nint.{name}(nint left, nint right)"); 7086unifiedBinaryOps(symbol, "nint", "int", $"nint nint.{name}(nint left, nint right)"); 7087unifiedBinaryOps(symbol, "nint", "uint", $"long long.{name}(long left, long right)"); 7088unifiedBinaryOps(symbol, "nint", "nint", $"nint nint.{name}(nint left, nint right)"); 7089unifiedBinaryOps(symbol, "nint", "nuint", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nint", "nuint"), getAmbiguousBinaryOpsDiagnostics(symbol, "nuint", "nint")); 7090unifiedBinaryOps(symbol, "nint", "long", $"long long.{name}(long left, long right)"); 7091unifiedBinaryOps(symbol, "nint", "ulong", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nint", "ulong"), getAmbiguousBinaryOpsDiagnostics(symbol, "ulong", "nint")); 7092unifiedBinaryOps(symbol, "nint", "float", $"float float.{name}(float left, float right)"); 7093unifiedBinaryOps(symbol, "nint", "double", $"double double.{name}(double left, double right)"); 7094unifiedBinaryOps(symbol, "nint", "decimal", $"decimal decimal.{name}(decimal left, decimal right)"); 7095unifiedBinaryOps(symbol, "nint", "System.IntPtr", $"nint nint.{name}(nint left, nint right)"); 7096unifiedBinaryOps(symbol, "nint", "System.UIntPtr", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nint", "nuint"), getAmbiguousBinaryOpsDiagnostics(symbol, "nuint", "nint")); 7099unifiedBinaryOps(symbol, "nint", "bool?"); 7100unifiedBinaryOps(symbol, "nint", "char?", $"nint nint.{name}(nint left, nint right)"); 7101unifiedBinaryOps(symbol, "nint", "sbyte?", $"nint nint.{name}(nint left, nint right)"); 7102unifiedBinaryOps(symbol, "nint", "byte?", $"nint nint.{name}(nint left, nint right)"); 7103unifiedBinaryOps(symbol, "nint", "short?", $"nint nint.{name}(nint left, nint right)"); 7104unifiedBinaryOps(symbol, "nint", "ushort?", $"nint nint.{name}(nint left, nint right)"); 7105unifiedBinaryOps(symbol, "nint", "int?", $"nint nint.{name}(nint left, nint right)"); 7106unifiedBinaryOps(symbol, "nint", "uint?", $"long long.{name}(long left, long right)"); 7107unifiedBinaryOps(symbol, "nint", "nint?", $"nint nint.{name}(nint left, nint right)"); 7108unifiedBinaryOps(symbol, "nint", "nuint?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nint", "nuint?"), getAmbiguousBinaryOpsDiagnostics(symbol, "nuint?", "nint")); 7109unifiedBinaryOps(symbol, "nint", "long?", $"long long.{name}(long left, long right)"); 7110unifiedBinaryOps(symbol, "nint", "ulong?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nint", "ulong?"), getAmbiguousBinaryOpsDiagnostics(symbol, "ulong?", "nint")); 7111unifiedBinaryOps(symbol, "nint", "float?", $"float float.{name}(float left, float right)"); 7112unifiedBinaryOps(symbol, "nint", "double?", $"double double.{name}(double left, double right)"); 7113unifiedBinaryOps(symbol, "nint", "decimal?", $"decimal decimal.{name}(decimal left, decimal right)"); 7114unifiedBinaryOps(symbol, "nint", "System.IntPtr?", $"nint nint.{name}(nint left, nint right)"); 7115unifiedBinaryOps(symbol, "nint", "System.UIntPtr?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nint", "nuint?"), getAmbiguousBinaryOpsDiagnostics(symbol, "nuint?", "nint")); 7116unifiedBinaryOps(symbol, "nint", "object"); 7119unifiedBinaryOps(symbol, "nint?", "string"); 7120unifiedBinaryOps(symbol, "nint?", "void*", null, null, getBadBinaryOpsDiagnostics(symbol, "nint?", "void*", includeVoidError: true), getBadBinaryOpsDiagnostics(symbol, "void*", "nint?", includeVoidError: true)); 7121unifiedBinaryOps(symbol, "nint?", "bool"); 7122unifiedBinaryOps(symbol, "nint?", "char", $"nint nint.{name}(nint left, nint right)"); 7123unifiedBinaryOps(symbol, "nint?", "sbyte", $"nint nint.{name}(nint left, nint right)"); 7124unifiedBinaryOps(symbol, "nint?", "byte", $"nint nint.{name}(nint left, nint right)"); 7125unifiedBinaryOps(symbol, "nint?", "short", $"nint nint.{name}(nint left, nint right)"); 7126unifiedBinaryOps(symbol, "nint?", "ushort", $"nint nint.{name}(nint left, nint right)"); 7127unifiedBinaryOps(symbol, "nint?", "int", $"nint nint.{name}(nint left, nint right)"); 7128unifiedBinaryOps(symbol, "nint?", "uint", $"long long.{name}(long left, long right)"); 7129unifiedBinaryOps(symbol, "nint?", "nint", $"nint nint.{name}(nint left, nint right)"); 7130unifiedBinaryOps(symbol, "nint?", "nuint", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nint?", "nuint"), getAmbiguousBinaryOpsDiagnostics(symbol, "nuint", "nint?")); 7131unifiedBinaryOps(symbol, "nint?", "long", $"long long.{name}(long left, long right)"); 7132unifiedBinaryOps(symbol, "nint?", "ulong", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nint?", "ulong"), getAmbiguousBinaryOpsDiagnostics(symbol, "ulong", "nint?")); 7133unifiedBinaryOps(symbol, "nint?", "float", $"float float.{name}(float left, float right)"); 7134unifiedBinaryOps(symbol, "nint?", "double", $"double double.{name}(double left, double right)"); 7135unifiedBinaryOps(symbol, "nint?", "decimal", $"decimal decimal.{name}(decimal left, decimal right)"); 7136unifiedBinaryOps(symbol, "nint?", "System.IntPtr", $"nint nint.{name}(nint left, nint right)"); 7137unifiedBinaryOps(symbol, "nint?", "System.UIntPtr", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nint?", "nuint"), getAmbiguousBinaryOpsDiagnostics(symbol, "nuint", "nint?")); 7140unifiedBinaryOps(symbol, "nint?", "bool?"); 7141unifiedBinaryOps(symbol, "nint?", "char?", $"nint nint.{name}(nint left, nint right)"); 7142unifiedBinaryOps(symbol, "nint?", "sbyte?", $"nint nint.{name}(nint left, nint right)"); 7143unifiedBinaryOps(symbol, "nint?", "byte?", $"nint nint.{name}(nint left, nint right)"); 7144unifiedBinaryOps(symbol, "nint?", "short?", $"nint nint.{name}(nint left, nint right)"); 7145unifiedBinaryOps(symbol, "nint?", "ushort?", $"nint nint.{name}(nint left, nint right)"); 7146unifiedBinaryOps(symbol, "nint?", "int?", $"nint nint.{name}(nint left, nint right)"); 7147unifiedBinaryOps(symbol, "nint?", "uint?", $"long long.{name}(long left, long right)"); 7148unifiedBinaryOps(symbol, "nint?", "nint?", $"nint nint.{name}(nint left, nint right)"); 7149unifiedBinaryOps(symbol, "nint?", "nuint?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nint?", "nuint?"), getAmbiguousBinaryOpsDiagnostics(symbol, "nuint?", "nint?")); 7150unifiedBinaryOps(symbol, "nint?", "long?", $"long long.{name}(long left, long right)"); 7151unifiedBinaryOps(symbol, "nint?", "ulong?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nint?", "ulong?"), getAmbiguousBinaryOpsDiagnostics(symbol, "ulong?", "nint?")); 7152unifiedBinaryOps(symbol, "nint?", "float?", $"float float.{name}(float left, float right)"); 7153unifiedBinaryOps(symbol, "nint?", "double?", $"double double.{name}(double left, double right)"); 7154unifiedBinaryOps(symbol, "nint?", "decimal?", $"decimal decimal.{name}(decimal left, decimal right)"); 7155unifiedBinaryOps(symbol, "nint?", "System.IntPtr?", $"nint nint.{name}(nint left, nint right)"); 7156unifiedBinaryOps(symbol, "nint?", "System.UIntPtr?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nint?", "nuint?"), getAmbiguousBinaryOpsDiagnostics(symbol, "nuint?", "nint?")); 7159unifiedBinaryOps(symbol, "nuint", "object"); 7160unifiedBinaryOps(symbol, "nuint", "string"); 7161unifiedBinaryOps(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)); 7162unifiedBinaryOps(symbol, "nuint", "bool"); 7163unifiedBinaryOps(symbol, "nuint", "char", $"nuint nuint.{name}(nuint left, nuint right)"); 7164unifiedBinaryOps(symbol, "nuint", "sbyte", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint", "sbyte"), getAmbiguousBinaryOpsDiagnostics(symbol, "sbyte", "nuint")); 7165unifiedBinaryOps(symbol, "nuint", "byte", $"nuint nuint.{name}(nuint left, nuint right)"); 7166unifiedBinaryOps(symbol, "nuint", "short", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint", "short"), getAmbiguousBinaryOpsDiagnostics(symbol, "short", "nuint")); 7167unifiedBinaryOps(symbol, "nuint", "ushort", $"nuint nuint.{name}(nuint left, nuint right)"); 7168unifiedBinaryOps(symbol, "nuint", "int", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint", "int"), getAmbiguousBinaryOpsDiagnostics(symbol, "int", "nuint")); 7169unifiedBinaryOps(symbol, "nuint", "uint", $"nuint nuint.{name}(nuint left, nuint right)"); 7170unifiedBinaryOps(symbol, "nuint", "nint", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint", "nint"), getAmbiguousBinaryOpsDiagnostics(symbol, "nint", "nuint")); 7171unifiedBinaryOps(symbol, "nuint", "nuint", $"nuint nuint.{name}(nuint left, nuint right)"); 7172unifiedBinaryOps(symbol, "nuint", "long", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint", "long"), getAmbiguousBinaryOpsDiagnostics(symbol, "long", "nuint")); 7173unifiedBinaryOps(symbol, "nuint", "ulong", $"ulong ulong.{name}(ulong left, ulong right)"); 7174unifiedBinaryOps(symbol, "nuint", "float", $"float float.{name}(float left, float right)"); 7175unifiedBinaryOps(symbol, "nuint", "double", $"double double.{name}(double left, double right)"); 7176unifiedBinaryOps(symbol, "nuint", "decimal", $"decimal decimal.{name}(decimal left, decimal right)"); 7177unifiedBinaryOps(symbol, "nuint", "System.IntPtr", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint", "nint"), getAmbiguousBinaryOpsDiagnostics(symbol, "nint", "nuint")); 7178unifiedBinaryOps(symbol, "nuint", "System.UIntPtr", $"nuint nuint.{name}(nuint left, nuint right)"); 7181unifiedBinaryOps(symbol, "nuint", "bool?"); 7182unifiedBinaryOps(symbol, "nuint", "char?", $"nuint nuint.{name}(nuint left, nuint right)"); 7183unifiedBinaryOps(symbol, "nuint", "sbyte?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint", "sbyte?"), getAmbiguousBinaryOpsDiagnostics(symbol, "sbyte?", "nuint")); 7184unifiedBinaryOps(symbol, "nuint", "byte?", $"nuint nuint.{name}(nuint left, nuint right)"); 7185unifiedBinaryOps(symbol, "nuint", "short?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint", "short?"), getAmbiguousBinaryOpsDiagnostics(symbol, "short?", "nuint")); 7186unifiedBinaryOps(symbol, "nuint", "ushort?", $"nuint nuint.{name}(nuint left, nuint right)"); 7187unifiedBinaryOps(symbol, "nuint", "int?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint", "int?"), getAmbiguousBinaryOpsDiagnostics(symbol, "int?", "nuint")); 7188unifiedBinaryOps(symbol, "nuint", "uint?", $"nuint nuint.{name}(nuint left, nuint right)"); 7189unifiedBinaryOps(symbol, "nuint", "nint?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint", "nint?"), getAmbiguousBinaryOpsDiagnostics(symbol, "nint?", "nuint")); 7190unifiedBinaryOps(symbol, "nuint", "nuint?", $"nuint nuint.{name}(nuint left, nuint right)"); 7191unifiedBinaryOps(symbol, "nuint", "long?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint", "long?"), getAmbiguousBinaryOpsDiagnostics(symbol, "long?", "nuint")); 7192unifiedBinaryOps(symbol, "nuint", "ulong?", $"ulong ulong.{name}(ulong left, ulong right)"); 7193unifiedBinaryOps(symbol, "nuint", "float?", $"float float.{name}(float left, float right)"); 7194unifiedBinaryOps(symbol, "nuint", "double?", $"double double.{name}(double left, double right)"); 7195unifiedBinaryOps(symbol, "nuint", "decimal?", $"decimal decimal.{name}(decimal left, decimal right)"); 7196unifiedBinaryOps(symbol, "nuint", "System.IntPtr?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint", "nint?"), getAmbiguousBinaryOpsDiagnostics(symbol, "nint?", "nuint")); 7197unifiedBinaryOps(symbol, "nuint", "System.UIntPtr?", $"nuint nuint.{name}(nuint left, nuint right)"); 7200unifiedBinaryOps(symbol, "nuint?", "object"); 7201unifiedBinaryOps(symbol, "nuint?", "string"); 7202unifiedBinaryOps(symbol, "nuint?", "void*", null, null, getBadBinaryOpsDiagnostics(symbol, "nuint?", "void*", includeVoidError: true), getBadBinaryOpsDiagnostics(symbol, "void*", "nuint?", includeVoidError: true)); 7203unifiedBinaryOps(symbol, "nuint?", "bool"); 7204unifiedBinaryOps(symbol, "nuint?", "char", $"nuint nuint.{name}(nuint left, nuint right)"); 7205unifiedBinaryOps(symbol, "nuint?", "sbyte", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint?", "sbyte"), getAmbiguousBinaryOpsDiagnostics(symbol, "sbyte", "nuint?")); 7206unifiedBinaryOps(symbol, "nuint?", "byte", $"nuint nuint.{name}(nuint left, nuint right)"); 7207unifiedBinaryOps(symbol, "nuint?", "short", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint?", "short"), getAmbiguousBinaryOpsDiagnostics(symbol, "short", "nuint?")); 7208unifiedBinaryOps(symbol, "nuint?", "ushort", $"nuint nuint.{name}(nuint left, nuint right)"); 7209unifiedBinaryOps(symbol, "nuint?", "int", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint?", "int"), getAmbiguousBinaryOpsDiagnostics(symbol, "int", "nuint?")); 7210unifiedBinaryOps(symbol, "nuint?", "uint", $"nuint nuint.{name}(nuint left, nuint right)"); 7211unifiedBinaryOps(symbol, "nuint?", "nint", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint?", "nint"), getAmbiguousBinaryOpsDiagnostics(symbol, "nint", "nuint?")); 7212unifiedBinaryOps(symbol, "nuint?", "nuint", $"nuint nuint.{name}(nuint left, nuint right)"); 7213unifiedBinaryOps(symbol, "nuint?", "long", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint?", "long"), getAmbiguousBinaryOpsDiagnostics(symbol, "long", "nuint?")); 7214unifiedBinaryOps(symbol, "nuint?", "ulong", $"ulong ulong.{name}(ulong left, ulong right)"); 7215unifiedBinaryOps(symbol, "nuint?", "float", $"float float.{name}(float left, float right)"); 7216unifiedBinaryOps(symbol, "nuint?", "double", $"double double.{name}(double left, double right)"); 7217unifiedBinaryOps(symbol, "nuint?", "decimal", $"decimal decimal.{name}(decimal left, decimal right)"); 7218unifiedBinaryOps(symbol, "nuint?", "System.IntPtr", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint?", "nint"), getAmbiguousBinaryOpsDiagnostics(symbol, "nint", "nuint?")); 7219unifiedBinaryOps(symbol, "nuint?", "System.UIntPtr", $"nuint nuint.{name}(nuint left, nuint right)"); 7222unifiedBinaryOps(symbol, "nuint?", "bool?"); 7223unifiedBinaryOps(symbol, "nuint?", "char?", $"nuint nuint.{name}(nuint left, nuint right)"); 7224unifiedBinaryOps(symbol, "nuint?", "sbyte?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint?", "sbyte?"), getAmbiguousBinaryOpsDiagnostics(symbol, "sbyte?", "nuint?")); 7225unifiedBinaryOps(symbol, "nuint?", "byte?", $"nuint nuint.{name}(nuint left, nuint right)"); 7226unifiedBinaryOps(symbol, "nuint?", "short?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint?", "short?"), getAmbiguousBinaryOpsDiagnostics(symbol, "short?", "nuint?")); 7227unifiedBinaryOps(symbol, "nuint?", "ushort?", $"nuint nuint.{name}(nuint left, nuint right)"); 7228unifiedBinaryOps(symbol, "nuint?", "int?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint?", "int?"), getAmbiguousBinaryOpsDiagnostics(symbol, "int?", "nuint?")); 7229unifiedBinaryOps(symbol, "nuint?", "uint?", $"nuint nuint.{name}(nuint left, nuint right)"); 7230unifiedBinaryOps(symbol, "nuint?", "nint?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint?", "nint?"), getAmbiguousBinaryOpsDiagnostics(symbol, "nint?", "nuint?")); 7231unifiedBinaryOps(symbol, "nuint?", "nuint?", $"nuint nuint.{name}(nuint left, nuint right)"); 7232unifiedBinaryOps(symbol, "nuint?", "long?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint?", "long?"), getAmbiguousBinaryOpsDiagnostics(symbol, "long?", "nuint?")); 7233unifiedBinaryOps(symbol, "nuint?", "ulong?", $"ulong ulong.{name}(ulong left, ulong right)"); 7234unifiedBinaryOps(symbol, "nuint?", "float?", $"float float.{name}(float left, float right)"); 7235unifiedBinaryOps(symbol, "nuint?", "double?", $"double double.{name}(double left, double right)"); 7236unifiedBinaryOps(symbol, "nuint?", "decimal?", $"decimal decimal.{name}(decimal left, decimal right)"); 7237unifiedBinaryOps(symbol, "nuint?", "System.IntPtr?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint?", "nint?"), getAmbiguousBinaryOpsDiagnostics(symbol, "nint?", "nuint?")); 7238unifiedBinaryOps(symbol, "nuint?", "System.UIntPtr?", $"nuint nuint.{name}(nuint left, nuint right)"); 7244unifiedBinaryOps(symbol, "nint", "object"); 7245unifiedBinaryOps(symbol, "nint", "string"); 7246unifiedBinaryOps(symbol, "nint", "void*", null, null, getBadBinaryOpsDiagnostics(symbol, "nint", "void*"), getBadBinaryOpsDiagnostics(symbol, "void*", "nint")); 7247unifiedBinaryOps(symbol, "nint", "bool"); 7248unifiedBinaryOps(symbol, "nint", "char", $"bool nint.{name}(nint left, nint right)"); 7249unifiedBinaryOps(symbol, "nint", "sbyte", $"bool nint.{name}(nint left, nint right)"); 7250unifiedBinaryOps(symbol, "nint", "byte", $"bool nint.{name}(nint left, nint right)"); 7251unifiedBinaryOps(symbol, "nint", "short", $"bool nint.{name}(nint left, nint right)"); 7252unifiedBinaryOps(symbol, "nint", "ushort", $"bool nint.{name}(nint left, nint right)"); 7253unifiedBinaryOps(symbol, "nint", "int", $"bool nint.{name}(nint left, nint right)"); 7254unifiedBinaryOps(symbol, "nint", "uint", $"bool long.{name}(long left, long right)"); 7255unifiedBinaryOps(symbol, "nint", "nint", $"bool nint.{name}(nint left, nint right)"); 7256unifiedBinaryOps(symbol, "nint", "nuint", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nint", "nuint"), getAmbiguousBinaryOpsDiagnostics(symbol, "nuint", "nint")); 7257unifiedBinaryOps(symbol, "nint", "long", $"bool long.{name}(long left, long right)"); 7258unifiedBinaryOps(symbol, "nint", "ulong", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nint", "ulong"), getAmbiguousBinaryOpsDiagnostics(symbol, "ulong", "nint")); 7259unifiedBinaryOps(symbol, "nint", "float", $"bool float.{name}(float left, float right)"); 7260unifiedBinaryOps(symbol, "nint", "double", $"bool double.{name}(double left, double right)"); 7261unifiedBinaryOps(symbol, "nint", "decimal", $"bool decimal.{name}(decimal left, decimal right)"); 7262unifiedBinaryOps(symbol, "nint", "System.IntPtr", $"bool nint.{name}(nint left, nint right)"); 7263unifiedBinaryOps(symbol, "nint", "System.UIntPtr", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nint", "nuint"), getAmbiguousBinaryOpsDiagnostics(symbol, "nuint", "nint")); 7266unifiedBinaryOps(symbol, "nint", "bool?"); 7267unifiedBinaryOps(symbol, "nint", "char?", $"bool nint.{name}(nint left, nint right)"); 7268unifiedBinaryOps(symbol, "nint", "sbyte?", $"bool nint.{name}(nint left, nint right)"); 7269unifiedBinaryOps(symbol, "nint", "byte?", $"bool nint.{name}(nint left, nint right)"); 7270unifiedBinaryOps(symbol, "nint", "short?", $"bool nint.{name}(nint left, nint right)"); 7271unifiedBinaryOps(symbol, "nint", "ushort?", $"bool nint.{name}(nint left, nint right)"); 7272unifiedBinaryOps(symbol, "nint", "int?", $"bool nint.{name}(nint left, nint right)"); 7273unifiedBinaryOps(symbol, "nint", "uint?", $"bool long.{name}(long left, long right)"); 7274unifiedBinaryOps(symbol, "nint", "nint?", $"bool nint.{name}(nint left, nint right)"); 7275unifiedBinaryOps(symbol, "nint", "nuint?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nint", "nuint?"), getAmbiguousBinaryOpsDiagnostics(symbol, "nuint?", "nint")); 7276unifiedBinaryOps(symbol, "nint", "long?", $"bool long.{name}(long left, long right)"); 7277unifiedBinaryOps(symbol, "nint", "ulong?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nint", "ulong?"), getAmbiguousBinaryOpsDiagnostics(symbol, "ulong?", "nint")); 7278unifiedBinaryOps(symbol, "nint", "float?", $"bool float.{name}(float left, float right)"); 7279unifiedBinaryOps(symbol, "nint", "double?", $"bool double.{name}(double left, double right)"); 7280unifiedBinaryOps(symbol, "nint", "decimal?", $"bool decimal.{name}(decimal left, decimal right)"); 7281unifiedBinaryOps(symbol, "nint", "System.IntPtr?", $"bool nint.{name}(nint left, nint right)"); 7282unifiedBinaryOps(symbol, "nint", "System.UIntPtr?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nint", "nuint?"), getAmbiguousBinaryOpsDiagnostics(symbol, "nuint?", "nint")); 7283unifiedBinaryOps(symbol, "nint", "object"); 7286unifiedBinaryOps(symbol, "nint?", "string"); 7287unifiedBinaryOps(symbol, "nint?", "void*", null, null, getBadBinaryOpsDiagnostics(symbol, "nint?", "void*"), getBadBinaryOpsDiagnostics(symbol, "void*", "nint?")); 7288unifiedBinaryOps(symbol, "nint?", "bool"); 7289unifiedBinaryOps(symbol, "nint?", "char", $"bool nint.{name}(nint left, nint right)"); 7290unifiedBinaryOps(symbol, "nint?", "sbyte", $"bool nint.{name}(nint left, nint right)"); 7291unifiedBinaryOps(symbol, "nint?", "byte", $"bool nint.{name}(nint left, nint right)"); 7292unifiedBinaryOps(symbol, "nint?", "short", $"bool nint.{name}(nint left, nint right)"); 7293unifiedBinaryOps(symbol, "nint?", "ushort", $"bool nint.{name}(nint left, nint right)"); 7294unifiedBinaryOps(symbol, "nint?", "int", $"bool nint.{name}(nint left, nint right)"); 7295unifiedBinaryOps(symbol, "nint?", "uint", $"bool long.{name}(long left, long right)"); 7296unifiedBinaryOps(symbol, "nint?", "nint", $"bool nint.{name}(nint left, nint right)"); 7297unifiedBinaryOps(symbol, "nint?", "nuint", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nint?", "nuint"), getAmbiguousBinaryOpsDiagnostics(symbol, "nuint", "nint?")); 7298unifiedBinaryOps(symbol, "nint?", "long", $"bool long.{name}(long left, long right)"); 7299unifiedBinaryOps(symbol, "nint?", "ulong", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nint?", "ulong"), getAmbiguousBinaryOpsDiagnostics(symbol, "ulong", "nint?")); 7300unifiedBinaryOps(symbol, "nint?", "float", $"bool float.{name}(float left, float right)"); 7301unifiedBinaryOps(symbol, "nint?", "double", $"bool double.{name}(double left, double right)"); 7302unifiedBinaryOps(symbol, "nint?", "decimal", $"bool decimal.{name}(decimal left, decimal right)"); 7303unifiedBinaryOps(symbol, "nint?", "System.IntPtr", $"bool nint.{name}(nint left, nint right)"); 7304unifiedBinaryOps(symbol, "nint?", "System.UIntPtr", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nint?", "nuint"), getAmbiguousBinaryOpsDiagnostics(symbol, "nuint", "nint?")); 7307unifiedBinaryOps(symbol, "nint?", "bool?"); 7308unifiedBinaryOps(symbol, "nint?", "char?", $"bool nint.{name}(nint left, nint right)"); 7309unifiedBinaryOps(symbol, "nint?", "sbyte?", $"bool nint.{name}(nint left, nint right)"); 7310unifiedBinaryOps(symbol, "nint?", "byte?", $"bool nint.{name}(nint left, nint right)"); 7311unifiedBinaryOps(symbol, "nint?", "short?", $"bool nint.{name}(nint left, nint right)"); 7312unifiedBinaryOps(symbol, "nint?", "ushort?", $"bool nint.{name}(nint left, nint right)"); 7313unifiedBinaryOps(symbol, "nint?", "int?", $"bool nint.{name}(nint left, nint right)"); 7314unifiedBinaryOps(symbol, "nint?", "uint?", $"bool long.{name}(long left, long right)"); 7315unifiedBinaryOps(symbol, "nint?", "nint?", $"bool nint.{name}(nint left, nint right)"); 7316unifiedBinaryOps(symbol, "nint?", "nuint?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nint?", "nuint?"), getAmbiguousBinaryOpsDiagnostics(symbol, "nuint?", "nint?")); 7317unifiedBinaryOps(symbol, "nint?", "long?", $"bool long.{name}(long left, long right)"); 7318unifiedBinaryOps(symbol, "nint?", "ulong?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nint?", "ulong?"), getAmbiguousBinaryOpsDiagnostics(symbol, "ulong?", "nint?")); 7319unifiedBinaryOps(symbol, "nint?", "float?", $"bool float.{name}(float left, float right)"); 7320unifiedBinaryOps(symbol, "nint?", "double?", $"bool double.{name}(double left, double right)"); 7321unifiedBinaryOps(symbol, "nint?", "decimal?", $"bool decimal.{name}(decimal left, decimal right)"); 7322unifiedBinaryOps(symbol, "nint?", "System.IntPtr?", $"bool nint.{name}(nint left, nint right)"); 7323unifiedBinaryOps(symbol, "nint?", "System.UIntPtr?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nint?", "nuint?"), getAmbiguousBinaryOpsDiagnostics(symbol, "nuint?", "nint?")); 7326unifiedBinaryOps(symbol, "nuint", "object"); 7327unifiedBinaryOps(symbol, "nuint", "string"); 7328unifiedBinaryOps(symbol, "nuint", "void*", null, null, getBadBinaryOpsDiagnostics(symbol, "nuint", "void*"), getBadBinaryOpsDiagnostics(symbol, "void*", "nuint")); 7329unifiedBinaryOps(symbol, "nuint", "bool"); 7330unifiedBinaryOps(symbol, "nuint", "char", $"bool nuint.{name}(nuint left, nuint right)"); 7331unifiedBinaryOps(symbol, "nuint", "sbyte", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint", "sbyte"), getAmbiguousBinaryOpsDiagnostics(symbol, "sbyte", "nuint")); 7332unifiedBinaryOps(symbol, "nuint", "byte", $"bool nuint.{name}(nuint left, nuint right)"); 7333unifiedBinaryOps(symbol, "nuint", "short", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint", "short"), getAmbiguousBinaryOpsDiagnostics(symbol, "short", "nuint")); 7334unifiedBinaryOps(symbol, "nuint", "ushort", $"bool nuint.{name}(nuint left, nuint right)"); 7335unifiedBinaryOps(symbol, "nuint", "int", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint", "int"), getAmbiguousBinaryOpsDiagnostics(symbol, "int", "nuint")); 7336unifiedBinaryOps(symbol, "nuint", "uint", $"bool nuint.{name}(nuint left, nuint right)"); 7337unifiedBinaryOps(symbol, "nuint", "nint", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint", "nint"), getAmbiguousBinaryOpsDiagnostics(symbol, "nint", "nuint")); 7338unifiedBinaryOps(symbol, "nuint", "nuint", $"bool nuint.{name}(nuint left, nuint right)"); 7339unifiedBinaryOps(symbol, "nuint", "long", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint", "long"), getAmbiguousBinaryOpsDiagnostics(symbol, "long", "nuint")); 7340unifiedBinaryOps(symbol, "nuint", "ulong", $"bool ulong.{name}(ulong left, ulong right)"); 7341unifiedBinaryOps(symbol, "nuint", "float", $"bool float.{name}(float left, float right)"); 7342unifiedBinaryOps(symbol, "nuint", "double", $"bool double.{name}(double left, double right)"); 7343unifiedBinaryOps(symbol, "nuint", "decimal", $"bool decimal.{name}(decimal left, decimal right)"); 7344unifiedBinaryOps(symbol, "nuint", "System.IntPtr", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint", "nint"), getAmbiguousBinaryOpsDiagnostics(symbol, "nint", "nuint")); 7345unifiedBinaryOps(symbol, "nuint", "System.UIntPtr", $"bool nuint.{name}(nuint left, nuint right)"); 7348unifiedBinaryOps(symbol, "nuint", "bool?"); 7349unifiedBinaryOps(symbol, "nuint", "char?", $"bool nuint.{name}(nuint left, nuint right)"); 7350unifiedBinaryOps(symbol, "nuint", "sbyte?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint", "sbyte?"), getAmbiguousBinaryOpsDiagnostics(symbol, "sbyte?", "nuint")); 7351unifiedBinaryOps(symbol, "nuint", "byte?", $"bool nuint.{name}(nuint left, nuint right)"); 7352unifiedBinaryOps(symbol, "nuint", "short?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint", "short?"), getAmbiguousBinaryOpsDiagnostics(symbol, "short?", "nuint")); 7353unifiedBinaryOps(symbol, "nuint", "ushort?", $"bool nuint.{name}(nuint left, nuint right)"); 7354unifiedBinaryOps(symbol, "nuint", "int?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint", "int?"), getAmbiguousBinaryOpsDiagnostics(symbol, "int?", "nuint")); 7355unifiedBinaryOps(symbol, "nuint", "uint?", $"bool nuint.{name}(nuint left, nuint right)"); 7356unifiedBinaryOps(symbol, "nuint", "nint?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint", "nint?"), getAmbiguousBinaryOpsDiagnostics(symbol, "nint?", "nuint")); 7357unifiedBinaryOps(symbol, "nuint", "nuint?", $"bool nuint.{name}(nuint left, nuint right)"); 7358unifiedBinaryOps(symbol, "nuint", "long?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint", "long?"), getAmbiguousBinaryOpsDiagnostics(symbol, "long?", "nuint")); 7359unifiedBinaryOps(symbol, "nuint", "ulong?", $"bool ulong.{name}(ulong left, ulong right)"); 7360unifiedBinaryOps(symbol, "nuint", "float?", $"bool float.{name}(float left, float right)"); 7361unifiedBinaryOps(symbol, "nuint", "double?", $"bool double.{name}(double left, double right)"); 7362unifiedBinaryOps(symbol, "nuint", "decimal?", $"bool decimal.{name}(decimal left, decimal right)"); 7363unifiedBinaryOps(symbol, "nuint", "System.IntPtr?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint", "nint?"), getAmbiguousBinaryOpsDiagnostics(symbol, "nint?", "nuint")); 7364unifiedBinaryOps(symbol, "nuint", "System.UIntPtr?", $"bool nuint.{name}(nuint left, nuint right)"); 7367unifiedBinaryOps(symbol, "nuint?", "object"); 7368unifiedBinaryOps(symbol, "nuint?", "string"); 7369unifiedBinaryOps(symbol, "nuint?", "void*", null, null, getBadBinaryOpsDiagnostics(symbol, "nuint?", "void*"), getBadBinaryOpsDiagnostics(symbol, "void*", "nuint?")); 7370unifiedBinaryOps(symbol, "nuint?", "bool"); 7371unifiedBinaryOps(symbol, "nuint?", "char", $"bool nuint.{name}(nuint left, nuint right)"); 7372unifiedBinaryOps(symbol, "nuint?", "sbyte", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint?", "sbyte"), getAmbiguousBinaryOpsDiagnostics(symbol, "sbyte", "nuint?")); 7373unifiedBinaryOps(symbol, "nuint?", "byte", $"bool nuint.{name}(nuint left, nuint right)"); 7374unifiedBinaryOps(symbol, "nuint?", "short", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint?", "short"), getAmbiguousBinaryOpsDiagnostics(symbol, "short", "nuint?")); 7375unifiedBinaryOps(symbol, "nuint?", "ushort", $"bool nuint.{name}(nuint left, nuint right)"); 7376unifiedBinaryOps(symbol, "nuint?", "int", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint?", "int"), getAmbiguousBinaryOpsDiagnostics(symbol, "int", "nuint?")); 7377unifiedBinaryOps(symbol, "nuint?", "uint", $"bool nuint.{name}(nuint left, nuint right)"); 7378unifiedBinaryOps(symbol, "nuint?", "nint", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint?", "nint"), getAmbiguousBinaryOpsDiagnostics(symbol, "nint", "nuint?")); 7379unifiedBinaryOps(symbol, "nuint?", "nuint", $"bool nuint.{name}(nuint left, nuint right)"); 7380unifiedBinaryOps(symbol, "nuint?", "long", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint?", "long"), getAmbiguousBinaryOpsDiagnostics(symbol, "long", "nuint?")); 7381unifiedBinaryOps(symbol, "nuint?", "ulong", $"bool ulong.{name}(ulong left, ulong right)"); 7382unifiedBinaryOps(symbol, "nuint?", "float", $"bool float.{name}(float left, float right)"); 7383unifiedBinaryOps(symbol, "nuint?", "double", $"bool double.{name}(double left, double right)"); 7384unifiedBinaryOps(symbol, "nuint?", "decimal", $"bool decimal.{name}(decimal left, decimal right)"); 7385unifiedBinaryOps(symbol, "nuint?", "System.IntPtr", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint?", "nint"), getAmbiguousBinaryOpsDiagnostics(symbol, "nint", "nuint?")); 7386unifiedBinaryOps(symbol, "nuint?", "System.UIntPtr", $"bool nuint.{name}(nuint left, nuint right)"); 7389unifiedBinaryOps(symbol, "nuint?", "bool?"); 7390unifiedBinaryOps(symbol, "nuint?", "char?", $"bool nuint.{name}(nuint left, nuint right)"); 7391unifiedBinaryOps(symbol, "nuint?", "sbyte?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint?", "sbyte?"), getAmbiguousBinaryOpsDiagnostics(symbol, "sbyte?", "nuint?")); 7392unifiedBinaryOps(symbol, "nuint?", "byte?", $"bool nuint.{name}(nuint left, nuint right)"); 7393unifiedBinaryOps(symbol, "nuint?", "short?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint?", "short?"), getAmbiguousBinaryOpsDiagnostics(symbol, "short?", "nuint?")); 7394unifiedBinaryOps(symbol, "nuint?", "ushort?", $"bool nuint.{name}(nuint left, nuint right)"); 7395unifiedBinaryOps(symbol, "nuint?", "int?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint?", "int?"), getAmbiguousBinaryOpsDiagnostics(symbol, "int?", "nuint?")); 7396unifiedBinaryOps(symbol, "nuint?", "uint?", $"bool nuint.{name}(nuint left, nuint right)"); 7397unifiedBinaryOps(symbol, "nuint?", "nint?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint?", "nint?"), getAmbiguousBinaryOpsDiagnostics(symbol, "nint?", "nuint?")); 7398unifiedBinaryOps(symbol, "nuint?", "nuint?", $"bool nuint.{name}(nuint left, nuint right)"); 7399unifiedBinaryOps(symbol, "nuint?", "long?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint?", "long?"), getAmbiguousBinaryOpsDiagnostics(symbol, "long?", "nuint?")); 7400unifiedBinaryOps(symbol, "nuint?", "ulong?", $"bool ulong.{name}(ulong left, ulong right)"); 7401unifiedBinaryOps(symbol, "nuint?", "float?", $"bool float.{name}(float left, float right)"); 7402unifiedBinaryOps(symbol, "nuint?", "double?", $"bool double.{name}(double left, double right)"); 7403unifiedBinaryOps(symbol, "nuint?", "decimal?", $"bool decimal.{name}(decimal left, decimal right)"); 7404unifiedBinaryOps(symbol, "nuint?", "System.IntPtr?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint?", "nint?"), getAmbiguousBinaryOpsDiagnostics(symbol, "nint?", "nuint?")); 7405unifiedBinaryOps(symbol, "nuint?", "System.UIntPtr?", $"bool nuint.{name}(nuint left, nuint right)"); 7411unifiedBinaryOps(symbol, "nint", "object"); 7412unifiedBinaryOps(symbol, "nint", "string", $"string string.{name}(object left, string right)", $"string string.{name}(string left, object right)"); 7413unifiedBinaryOps(symbol, "nint", "void*", $"void* void*.{name}(long left, void* right)", $"void* void*.{name}(void* left, long right)", new[] { Diagnostic(ErrorCode.ERR_VoidError, "x + y") }); 7414unifiedBinaryOps(symbol, "nint", "bool"); 7415unifiedBinaryOps(symbol, "nint", "char", $"nint nint.{name}(nint left, nint right)"); 7416unifiedBinaryOps(symbol, "nint", "sbyte", $"nint nint.{name}(nint left, nint right)"); 7417unifiedBinaryOps(symbol, "nint", "byte", $"nint nint.{name}(nint left, nint right)"); 7418unifiedBinaryOps(symbol, "nint", "short", $"nint nint.{name}(nint left, nint right)"); 7419unifiedBinaryOps(symbol, "nint", "ushort", $"nint nint.{name}(nint left, nint right)"); 7420unifiedBinaryOps(symbol, "nint", "int", $"nint nint.{name}(nint left, nint right)"); 7421unifiedBinaryOps(symbol, "nint", "uint", $"long long.{name}(long left, long right)"); 7422unifiedBinaryOps(symbol, "nint", "nint", $"nint nint.{name}(nint left, nint right)"); 7423unifiedBinaryOps(symbol, "nint", "nuint", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nint", "nuint"), getAmbiguousBinaryOpsDiagnostics(symbol, "nuint", "nint")); 7424unifiedBinaryOps(symbol, "nint", "long", $"long long.{name}(long left, long right)"); 7425unifiedBinaryOps(symbol, "nint", "ulong", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nint", "ulong"), getAmbiguousBinaryOpsDiagnostics(symbol, "ulong", "nint")); 7426unifiedBinaryOps(symbol, "nint", "float", $"float float.{name}(float left, float right)"); 7427unifiedBinaryOps(symbol, "nint", "double", $"double double.{name}(double left, double right)"); 7428unifiedBinaryOps(symbol, "nint", "decimal", $"decimal decimal.{name}(decimal left, decimal right)"); 7429unifiedBinaryOps(symbol, "nint", "System.IntPtr", $"nint nint.{name}(nint left, nint right)"); 7430unifiedBinaryOps(symbol, "nint", "System.UIntPtr", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nint", "nuint"), getAmbiguousBinaryOpsDiagnostics(symbol, "nuint", "nint")); 7433unifiedBinaryOps(symbol, "nint", "bool?"); 7434unifiedBinaryOps(symbol, "nint", "char?", $"nint nint.{name}(nint left, nint right)"); 7435unifiedBinaryOps(symbol, "nint", "sbyte?", $"nint nint.{name}(nint left, nint right)"); 7436unifiedBinaryOps(symbol, "nint", "byte?", $"nint nint.{name}(nint left, nint right)"); 7437unifiedBinaryOps(symbol, "nint", "short?", $"nint nint.{name}(nint left, nint right)"); 7438unifiedBinaryOps(symbol, "nint", "ushort?", $"nint nint.{name}(nint left, nint right)"); 7439unifiedBinaryOps(symbol, "nint", "int?", $"nint nint.{name}(nint left, nint right)"); 7440unifiedBinaryOps(symbol, "nint", "uint?", $"long long.{name}(long left, long right)"); 7441unifiedBinaryOps(symbol, "nint", "nint?", $"nint nint.{name}(nint left, nint right)"); 7442unifiedBinaryOps(symbol, "nint", "nuint?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nint", "nuint?"), getAmbiguousBinaryOpsDiagnostics(symbol, "nuint?", "nint")); 7443unifiedBinaryOps(symbol, "nint", "long?", $"long long.{name}(long left, long right)"); 7444unifiedBinaryOps(symbol, "nint", "ulong?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nint", "ulong?"), getAmbiguousBinaryOpsDiagnostics(symbol, "ulong?", "nint")); 7445unifiedBinaryOps(symbol, "nint", "float?", $"float float.{name}(float left, float right)"); 7446unifiedBinaryOps(symbol, "nint", "double?", $"double double.{name}(double left, double right)"); 7447unifiedBinaryOps(symbol, "nint", "decimal?", $"decimal decimal.{name}(decimal left, decimal right)"); 7448unifiedBinaryOps(symbol, "nint", "System.IntPtr?", $"nint nint.{name}(nint left, nint right)"); 7449unifiedBinaryOps(symbol, "nint", "System.UIntPtr?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nint", "nuint?"), getAmbiguousBinaryOpsDiagnostics(symbol, "nuint?", "nint")); 7450unifiedBinaryOps(symbol, "nint", "object"); 7453unifiedBinaryOps(symbol, "nint?", "string", $"string string.{name}(object left, string right)", $"string string.{name}(string left, object right)"); 7454unifiedBinaryOps(symbol, "nint?", "void*", null, null, getBadBinaryOpsDiagnostics(symbol, "nint?", "void*", includeVoidError: true), getBadBinaryOpsDiagnostics(symbol, "void*", "nint?", includeVoidError: true)); 7455unifiedBinaryOps(symbol, "nint?", "bool"); 7456unifiedBinaryOps(symbol, "nint?", "char", $"nint nint.{name}(nint left, nint right)"); 7457unifiedBinaryOps(symbol, "nint?", "sbyte", $"nint nint.{name}(nint left, nint right)"); 7458unifiedBinaryOps(symbol, "nint?", "byte", $"nint nint.{name}(nint left, nint right)"); 7459unifiedBinaryOps(symbol, "nint?", "short", $"nint nint.{name}(nint left, nint right)"); 7460unifiedBinaryOps(symbol, "nint?", "ushort", $"nint nint.{name}(nint left, nint right)"); 7461unifiedBinaryOps(symbol, "nint?", "int", $"nint nint.{name}(nint left, nint right)"); 7462unifiedBinaryOps(symbol, "nint?", "uint", $"long long.{name}(long left, long right)"); 7463unifiedBinaryOps(symbol, "nint?", "nint", $"nint nint.{name}(nint left, nint right)"); 7464unifiedBinaryOps(symbol, "nint?", "nuint", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nint?", "nuint"), getAmbiguousBinaryOpsDiagnostics(symbol, "nuint", "nint?")); 7465unifiedBinaryOps(symbol, "nint?", "long", $"long long.{name}(long left, long right)"); 7466unifiedBinaryOps(symbol, "nint?", "ulong", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nint?", "ulong"), getAmbiguousBinaryOpsDiagnostics(symbol, "ulong", "nint?")); 7467unifiedBinaryOps(symbol, "nint?", "float", $"float float.{name}(float left, float right)"); 7468unifiedBinaryOps(symbol, "nint?", "double", $"double double.{name}(double left, double right)"); 7469unifiedBinaryOps(symbol, "nint?", "decimal", $"decimal decimal.{name}(decimal left, decimal right)"); 7470unifiedBinaryOps(symbol, "nint?", "System.IntPtr", $"nint nint.{name}(nint left, nint right)"); 7471unifiedBinaryOps(symbol, "nint?", "System.UIntPtr", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nint?", "nuint"), getAmbiguousBinaryOpsDiagnostics(symbol, "nuint", "nint?")); 7474unifiedBinaryOps(symbol, "nint?", "bool?"); 7475unifiedBinaryOps(symbol, "nint?", "char?", $"nint nint.{name}(nint left, nint right)"); 7476unifiedBinaryOps(symbol, "nint?", "sbyte?", $"nint nint.{name}(nint left, nint right)"); 7477unifiedBinaryOps(symbol, "nint?", "byte?", $"nint nint.{name}(nint left, nint right)"); 7478unifiedBinaryOps(symbol, "nint?", "short?", $"nint nint.{name}(nint left, nint right)"); 7479unifiedBinaryOps(symbol, "nint?", "ushort?", $"nint nint.{name}(nint left, nint right)"); 7480unifiedBinaryOps(symbol, "nint?", "int?", $"nint nint.{name}(nint left, nint right)"); 7481unifiedBinaryOps(symbol, "nint?", "uint?", $"long long.{name}(long left, long right)"); 7482unifiedBinaryOps(symbol, "nint?", "nint?", $"nint nint.{name}(nint left, nint right)"); 7483unifiedBinaryOps(symbol, "nint?", "nuint?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nint?", "nuint?"), getAmbiguousBinaryOpsDiagnostics(symbol, "nuint?", "nint?")); 7484unifiedBinaryOps(symbol, "nint?", "long?", $"long long.{name}(long left, long right)"); 7485unifiedBinaryOps(symbol, "nint?", "ulong?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nint?", "ulong?"), getAmbiguousBinaryOpsDiagnostics(symbol, "ulong?", "nint?")); 7486unifiedBinaryOps(symbol, "nint?", "float?", $"float float.{name}(float left, float right)"); 7487unifiedBinaryOps(symbol, "nint?", "double?", $"double double.{name}(double left, double right)"); 7488unifiedBinaryOps(symbol, "nint?", "decimal?", $"decimal decimal.{name}(decimal left, decimal right)"); 7489unifiedBinaryOps(symbol, "nint?", "System.IntPtr?", $"nint nint.{name}(nint left, nint right)"); 7490unifiedBinaryOps(symbol, "nint?", "System.UIntPtr?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nint?", "nuint?"), getAmbiguousBinaryOpsDiagnostics(symbol, "nuint?", "nint?")); 7493unifiedBinaryOps(symbol, "nuint", "object"); 7494unifiedBinaryOps(symbol, "nuint", "string", $"string string.{name}(object left, string right)", $"string string.{name}(string left, object right)"); 7495unifiedBinaryOps(symbol, "nuint", "void*", $"void* void*.{name}(ulong left, void* right)", $"void* void*.{name}(void* left, ulong right)", new[] { Diagnostic(ErrorCode.ERR_VoidError, "x + y") }); 7496unifiedBinaryOps(symbol, "nuint", "bool"); 7497unifiedBinaryOps(symbol, "nuint", "char", $"nuint nuint.{name}(nuint left, nuint right)"); 7498unifiedBinaryOps(symbol, "nuint", "sbyte", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint", "sbyte"), getAmbiguousBinaryOpsDiagnostics(symbol, "sbyte", "nuint")); 7499unifiedBinaryOps(symbol, "nuint", "byte", $"nuint nuint.{name}(nuint left, nuint right)"); 7500unifiedBinaryOps(symbol, "nuint", "short", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint", "short"), getAmbiguousBinaryOpsDiagnostics(symbol, "short", "nuint")); 7501unifiedBinaryOps(symbol, "nuint", "ushort", $"nuint nuint.{name}(nuint left, nuint right)"); 7502unifiedBinaryOps(symbol, "nuint", "int", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint", "int"), getAmbiguousBinaryOpsDiagnostics(symbol, "int", "nuint")); 7503unifiedBinaryOps(symbol, "nuint", "uint", $"nuint nuint.{name}(nuint left, nuint right)"); 7504unifiedBinaryOps(symbol, "nuint", "nint", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint", "nint"), getAmbiguousBinaryOpsDiagnostics(symbol, "nint", "nuint")); 7505unifiedBinaryOps(symbol, "nuint", "nuint", $"nuint nuint.{name}(nuint left, nuint right)"); 7506unifiedBinaryOps(symbol, "nuint", "long", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint", "long"), getAmbiguousBinaryOpsDiagnostics(symbol, "long", "nuint")); 7507unifiedBinaryOps(symbol, "nuint", "ulong", $"ulong ulong.{name}(ulong left, ulong right)"); 7508unifiedBinaryOps(symbol, "nuint", "float", $"float float.{name}(float left, float right)"); 7509unifiedBinaryOps(symbol, "nuint", "double", $"double double.{name}(double left, double right)"); 7510unifiedBinaryOps(symbol, "nuint", "decimal", $"decimal decimal.{name}(decimal left, decimal right)"); 7511unifiedBinaryOps(symbol, "nuint", "System.IntPtr", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint", "nint"), getAmbiguousBinaryOpsDiagnostics(symbol, "nint", "nuint")); 7512unifiedBinaryOps(symbol, "nuint", "System.UIntPtr", $"nuint nuint.{name}(nuint left, nuint right)"); 7515unifiedBinaryOps(symbol, "nuint", "bool?"); 7516unifiedBinaryOps(symbol, "nuint", "char?", $"nuint nuint.{name}(nuint left, nuint right)"); 7517unifiedBinaryOps(symbol, "nuint", "sbyte?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint", "sbyte?"), getAmbiguousBinaryOpsDiagnostics(symbol, "sbyte?", "nuint")); 7518unifiedBinaryOps(symbol, "nuint", "byte?", $"nuint nuint.{name}(nuint left, nuint right)"); 7519unifiedBinaryOps(symbol, "nuint", "short?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint", "short?"), getAmbiguousBinaryOpsDiagnostics(symbol, "short?", "nuint")); 7520unifiedBinaryOps(symbol, "nuint", "ushort?", $"nuint nuint.{name}(nuint left, nuint right)"); 7521unifiedBinaryOps(symbol, "nuint", "int?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint", "int?"), getAmbiguousBinaryOpsDiagnostics(symbol, "int?", "nuint")); 7522unifiedBinaryOps(symbol, "nuint", "uint?", $"nuint nuint.{name}(nuint left, nuint right)"); 7523unifiedBinaryOps(symbol, "nuint", "nint?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint", "nint?"), getAmbiguousBinaryOpsDiagnostics(symbol, "nint?", "nuint")); 7524unifiedBinaryOps(symbol, "nuint", "nuint?", $"nuint nuint.{name}(nuint left, nuint right)"); 7525unifiedBinaryOps(symbol, "nuint", "long?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint", "long?"), getAmbiguousBinaryOpsDiagnostics(symbol, "long?", "nuint")); 7526unifiedBinaryOps(symbol, "nuint", "ulong?", $"ulong ulong.{name}(ulong left, ulong right)"); 7527unifiedBinaryOps(symbol, "nuint", "float?", $"float float.{name}(float left, float right)"); 7528unifiedBinaryOps(symbol, "nuint", "double?", $"double double.{name}(double left, double right)"); 7529unifiedBinaryOps(symbol, "nuint", "decimal?", $"decimal decimal.{name}(decimal left, decimal right)"); 7530unifiedBinaryOps(symbol, "nuint", "System.IntPtr?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint", "nint?"), getAmbiguousBinaryOpsDiagnostics(symbol, "nint?", "nuint")); 7531unifiedBinaryOps(symbol, "nuint", "System.UIntPtr?", $"nuint nuint.{name}(nuint left, nuint right)"); 7534unifiedBinaryOps(symbol, "nuint?", "object"); 7535unifiedBinaryOps(symbol, "nuint?", "string", $"string string.{name}(object left, string right)", $"string string.{name}(string left, object right)"); 7536unifiedBinaryOps(symbol, "nuint?", "void*", null, null, getBadBinaryOpsDiagnostics(symbol, "nuint?", "void*", includeVoidError: true), getBadBinaryOpsDiagnostics(symbol, "void*", "nuint?", includeVoidError: true)); 7537unifiedBinaryOps(symbol, "nuint?", "bool"); 7538unifiedBinaryOps(symbol, "nuint?", "char", $"nuint nuint.{name}(nuint left, nuint right)"); 7539unifiedBinaryOps(symbol, "nuint?", "sbyte", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint?", "sbyte"), getAmbiguousBinaryOpsDiagnostics(symbol, "sbyte", "nuint?")); 7540unifiedBinaryOps(symbol, "nuint?", "byte", $"nuint nuint.{name}(nuint left, nuint right)"); 7541unifiedBinaryOps(symbol, "nuint?", "short", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint?", "short"), getAmbiguousBinaryOpsDiagnostics(symbol, "short", "nuint?")); 7542unifiedBinaryOps(symbol, "nuint?", "ushort", $"nuint nuint.{name}(nuint left, nuint right)"); 7543unifiedBinaryOps(symbol, "nuint?", "int", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint?", "int"), getAmbiguousBinaryOpsDiagnostics(symbol, "int", "nuint?")); 7544unifiedBinaryOps(symbol, "nuint?", "uint", $"nuint nuint.{name}(nuint left, nuint right)"); 7545unifiedBinaryOps(symbol, "nuint?", "nint", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint?", "nint"), getAmbiguousBinaryOpsDiagnostics(symbol, "nint", "nuint?")); 7546unifiedBinaryOps(symbol, "nuint?", "nuint", $"nuint nuint.{name}(nuint left, nuint right)"); 7547unifiedBinaryOps(symbol, "nuint?", "long", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint?", "long"), getAmbiguousBinaryOpsDiagnostics(symbol, "long", "nuint?")); 7548unifiedBinaryOps(symbol, "nuint?", "ulong", $"ulong ulong.{name}(ulong left, ulong right)"); 7549unifiedBinaryOps(symbol, "nuint?", "float", $"float float.{name}(float left, float right)"); 7550unifiedBinaryOps(symbol, "nuint?", "double", $"double double.{name}(double left, double right)"); 7551unifiedBinaryOps(symbol, "nuint?", "decimal", $"decimal decimal.{name}(decimal left, decimal right)"); 7552unifiedBinaryOps(symbol, "nuint?", "System.IntPtr", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint?", "nint"), getAmbiguousBinaryOpsDiagnostics(symbol, "nint", "nuint?")); 7553unifiedBinaryOps(symbol, "nuint?", "System.UIntPtr", $"nuint nuint.{name}(nuint left, nuint right)"); 7556unifiedBinaryOps(symbol, "nuint?", "bool?"); 7557unifiedBinaryOps(symbol, "nuint?", "char?", $"nuint nuint.{name}(nuint left, nuint right)"); 7558unifiedBinaryOps(symbol, "nuint?", "sbyte?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint?", "sbyte?"), getAmbiguousBinaryOpsDiagnostics(symbol, "sbyte?", "nuint?")); 7559unifiedBinaryOps(symbol, "nuint?", "byte?", $"nuint nuint.{name}(nuint left, nuint right)"); 7560unifiedBinaryOps(symbol, "nuint?", "short?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint?", "short?"), getAmbiguousBinaryOpsDiagnostics(symbol, "short?", "nuint?")); 7561unifiedBinaryOps(symbol, "nuint?", "ushort?", $"nuint nuint.{name}(nuint left, nuint right)"); 7562unifiedBinaryOps(symbol, "nuint?", "int?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint?", "int?"), getAmbiguousBinaryOpsDiagnostics(symbol, "int?", "nuint?")); 7563unifiedBinaryOps(symbol, "nuint?", "uint?", $"nuint nuint.{name}(nuint left, nuint right)"); 7564unifiedBinaryOps(symbol, "nuint?", "nint?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint?", "nint?"), getAmbiguousBinaryOpsDiagnostics(symbol, "nint?", "nuint?")); 7565unifiedBinaryOps(symbol, "nuint?", "nuint?", $"nuint nuint.{name}(nuint left, nuint right)"); 7566unifiedBinaryOps(symbol, "nuint?", "long?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint?", "long?"), getAmbiguousBinaryOpsDiagnostics(symbol, "long?", "nuint?")); 7567unifiedBinaryOps(symbol, "nuint?", "ulong?", $"ulong ulong.{name}(ulong left, ulong right)"); 7568unifiedBinaryOps(symbol, "nuint?", "float?", $"float float.{name}(float left, float right)"); 7569unifiedBinaryOps(symbol, "nuint?", "double?", $"double double.{name}(double left, double right)"); 7570unifiedBinaryOps(symbol, "nuint?", "decimal?", $"decimal decimal.{name}(decimal left, decimal right)"); 7571unifiedBinaryOps(symbol, "nuint?", "System.IntPtr?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint?", "nint?"), getAmbiguousBinaryOpsDiagnostics(symbol, "nint?", "nuint?")); 7572unifiedBinaryOps(symbol, "nuint?", "System.UIntPtr?", $"nuint nuint.{name}(nuint left, nuint right)"); 7578unifiedBinaryOps(symbol, "nint", "object"); 7579unifiedBinaryOps(symbol, "nint", "string"); 7580unifiedBinaryOps(symbol, "nint", "void*", null, null, getBadBinaryOpsDiagnostics(symbol, "nint", "void*", includeVoidError: true), getBadBinaryOpsDiagnostics(symbol, "void*", "nint", includeVoidError: true)); 7581unifiedBinaryOps(symbol, "nint", "bool"); 7582unifiedBinaryOps(symbol, "nint", "char", $"nint nint.{name}(nint left, int right)", null); 7583unifiedBinaryOps(symbol, "nint", "sbyte", $"nint nint.{name}(nint left, int right)", null); 7584unifiedBinaryOps(symbol, "nint", "byte", $"nint nint.{name}(nint left, int right)", null); 7585unifiedBinaryOps(symbol, "nint", "short", $"nint nint.{name}(nint left, int right)", null); 7586unifiedBinaryOps(symbol, "nint", "ushort", $"nint nint.{name}(nint left, int right)", null); 7587unifiedBinaryOps(symbol, "nint", "int", $"nint nint.{name}(nint left, int right)", null); 7588unifiedBinaryOps(symbol, "nint", "uint"); 7589unifiedBinaryOps(symbol, "nint", "nint"); 7590unifiedBinaryOps(symbol, "nint", "nuint"); 7591unifiedBinaryOps(symbol, "nint", "long"); 7592unifiedBinaryOps(symbol, "nint", "ulong"); 7593unifiedBinaryOps(symbol, "nint", "float"); 7594unifiedBinaryOps(symbol, "nint", "double"); 7595unifiedBinaryOps(symbol, "nint", "decimal"); 7596unifiedBinaryOps(symbol, "nint", "System.IntPtr"); 7597unifiedBinaryOps(symbol, "nint", "System.UIntPtr"); 7600unifiedBinaryOps(symbol, "nint", "bool?"); 7601unifiedBinaryOps(symbol, "nint", "char?", $"nint nint.{name}(nint left, int right)", null); 7602unifiedBinaryOps(symbol, "nint", "sbyte?", $"nint nint.{name}(nint left, int right)", null); 7603unifiedBinaryOps(symbol, "nint", "byte?", $"nint nint.{name}(nint left, int right)", null); 7604unifiedBinaryOps(symbol, "nint", "short?", $"nint nint.{name}(nint left, int right)", null); 7605unifiedBinaryOps(symbol, "nint", "ushort?", $"nint nint.{name}(nint left, int right)", null); 7606unifiedBinaryOps(symbol, "nint", "int?", $"nint nint.{name}(nint left, int right)", null); 7607unifiedBinaryOps(symbol, "nint", "uint?"); 7608unifiedBinaryOps(symbol, "nint", "nint?"); 7609unifiedBinaryOps(symbol, "nint", "nuint?"); 7610unifiedBinaryOps(symbol, "nint", "long?"); 7611unifiedBinaryOps(symbol, "nint", "ulong?"); 7612unifiedBinaryOps(symbol, "nint", "float?"); 7613unifiedBinaryOps(symbol, "nint", "double?"); 7614unifiedBinaryOps(symbol, "nint", "decimal?"); 7615unifiedBinaryOps(symbol, "nint", "System.IntPtr?"); 7616unifiedBinaryOps(symbol, "nint", "System.UIntPtr?"); 7617unifiedBinaryOps(symbol, "nint", "object"); 7620unifiedBinaryOps(symbol, "nint?", "string"); 7621unifiedBinaryOps(symbol, "nint?", "void*", null, null, getBadBinaryOpsDiagnostics(symbol, "nint?", "void*", includeVoidError: true), getBadBinaryOpsDiagnostics(symbol, "void*", "nint?", includeVoidError: true)); 7622unifiedBinaryOps(symbol, "nint?", "bool"); 7623unifiedBinaryOps(symbol, "nint?", "char", $"nint nint.{name}(nint left, int right)", null); 7624unifiedBinaryOps(symbol, "nint?", "sbyte", $"nint nint.{name}(nint left, int right)", null); 7625unifiedBinaryOps(symbol, "nint?", "byte", $"nint nint.{name}(nint left, int right)", null); 7626unifiedBinaryOps(symbol, "nint?", "short", $"nint nint.{name}(nint left, int right)", null); 7627unifiedBinaryOps(symbol, "nint?", "ushort", $"nint nint.{name}(nint left, int right)", null); 7628unifiedBinaryOps(symbol, "nint?", "int", $"nint nint.{name}(nint left, int right)", null); 7629unifiedBinaryOps(symbol, "nint?", "uint"); 7630unifiedBinaryOps(symbol, "nint?", "nint"); 7631unifiedBinaryOps(symbol, "nint?", "nuint"); 7632unifiedBinaryOps(symbol, "nint?", "long"); 7633unifiedBinaryOps(symbol, "nint?", "ulong"); 7634unifiedBinaryOps(symbol, "nint?", "float"); 7635unifiedBinaryOps(symbol, "nint?", "double"); 7636unifiedBinaryOps(symbol, "nint?", "decimal"); 7637unifiedBinaryOps(symbol, "nint?", "System.IntPtr"); 7638unifiedBinaryOps(symbol, "nint?", "System.UIntPtr"); 7641unifiedBinaryOps(symbol, "nint?", "bool?"); 7642unifiedBinaryOps(symbol, "nint?", "char?", $"nint nint.{name}(nint left, int right)", null); 7643unifiedBinaryOps(symbol, "nint?", "sbyte?", $"nint nint.{name}(nint left, int right)", null); 7644unifiedBinaryOps(symbol, "nint?", "byte?", $"nint nint.{name}(nint left, int right)", null); 7645unifiedBinaryOps(symbol, "nint?", "short?", $"nint nint.{name}(nint left, int right)", null); 7646unifiedBinaryOps(symbol, "nint?", "ushort?", $"nint nint.{name}(nint left, int right)", null); 7647unifiedBinaryOps(symbol, "nint?", "int?", $"nint nint.{name}(nint left, int right)", null); 7648unifiedBinaryOps(symbol, "nint?", "uint?"); 7649unifiedBinaryOps(symbol, "nint?", "nint?"); 7650unifiedBinaryOps(symbol, "nint?", "nuint?"); 7651unifiedBinaryOps(symbol, "nint?", "long?"); 7652unifiedBinaryOps(symbol, "nint?", "ulong?"); 7653unifiedBinaryOps(symbol, "nint?", "float?"); 7654unifiedBinaryOps(symbol, "nint?", "double?"); 7655unifiedBinaryOps(symbol, "nint?", "decimal?"); 7656unifiedBinaryOps(symbol, "nint?", "System.IntPtr?"); 7657unifiedBinaryOps(symbol, "nint?", "System.UIntPtr?"); 7660unifiedBinaryOps(symbol, "nuint", "object"); 7661unifiedBinaryOps(symbol, "nuint", "string"); 7662unifiedBinaryOps(symbol, "nuint", "void*", null, null, getBadBinaryOpsDiagnostics(symbol, "nuint", "void*", includeVoidError: true), getBadBinaryOpsDiagnostics(symbol, "void*", "nuint", includeVoidError: true)); 7663unifiedBinaryOps(symbol, "nuint", "bool"); 7664unifiedBinaryOps(symbol, "nuint", "char", $"nuint nuint.{name}(nuint left, int right)", null); 7665unifiedBinaryOps(symbol, "nuint", "sbyte", $"nuint nuint.{name}(nuint left, int right)", null); 7666unifiedBinaryOps(symbol, "nuint", "byte", $"nuint nuint.{name}(nuint left, int right)", null); 7667unifiedBinaryOps(symbol, "nuint", "short", $"nuint nuint.{name}(nuint left, int right)", null); 7668unifiedBinaryOps(symbol, "nuint", "ushort", $"nuint nuint.{name}(nuint left, int right)", null); 7669unifiedBinaryOps(symbol, "nuint", "int", $"nuint nuint.{name}(nuint left, int right)", null); 7670unifiedBinaryOps(symbol, "nuint", "uint"); 7671unifiedBinaryOps(symbol, "nuint", "nint"); 7672unifiedBinaryOps(symbol, "nuint", "nuint"); 7673unifiedBinaryOps(symbol, "nuint", "long"); 7674unifiedBinaryOps(symbol, "nuint", "ulong"); 7675unifiedBinaryOps(symbol, "nuint", "float"); 7676unifiedBinaryOps(symbol, "nuint", "double"); 7677unifiedBinaryOps(symbol, "nuint", "decimal"); 7678unifiedBinaryOps(symbol, "nuint", "System.IntPtr"); 7679unifiedBinaryOps(symbol, "nuint", "System.UIntPtr"); 7682unifiedBinaryOps(symbol, "nuint", "bool?"); 7683unifiedBinaryOps(symbol, "nuint", "char?", $"nuint nuint.{name}(nuint left, int right)", null); 7684unifiedBinaryOps(symbol, "nuint", "sbyte?", $"nuint nuint.{name}(nuint left, int right)", null); 7685unifiedBinaryOps(symbol, "nuint", "byte?", $"nuint nuint.{name}(nuint left, int right)", null); 7686unifiedBinaryOps(symbol, "nuint", "short?", $"nuint nuint.{name}(nuint left, int right)", null); 7687unifiedBinaryOps(symbol, "nuint", "ushort?", $"nuint nuint.{name}(nuint left, int right)", null); 7688unifiedBinaryOps(symbol, "nuint", "int?", $"nuint nuint.{name}(nuint left, int right)", null); 7689unifiedBinaryOps(symbol, "nuint", "uint?"); 7690unifiedBinaryOps(symbol, "nuint", "nint?"); 7691unifiedBinaryOps(symbol, "nuint", "nuint?"); 7692unifiedBinaryOps(symbol, "nuint", "long?"); 7693unifiedBinaryOps(symbol, "nuint", "ulong?"); 7694unifiedBinaryOps(symbol, "nuint", "float?"); 7695unifiedBinaryOps(symbol, "nuint", "double?"); 7696unifiedBinaryOps(symbol, "nuint", "decimal?"); 7697unifiedBinaryOps(symbol, "nuint", "System.IntPtr?"); 7698unifiedBinaryOps(symbol, "nuint", "System.UIntPtr?"); 7701unifiedBinaryOps(symbol, "nuint?", "object"); 7702unifiedBinaryOps(symbol, "nuint?", "string"); 7703unifiedBinaryOps(symbol, "nuint?", "void*", null, null, getBadBinaryOpsDiagnostics(symbol, "nuint?", "void*", includeVoidError: true), getBadBinaryOpsDiagnostics(symbol, "void*", "nuint?", includeVoidError: true)); 7704unifiedBinaryOps(symbol, "nuint?", "bool"); 7705unifiedBinaryOps(symbol, "nuint?", "char", $"nuint nuint.{name}(nuint left, int right)", null); 7706unifiedBinaryOps(symbol, "nuint?", "sbyte", $"nuint nuint.{name}(nuint left, int right)", null); 7707unifiedBinaryOps(symbol, "nuint?", "byte", $"nuint nuint.{name}(nuint left, int right)", null); 7708unifiedBinaryOps(symbol, "nuint?", "short", $"nuint nuint.{name}(nuint left, int right)", null); 7709unifiedBinaryOps(symbol, "nuint?", "ushort", $"nuint nuint.{name}(nuint left, int right)", null); 7710unifiedBinaryOps(symbol, "nuint?", "int", $"nuint nuint.{name}(nuint left, int right)", null); 7711unifiedBinaryOps(symbol, "nuint?", "uint"); 7712unifiedBinaryOps(symbol, "nuint?", "nint"); 7713unifiedBinaryOps(symbol, "nuint?", "nuint"); 7714unifiedBinaryOps(symbol, "nuint?", "long"); 7715unifiedBinaryOps(symbol, "nuint?", "ulong"); 7716unifiedBinaryOps(symbol, "nuint?", "float"); 7717unifiedBinaryOps(symbol, "nuint?", "double"); 7718unifiedBinaryOps(symbol, "nuint?", "decimal"); 7719unifiedBinaryOps(symbol, "nuint?", "System.IntPtr"); 7720unifiedBinaryOps(symbol, "nuint?", "System.UIntPtr"); 7723unifiedBinaryOps(symbol, "nuint?", "bool?"); 7724unifiedBinaryOps(symbol, "nuint?", "char?", $"nuint nuint.{name}(nuint left, int right)", null); 7725unifiedBinaryOps(symbol, "nuint?", "sbyte?", $"nuint nuint.{name}(nuint left, int right)", null); 7726unifiedBinaryOps(symbol, "nuint?", "byte?", $"nuint nuint.{name}(nuint left, int right)", null); 7727unifiedBinaryOps(symbol, "nuint?", "short?", $"nuint nuint.{name}(nuint left, int right)", null); 7728unifiedBinaryOps(symbol, "nuint?", "ushort?", $"nuint nuint.{name}(nuint left, int right)", null); 7729unifiedBinaryOps(symbol, "nuint?", "int?", $"nuint nuint.{name}(nuint left, int right)", null); 7730unifiedBinaryOps(symbol, "nuint?", "uint?"); 7731unifiedBinaryOps(symbol, "nuint?", "nint?"); 7732unifiedBinaryOps(symbol, "nuint?", "nuint?"); 7733unifiedBinaryOps(symbol, "nuint?", "long?"); 7734unifiedBinaryOps(symbol, "nuint?", "ulong?"); 7735unifiedBinaryOps(symbol, "nuint?", "float?"); 7736unifiedBinaryOps(symbol, "nuint?", "double?"); 7737unifiedBinaryOps(symbol, "nuint?", "decimal?"); 7738unifiedBinaryOps(symbol, "nuint?", "System.IntPtr?"); 7739unifiedBinaryOps(symbol, "nuint?", "System.UIntPtr?"); 7745unifiedBinaryOps(symbol, "nint", "object"); 7746unifiedBinaryOps(symbol, "nint", "string"); 7747unifiedBinaryOps(symbol, "nint", "void*", null, null, getBadBinaryOpsDiagnostics(symbol, "nint", "void*"), getBadBinaryOpsDiagnostics(symbol, "void*", "nint")); 7748unifiedBinaryOps(symbol, "nint", "bool"); 7749unifiedBinaryOps(symbol, "nint", "char", $"bool nint.{name}(nint left, nint right)"); 7750unifiedBinaryOps(symbol, "nint", "sbyte", $"bool nint.{name}(nint left, nint right)"); 7751unifiedBinaryOps(symbol, "nint", "byte", $"bool nint.{name}(nint left, nint right)"); 7752unifiedBinaryOps(symbol, "nint", "short", $"bool nint.{name}(nint left, nint right)"); 7753unifiedBinaryOps(symbol, "nint", "ushort", $"bool nint.{name}(nint left, nint right)"); 7754unifiedBinaryOps(symbol, "nint", "int", $"bool nint.{name}(nint left, nint right)"); 7755unifiedBinaryOps(symbol, "nint", "uint", $"bool long.{name}(long left, long right)"); 7756unifiedBinaryOps(symbol, "nint", "nint", $"bool nint.{name}(nint left, nint right)"); 7757unifiedBinaryOps(symbol, "nint", "nuint", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nint", "nuint"), getAmbiguousBinaryOpsDiagnostics(symbol, "nuint", "nint")); 7758unifiedBinaryOps(symbol, "nint", "long", $"bool long.{name}(long left, long right)"); 7759unifiedBinaryOps(symbol, "nint", "ulong", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nint", "ulong"), getAmbiguousBinaryOpsDiagnostics(symbol, "ulong", "nint")); 7760unifiedBinaryOps(symbol, "nint", "float", $"bool float.{name}(float left, float right)"); 7761unifiedBinaryOps(symbol, "nint", "double", $"bool double.{name}(double left, double right)"); 7762unifiedBinaryOps(symbol, "nint", "decimal", $"bool decimal.{name}(decimal left, decimal right)"); 7763unifiedBinaryOps(symbol, "nint", "System.IntPtr", $"bool nint.{name}(nint left, nint right)"); 7764unifiedBinaryOps(symbol, "nint", "System.UIntPtr", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nint", "nuint"), getAmbiguousBinaryOpsDiagnostics(symbol, "nuint", "nint")); 7767unifiedBinaryOps(symbol, "nint", "bool?"); 7768unifiedBinaryOps(symbol, "nint", "char?", $"bool nint.{name}(nint left, nint right)"); 7769unifiedBinaryOps(symbol, "nint", "sbyte?", $"bool nint.{name}(nint left, nint right)"); 7770unifiedBinaryOps(symbol, "nint", "byte?", $"bool nint.{name}(nint left, nint right)"); 7771unifiedBinaryOps(symbol, "nint", "short?", $"bool nint.{name}(nint left, nint right)"); 7772unifiedBinaryOps(symbol, "nint", "ushort?", $"bool nint.{name}(nint left, nint right)"); 7773unifiedBinaryOps(symbol, "nint", "int?", $"bool nint.{name}(nint left, nint right)"); 7774unifiedBinaryOps(symbol, "nint", "uint?", $"bool long.{name}(long left, long right)"); 7775unifiedBinaryOps(symbol, "nint", "nint?", $"bool nint.{name}(nint left, nint right)"); 7776unifiedBinaryOps(symbol, "nint", "nuint?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nint", "nuint?"), getAmbiguousBinaryOpsDiagnostics(symbol, "nuint?", "nint")); 7777unifiedBinaryOps(symbol, "nint", "long?", $"bool long.{name}(long left, long right)"); 7778unifiedBinaryOps(symbol, "nint", "ulong?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nint", "ulong?"), getAmbiguousBinaryOpsDiagnostics(symbol, "ulong?", "nint")); 7779unifiedBinaryOps(symbol, "nint", "float?", $"bool float.{name}(float left, float right)"); 7780unifiedBinaryOps(symbol, "nint", "double?", $"bool double.{name}(double left, double right)"); 7781unifiedBinaryOps(symbol, "nint", "decimal?", $"bool decimal.{name}(decimal left, decimal right)"); 7782unifiedBinaryOps(symbol, "nint", "System.IntPtr?", $"bool nint.{name}(nint left, nint right)"); 7783unifiedBinaryOps(symbol, "nint", "System.UIntPtr?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nint", "nuint?"), getAmbiguousBinaryOpsDiagnostics(symbol, "nuint?", "nint")); 7784unifiedBinaryOps(symbol, "nint", "object"); 7787unifiedBinaryOps(symbol, "nint?", "string"); 7788unifiedBinaryOps(symbol, "nint?", "void*", null, null, getBadBinaryOpsDiagnostics(symbol, "nint?", "void*"), getBadBinaryOpsDiagnostics(symbol, "void*", "nint?")); 7789unifiedBinaryOps(symbol, "nint?", "bool"); 7790unifiedBinaryOps(symbol, "nint?", "char", $"bool nint.{name}(nint left, nint right)"); 7791unifiedBinaryOps(symbol, "nint?", "sbyte", $"bool nint.{name}(nint left, nint right)"); 7792unifiedBinaryOps(symbol, "nint?", "byte", $"bool nint.{name}(nint left, nint right)"); 7793unifiedBinaryOps(symbol, "nint?", "short", $"bool nint.{name}(nint left, nint right)"); 7794unifiedBinaryOps(symbol, "nint?", "ushort", $"bool nint.{name}(nint left, nint right)"); 7795unifiedBinaryOps(symbol, "nint?", "int", $"bool nint.{name}(nint left, nint right)"); 7796unifiedBinaryOps(symbol, "nint?", "uint", $"bool long.{name}(long left, long right)"); 7797unifiedBinaryOps(symbol, "nint?", "nint", $"bool nint.{name}(nint left, nint right)"); 7798unifiedBinaryOps(symbol, "nint?", "nuint", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nint?", "nuint"), getAmbiguousBinaryOpsDiagnostics(symbol, "nuint", "nint?")); 7799unifiedBinaryOps(symbol, "nint?", "long", $"bool long.{name}(long left, long right)"); 7800unifiedBinaryOps(symbol, "nint?", "ulong", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nint?", "ulong"), getAmbiguousBinaryOpsDiagnostics(symbol, "ulong", "nint?")); 7801unifiedBinaryOps(symbol, "nint?", "float", $"bool float.{name}(float left, float right)"); 7802unifiedBinaryOps(symbol, "nint?", "double", $"bool double.{name}(double left, double right)"); 7803unifiedBinaryOps(symbol, "nint?", "decimal", $"bool decimal.{name}(decimal left, decimal right)"); 7804unifiedBinaryOps(symbol, "nint?", "System.IntPtr", $"bool nint.{name}(nint left, nint right)"); 7805unifiedBinaryOps(symbol, "nint?", "System.UIntPtr", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nint?", "nuint"), getAmbiguousBinaryOpsDiagnostics(symbol, "nuint", "nint?")); 7808unifiedBinaryOps(symbol, "nint?", "bool?"); 7809unifiedBinaryOps(symbol, "nint?", "char?", $"bool nint.{name}(nint left, nint right)"); 7810unifiedBinaryOps(symbol, "nint?", "sbyte?", $"bool nint.{name}(nint left, nint right)"); 7811unifiedBinaryOps(symbol, "nint?", "byte?", $"bool nint.{name}(nint left, nint right)"); 7812unifiedBinaryOps(symbol, "nint?", "short?", $"bool nint.{name}(nint left, nint right)"); 7813unifiedBinaryOps(symbol, "nint?", "ushort?", $"bool nint.{name}(nint left, nint right)"); 7814unifiedBinaryOps(symbol, "nint?", "int?", $"bool nint.{name}(nint left, nint right)"); 7815unifiedBinaryOps(symbol, "nint?", "uint?", $"bool long.{name}(long left, long right)"); 7816unifiedBinaryOps(symbol, "nint?", "nint?", $"bool nint.{name}(nint left, nint right)"); 7817unifiedBinaryOps(symbol, "nint?", "nuint?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nint?", "nuint?"), getAmbiguousBinaryOpsDiagnostics(symbol, "nuint?", "nint?")); 7818unifiedBinaryOps(symbol, "nint?", "long?", $"bool long.{name}(long left, long right)"); 7819unifiedBinaryOps(symbol, "nint?", "ulong?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nint?", "ulong?"), getAmbiguousBinaryOpsDiagnostics(symbol, "ulong?", "nint?")); 7820unifiedBinaryOps(symbol, "nint?", "float?", $"bool float.{name}(float left, float right)"); 7821unifiedBinaryOps(symbol, "nint?", "double?", $"bool double.{name}(double left, double right)"); 7822unifiedBinaryOps(symbol, "nint?", "decimal?", $"bool decimal.{name}(decimal left, decimal right)"); 7823unifiedBinaryOps(symbol, "nint?", "System.IntPtr?", $"bool nint.{name}(nint left, nint right)"); 7824unifiedBinaryOps(symbol, "nint?", "System.UIntPtr?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nint?", "nuint?"), getAmbiguousBinaryOpsDiagnostics(symbol, "nuint?", "nint?")); 7827unifiedBinaryOps(symbol, "nuint", "object"); 7828unifiedBinaryOps(symbol, "nuint", "string"); 7829unifiedBinaryOps(symbol, "nuint", "void*", null, null, getBadBinaryOpsDiagnostics(symbol, "nuint", "void*"), getBadBinaryOpsDiagnostics(symbol, "void*", "nuint")); 7830unifiedBinaryOps(symbol, "nuint", "bool"); 7831unifiedBinaryOps(symbol, "nuint", "char", $"bool nuint.{name}(nuint left, nuint right)"); 7832unifiedBinaryOps(symbol, "nuint", "sbyte", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint", "sbyte"), getAmbiguousBinaryOpsDiagnostics(symbol, "sbyte", "nuint")); 7833unifiedBinaryOps(symbol, "nuint", "byte", $"bool nuint.{name}(nuint left, nuint right)"); 7834unifiedBinaryOps(symbol, "nuint", "short", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint", "short"), getAmbiguousBinaryOpsDiagnostics(symbol, "short", "nuint")); 7835unifiedBinaryOps(symbol, "nuint", "ushort", $"bool nuint.{name}(nuint left, nuint right)"); 7836unifiedBinaryOps(symbol, "nuint", "int", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint", "int"), getAmbiguousBinaryOpsDiagnostics(symbol, "int", "nuint")); 7837unifiedBinaryOps(symbol, "nuint", "uint", $"bool nuint.{name}(nuint left, nuint right)"); 7838unifiedBinaryOps(symbol, "nuint", "nint", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint", "nint"), getAmbiguousBinaryOpsDiagnostics(symbol, "nint", "nuint")); 7839unifiedBinaryOps(symbol, "nuint", "nuint", $"bool nuint.{name}(nuint left, nuint right)"); 7840unifiedBinaryOps(symbol, "nuint", "long", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint", "long"), getAmbiguousBinaryOpsDiagnostics(symbol, "long", "nuint")); 7841unifiedBinaryOps(symbol, "nuint", "ulong", $"bool ulong.{name}(ulong left, ulong right)"); 7842unifiedBinaryOps(symbol, "nuint", "float", $"bool float.{name}(float left, float right)"); 7843unifiedBinaryOps(symbol, "nuint", "double", $"bool double.{name}(double left, double right)"); 7844unifiedBinaryOps(symbol, "nuint", "decimal", $"bool decimal.{name}(decimal left, decimal right)"); 7845unifiedBinaryOps(symbol, "nuint", "System.IntPtr", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint", "nint"), getAmbiguousBinaryOpsDiagnostics(symbol, "nint", "nuint")); 7846unifiedBinaryOps(symbol, "nuint", "System.UIntPtr", $"bool nuint.{name}(nuint left, nuint right)"); 7849unifiedBinaryOps(symbol, "nuint", "bool?"); 7850unifiedBinaryOps(symbol, "nuint", "char?", $"bool nuint.{name}(nuint left, nuint right)"); 7851unifiedBinaryOps(symbol, "nuint", "sbyte?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint", "sbyte?"), getAmbiguousBinaryOpsDiagnostics(symbol, "sbyte?", "nuint")); 7852unifiedBinaryOps(symbol, "nuint", "byte?", $"bool nuint.{name}(nuint left, nuint right)"); 7853unifiedBinaryOps(symbol, "nuint", "short?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint", "short?"), getAmbiguousBinaryOpsDiagnostics(symbol, "short?", "nuint")); 7854unifiedBinaryOps(symbol, "nuint", "ushort?", $"bool nuint.{name}(nuint left, nuint right)"); 7855unifiedBinaryOps(symbol, "nuint", "int?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint", "int?"), getAmbiguousBinaryOpsDiagnostics(symbol, "int?", "nuint")); 7856unifiedBinaryOps(symbol, "nuint", "uint?", $"bool nuint.{name}(nuint left, nuint right)"); 7857unifiedBinaryOps(symbol, "nuint", "nint?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint", "nint?"), getAmbiguousBinaryOpsDiagnostics(symbol, "nint?", "nuint")); 7858unifiedBinaryOps(symbol, "nuint", "nuint?", $"bool nuint.{name}(nuint left, nuint right)"); 7859unifiedBinaryOps(symbol, "nuint", "long?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint", "long?"), getAmbiguousBinaryOpsDiagnostics(symbol, "long?", "nuint")); 7860unifiedBinaryOps(symbol, "nuint", "ulong?", $"bool ulong.{name}(ulong left, ulong right)"); 7861unifiedBinaryOps(symbol, "nuint", "float?", $"bool float.{name}(float left, float right)"); 7862unifiedBinaryOps(symbol, "nuint", "double?", $"bool double.{name}(double left, double right)"); 7863unifiedBinaryOps(symbol, "nuint", "decimal?", $"bool decimal.{name}(decimal left, decimal right)"); 7864unifiedBinaryOps(symbol, "nuint", "System.IntPtr?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint", "nint?"), getAmbiguousBinaryOpsDiagnostics(symbol, "nint?", "nuint")); 7865unifiedBinaryOps(symbol, "nuint", "System.UIntPtr?", $"bool nuint.{name}(nuint left, nuint right)"); 7868unifiedBinaryOps(symbol, "nuint?", "object"); 7869unifiedBinaryOps(symbol, "nuint?", "string"); 7870unifiedBinaryOps(symbol, "nuint?", "void*", null, null, getBadBinaryOpsDiagnostics(symbol, "nuint?", "void*"), getBadBinaryOpsDiagnostics(symbol, "void*", "nuint?")); 7871unifiedBinaryOps(symbol, "nuint?", "bool"); 7872unifiedBinaryOps(symbol, "nuint?", "char", $"bool nuint.{name}(nuint left, nuint right)"); 7873unifiedBinaryOps(symbol, "nuint?", "sbyte", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint?", "sbyte"), getAmbiguousBinaryOpsDiagnostics(symbol, "sbyte", "nuint?")); 7874unifiedBinaryOps(symbol, "nuint?", "byte", $"bool nuint.{name}(nuint left, nuint right)"); 7875unifiedBinaryOps(symbol, "nuint?", "short", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint?", "short"), getAmbiguousBinaryOpsDiagnostics(symbol, "short", "nuint?")); 7876unifiedBinaryOps(symbol, "nuint?", "ushort", $"bool nuint.{name}(nuint left, nuint right)"); 7877unifiedBinaryOps(symbol, "nuint?", "int", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint?", "int"), getAmbiguousBinaryOpsDiagnostics(symbol, "int", "nuint?")); 7878unifiedBinaryOps(symbol, "nuint?", "uint", $"bool nuint.{name}(nuint left, nuint right)"); 7879unifiedBinaryOps(symbol, "nuint?", "nint", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint?", "nint"), getAmbiguousBinaryOpsDiagnostics(symbol, "nint", "nuint?")); 7880unifiedBinaryOps(symbol, "nuint?", "nuint", $"bool nuint.{name}(nuint left, nuint right)"); 7881unifiedBinaryOps(symbol, "nuint?", "long", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint?", "long"), getAmbiguousBinaryOpsDiagnostics(symbol, "long", "nuint?")); 7882unifiedBinaryOps(symbol, "nuint?", "ulong", $"bool ulong.{name}(ulong left, ulong right)"); 7883unifiedBinaryOps(symbol, "nuint?", "float", $"bool float.{name}(float left, float right)"); 7884unifiedBinaryOps(symbol, "nuint?", "double", $"bool double.{name}(double left, double right)"); 7885unifiedBinaryOps(symbol, "nuint?", "decimal", $"bool decimal.{name}(decimal left, decimal right)"); 7886unifiedBinaryOps(symbol, "nuint?", "System.IntPtr", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint?", "nint"), getAmbiguousBinaryOpsDiagnostics(symbol, "nint", "nuint?")); 7887unifiedBinaryOps(symbol, "nuint?", "System.UIntPtr", $"bool nuint.{name}(nuint left, nuint right)"); 7890unifiedBinaryOps(symbol, "nuint?", "bool?"); 7891unifiedBinaryOps(symbol, "nuint?", "char?", $"bool nuint.{name}(nuint left, nuint right)"); 7892unifiedBinaryOps(symbol, "nuint?", "sbyte?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint?", "sbyte?"), getAmbiguousBinaryOpsDiagnostics(symbol, "sbyte?", "nuint?")); 7893unifiedBinaryOps(symbol, "nuint?", "byte?", $"bool nuint.{name}(nuint left, nuint right)"); 7894unifiedBinaryOps(symbol, "nuint?", "short?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint?", "short?"), getAmbiguousBinaryOpsDiagnostics(symbol, "short?", "nuint?")); 7895unifiedBinaryOps(symbol, "nuint?", "ushort?", $"bool nuint.{name}(nuint left, nuint right)"); 7896unifiedBinaryOps(symbol, "nuint?", "int?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint?", "int?"), getAmbiguousBinaryOpsDiagnostics(symbol, "int?", "nuint?")); 7897unifiedBinaryOps(symbol, "nuint?", "uint?", $"bool nuint.{name}(nuint left, nuint right)"); 7898unifiedBinaryOps(symbol, "nuint?", "nint?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint?", "nint?"), getAmbiguousBinaryOpsDiagnostics(symbol, "nint?", "nuint?")); 7899unifiedBinaryOps(symbol, "nuint?", "nuint?", $"bool nuint.{name}(nuint left, nuint right)"); 7900unifiedBinaryOps(symbol, "nuint?", "long?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint?", "long?"), getAmbiguousBinaryOpsDiagnostics(symbol, "long?", "nuint?")); 7901unifiedBinaryOps(symbol, "nuint?", "ulong?", $"bool ulong.{name}(ulong left, ulong right)"); 7902unifiedBinaryOps(symbol, "nuint?", "float?", $"bool float.{name}(float left, float right)"); 7903unifiedBinaryOps(symbol, "nuint?", "double?", $"bool double.{name}(double left, double right)"); 7904unifiedBinaryOps(symbol, "nuint?", "decimal?", $"bool decimal.{name}(decimal left, decimal right)"); 7905unifiedBinaryOps(symbol, "nuint?", "System.IntPtr?", null, null, getAmbiguousBinaryOpsDiagnostics(symbol, "nuint?", "nint?"), getAmbiguousBinaryOpsDiagnostics(symbol, "nint?", "nuint?")); 7906unifiedBinaryOps(symbol, "nuint?", "System.UIntPtr?", $"bool nuint.{name}(nuint left, nuint right)"); 7912unifiedBinaryOps(symbol, "nint", "object"); 7913unifiedBinaryOps(symbol, "nint", "string"); 7914unifiedBinaryOps(symbol, "nint", "void*", null, null, getBadBinaryOpsDiagnostics(symbol, "nint", "void*", includeVoidError: true), getBadBinaryOpsDiagnostics(symbol, "void*", "nint", includeVoidError: true)); 7915unifiedBinaryOps(symbol, "nint", "bool"); 7916unifiedBinaryOps(symbol, "nint", "char", $"nint nint.{name}(nint left, nint right)"); 7917unifiedBinaryOps(symbol, "nint", "sbyte", $"nint nint.{name}(nint left, nint right)"); 7918unifiedBinaryOps(symbol, "nint", "byte", $"nint nint.{name}(nint left, nint right)"); 7919unifiedBinaryOps(symbol, "nint", "short", $"nint nint.{name}(nint left, nint right)"); 7920unifiedBinaryOps(symbol, "nint", "ushort", $"nint nint.{name}(nint left, nint right)"); 7921unifiedBinaryOps(symbol, "nint", "int", $"nint nint.{name}(nint left, nint right)"); 7922unifiedBinaryOps(symbol, "nint", "uint", $"long long.{name}(long left, long right)"); 7923unifiedBinaryOps(symbol, "nint", "nint", $"nint nint.{name}(nint left, nint right)"); 7924unifiedBinaryOps(symbol, "nint", "nuint"); 7925unifiedBinaryOps(symbol, "nint", "long", $"long long.{name}(long left, long right)"); 7926unifiedBinaryOps(symbol, "nint", "ulong"); 7927unifiedBinaryOps(symbol, "nint", "float"); 7928unifiedBinaryOps(symbol, "nint", "double"); 7929unifiedBinaryOps(symbol, "nint", "decimal"); 7930unifiedBinaryOps(symbol, "nint", "System.IntPtr", $"nint nint.{name}(nint left, nint right)"); 7931unifiedBinaryOps(symbol, "nint", "System.UIntPtr"); 7934unifiedBinaryOps(symbol, "nint", "bool?"); 7935unifiedBinaryOps(symbol, "nint", "char?", $"nint nint.{name}(nint left, nint right)"); 7936unifiedBinaryOps(symbol, "nint", "sbyte?", $"nint nint.{name}(nint left, nint right)"); 7937unifiedBinaryOps(symbol, "nint", "byte?", $"nint nint.{name}(nint left, nint right)"); 7938unifiedBinaryOps(symbol, "nint", "short?", $"nint nint.{name}(nint left, nint right)"); 7939unifiedBinaryOps(symbol, "nint", "ushort?", $"nint nint.{name}(nint left, nint right)"); 7940unifiedBinaryOps(symbol, "nint", "int?", $"nint nint.{name}(nint left, nint right)"); 7941unifiedBinaryOps(symbol, "nint", "uint?", $"long long.{name}(long left, long right)"); 7942unifiedBinaryOps(symbol, "nint", "nint?", $"nint nint.{name}(nint left, nint right)"); 7943unifiedBinaryOps(symbol, "nint", "nuint?"); 7944unifiedBinaryOps(symbol, "nint", "long?", $"long long.{name}(long left, long right)"); 7945unifiedBinaryOps(symbol, "nint", "ulong?"); 7946unifiedBinaryOps(symbol, "nint", "float?"); 7947unifiedBinaryOps(symbol, "nint", "double?"); 7948unifiedBinaryOps(symbol, "nint", "decimal?"); 7949unifiedBinaryOps(symbol, "nint", "System.IntPtr?", $"nint nint.{name}(nint left, nint right)"); 7950unifiedBinaryOps(symbol, "nint", "System.UIntPtr?"); 7951unifiedBinaryOps(symbol, "nint", "object"); 7954unifiedBinaryOps(symbol, "nint?", "string"); 7955unifiedBinaryOps(symbol, "nint?", "void*", null, null, getBadBinaryOpsDiagnostics(symbol, "nint?", "void*", includeVoidError: true), getBadBinaryOpsDiagnostics(symbol, "void*", "nint?", includeVoidError: true)); 7956unifiedBinaryOps(symbol, "nint?", "bool"); 7957unifiedBinaryOps(symbol, "nint?", "char", $"nint nint.{name}(nint left, nint right)"); 7958unifiedBinaryOps(symbol, "nint?", "sbyte", $"nint nint.{name}(nint left, nint right)"); 7959unifiedBinaryOps(symbol, "nint?", "byte", $"nint nint.{name}(nint left, nint right)"); 7960unifiedBinaryOps(symbol, "nint?", "short", $"nint nint.{name}(nint left, nint right)"); 7961unifiedBinaryOps(symbol, "nint?", "ushort", $"nint nint.{name}(nint left, nint right)"); 7962unifiedBinaryOps(symbol, "nint?", "int", $"nint nint.{name}(nint left, nint right)"); 7963unifiedBinaryOps(symbol, "nint?", "uint", $"long long.{name}(long left, long right)"); 7964unifiedBinaryOps(symbol, "nint?", "nint", $"nint nint.{name}(nint left, nint right)"); 7965unifiedBinaryOps(symbol, "nint?", "nuint"); 7966unifiedBinaryOps(symbol, "nint?", "long", $"long long.{name}(long left, long right)"); 7967unifiedBinaryOps(symbol, "nint?", "ulong"); 7968unifiedBinaryOps(symbol, "nint?", "float"); 7969unifiedBinaryOps(symbol, "nint?", "double"); 7970unifiedBinaryOps(symbol, "nint?", "decimal"); 7971unifiedBinaryOps(symbol, "nint?", "System.IntPtr", $"nint nint.{name}(nint left, nint right)"); 7972unifiedBinaryOps(symbol, "nint?", "System.UIntPtr"); 7975unifiedBinaryOps(symbol, "nint?", "bool?"); 7976unifiedBinaryOps(symbol, "nint?", "char?", $"nint nint.{name}(nint left, nint right)"); 7977unifiedBinaryOps(symbol, "nint?", "sbyte?", $"nint nint.{name}(nint left, nint right)"); 7978unifiedBinaryOps(symbol, "nint?", "byte?", $"nint nint.{name}(nint left, nint right)"); 7979unifiedBinaryOps(symbol, "nint?", "short?", $"nint nint.{name}(nint left, nint right)"); 7980unifiedBinaryOps(symbol, "nint?", "ushort?", $"nint nint.{name}(nint left, nint right)"); 7981unifiedBinaryOps(symbol, "nint?", "int?", $"nint nint.{name}(nint left, nint right)"); 7982unifiedBinaryOps(symbol, "nint?", "uint?", $"long long.{name}(long left, long right)"); 7983unifiedBinaryOps(symbol, "nint?", "nint?", $"nint nint.{name}(nint left, nint right)"); 7984unifiedBinaryOps(symbol, "nint?", "nuint?"); 7985unifiedBinaryOps(symbol, "nint?", "long?", $"long long.{name}(long left, long right)"); 7986unifiedBinaryOps(symbol, "nint?", "ulong?"); 7987unifiedBinaryOps(symbol, "nint?", "float?"); 7988unifiedBinaryOps(symbol, "nint?", "double?"); 7989unifiedBinaryOps(symbol, "nint?", "decimal?"); 7990unifiedBinaryOps(symbol, "nint?", "System.IntPtr?", $"nint nint.{name}(nint left, nint right)"); 7991unifiedBinaryOps(symbol, "nint?", "System.UIntPtr?"); 7994unifiedBinaryOps(symbol, "nuint", "object"); 7995unifiedBinaryOps(symbol, "nuint", "string"); 7996unifiedBinaryOps(symbol, "nuint", "void*", null, null, getBadBinaryOpsDiagnostics(symbol, "nuint", "void*", includeVoidError: true), getBadBinaryOpsDiagnostics(symbol, "void*", "nuint", includeVoidError: true)); 7997unifiedBinaryOps(symbol, "nuint", "bool"); 7998unifiedBinaryOps(symbol, "nuint", "char", $"nuint nuint.{name}(nuint left, nuint right)"); 7999unifiedBinaryOps(symbol, "nuint", "sbyte"); 8000unifiedBinaryOps(symbol, "nuint", "byte", $"nuint nuint.{name}(nuint left, nuint right)"); 8001unifiedBinaryOps(symbol, "nuint", "short"); 8002unifiedBinaryOps(symbol, "nuint", "ushort", $"nuint nuint.{name}(nuint left, nuint right)"); 8003unifiedBinaryOps(symbol, "nuint", "int"); 8004unifiedBinaryOps(symbol, "nuint", "uint", $"nuint nuint.{name}(nuint left, nuint right)"); 8005unifiedBinaryOps(symbol, "nuint", "nint"); 8006unifiedBinaryOps(symbol, "nuint", "nuint", $"nuint nuint.{name}(nuint left, nuint right)"); 8007unifiedBinaryOps(symbol, "nuint", "long"); 8008unifiedBinaryOps(symbol, "nuint", "ulong", $"ulong ulong.{name}(ulong left, ulong right)"); 8009unifiedBinaryOps(symbol, "nuint", "float"); 8010unifiedBinaryOps(symbol, "nuint", "double"); 8011unifiedBinaryOps(symbol, "nuint", "decimal"); 8012unifiedBinaryOps(symbol, "nuint", "System.IntPtr"); 8013unifiedBinaryOps(symbol, "nuint", "System.UIntPtr", $"nuint nuint.{name}(nuint left, nuint right)"); 8016unifiedBinaryOps(symbol, "nuint", "bool?"); 8017unifiedBinaryOps(symbol, "nuint", "char?", $"nuint nuint.{name}(nuint left, nuint right)"); 8018unifiedBinaryOps(symbol, "nuint", "sbyte?"); 8019unifiedBinaryOps(symbol, "nuint", "byte?", $"nuint nuint.{name}(nuint left, nuint right)"); 8020unifiedBinaryOps(symbol, "nuint", "short?"); 8021unifiedBinaryOps(symbol, "nuint", "ushort?", $"nuint nuint.{name}(nuint left, nuint right)"); 8022unifiedBinaryOps(symbol, "nuint", "int?"); 8023unifiedBinaryOps(symbol, "nuint", "uint?", $"nuint nuint.{name}(nuint left, nuint right)"); 8024unifiedBinaryOps(symbol, "nuint", "nint?"); 8025unifiedBinaryOps(symbol, "nuint", "nuint?", $"nuint nuint.{name}(nuint left, nuint right)"); 8026unifiedBinaryOps(symbol, "nuint", "long?"); 8027unifiedBinaryOps(symbol, "nuint", "ulong?", $"ulong ulong.{name}(ulong left, ulong right)"); 8028unifiedBinaryOps(symbol, "nuint", "float?"); 8029unifiedBinaryOps(symbol, "nuint", "double?"); 8030unifiedBinaryOps(symbol, "nuint", "decimal?"); 8031unifiedBinaryOps(symbol, "nuint", "System.IntPtr?"); 8032unifiedBinaryOps(symbol, "nuint", "System.UIntPtr?", $"nuint nuint.{name}(nuint left, nuint right)"); 8035unifiedBinaryOps(symbol, "nuint?", "object"); 8036unifiedBinaryOps(symbol, "nuint?", "string"); 8037unifiedBinaryOps(symbol, "nuint?", "void*", null, null, getBadBinaryOpsDiagnostics(symbol, "nuint?", "void*", includeVoidError: true), getBadBinaryOpsDiagnostics(symbol, "void*", "nuint?", includeVoidError: true)); 8038unifiedBinaryOps(symbol, "nuint?", "bool"); 8039unifiedBinaryOps(symbol, "nuint?", "char", $"nuint nuint.{name}(nuint left, nuint right)"); 8040unifiedBinaryOps(symbol, "nuint?", "sbyte"); 8041unifiedBinaryOps(symbol, "nuint?", "byte", $"nuint nuint.{name}(nuint left, nuint right)"); 8042unifiedBinaryOps(symbol, "nuint?", "short"); 8043unifiedBinaryOps(symbol, "nuint?", "ushort", $"nuint nuint.{name}(nuint left, nuint right)"); 8044unifiedBinaryOps(symbol, "nuint?", "int"); 8045unifiedBinaryOps(symbol, "nuint?", "uint", $"nuint nuint.{name}(nuint left, nuint right)"); 8046unifiedBinaryOps(symbol, "nuint?", "nint"); 8047unifiedBinaryOps(symbol, "nuint?", "nuint", $"nuint nuint.{name}(nuint left, nuint right)"); 8048unifiedBinaryOps(symbol, "nuint?", "long"); 8049unifiedBinaryOps(symbol, "nuint?", "ulong", $"ulong ulong.{name}(ulong left, ulong right)"); 8050unifiedBinaryOps(symbol, "nuint?", "float"); 8051unifiedBinaryOps(symbol, "nuint?", "double"); 8052unifiedBinaryOps(symbol, "nuint?", "decimal"); 8053unifiedBinaryOps(symbol, "nuint?", "System.IntPtr"); 8054unifiedBinaryOps(symbol, "nuint?", "System.UIntPtr", $"nuint nuint.{name}(nuint left, nuint right)"); 8057unifiedBinaryOps(symbol, "nuint?", "bool?"); 8058unifiedBinaryOps(symbol, "nuint?", "char?", $"nuint nuint.{name}(nuint left, nuint right)"); 8059unifiedBinaryOps(symbol, "nuint?", "sbyte?"); 8060unifiedBinaryOps(symbol, "nuint?", "byte?", $"nuint nuint.{name}(nuint left, nuint right)"); 8061unifiedBinaryOps(symbol, "nuint?", "short?"); 8062unifiedBinaryOps(symbol, "nuint?", "ushort?", $"nuint nuint.{name}(nuint left, nuint right)"); 8063unifiedBinaryOps(symbol, "nuint?", "int?"); 8064unifiedBinaryOps(symbol, "nuint?", "uint?", $"nuint nuint.{name}(nuint left, nuint right)"); 8065unifiedBinaryOps(symbol, "nuint?", "nint?"); 8066unifiedBinaryOps(symbol, "nuint?", "nuint?", $"nuint nuint.{name}(nuint left, nuint right)"); 8067unifiedBinaryOps(symbol, "nuint?", "long?"); 8068unifiedBinaryOps(symbol, "nuint?", "ulong?", $"ulong ulong.{name}(ulong left, ulong right)"); 8069unifiedBinaryOps(symbol, "nuint?", "float?"); 8070unifiedBinaryOps(symbol, "nuint?", "double?"); 8071unifiedBinaryOps(symbol, "nuint?", "decimal?"); 8072unifiedBinaryOps(symbol, "nuint?", "System.IntPtr?"); 8073unifiedBinaryOps(symbol, "nuint?", "System.UIntPtr?", $"nuint nuint.{name}(nuint left, nuint right)");