Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mono/corefx.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorJon Hanna <jon@hackcraft.net>2017-08-22 22:05:02 +0300
committerOmar Tawfik <OmarTawfik@users.noreply.github.com>2017-08-22 22:05:02 +0300
commit02d647bba44e63496aaa4aa4b5953a355a4c8f1b (patch)
tree29a033df86477813a6506b9f7cf97da74c1730e1 /src
parent158b600e764c7dcc1e7117609c4d9709d62f1755 (diff)
Remove Microsoft.CSharp.RuntimeBinder.Semantics.SymbolLoader.FCanLift (#23062)
Always returns true (flag for static compiling where nullable and hence lifting is not available). Remove, and paths for it being false.
Diffstat (limited to 'src')
-rw-r--r--src/Microsoft.CSharp/src/Microsoft/CSharp/RuntimeBinder/Semantics/ExpressionBinder.cs2
-rw-r--r--src/Microsoft.CSharp/src/Microsoft/CSharp/RuntimeBinder/Semantics/Operators.cs16
-rw-r--r--src/Microsoft.CSharp/src/Microsoft/CSharp/RuntimeBinder/Semantics/Symbols/SymbolLoader.cs5
3 files changed, 5 insertions, 18 deletions
diff --git a/src/Microsoft.CSharp/src/Microsoft/CSharp/RuntimeBinder/Semantics/ExpressionBinder.cs b/src/Microsoft.CSharp/src/Microsoft/CSharp/RuntimeBinder/Semantics/ExpressionBinder.cs
index 1e7c3bb6be..f29937a477 100644
--- a/src/Microsoft.CSharp/src/Microsoft/CSharp/RuntimeBinder/Semantics/ExpressionBinder.cs
+++ b/src/Microsoft.CSharp/src/Microsoft/CSharp/RuntimeBinder/Semantics/ExpressionBinder.cs
@@ -911,7 +911,7 @@ namespace Microsoft.CSharp.RuntimeBinder.Semantics
0,
false));
}
- else if (GetSymbolLoader().FCanLift() && typeParam.IsNonNubValType() &&
+ else if (typeParam.IsNonNubValType() &&
GetTypes().SubstType(methCur.RetType, atsCur).IsNonNubValType() &&
canConvert(arg, nubParam = GetTypes().GetNullable(typeParam)))
{
diff --git a/src/Microsoft.CSharp/src/Microsoft/CSharp/RuntimeBinder/Semantics/Operators.cs b/src/Microsoft.CSharp/src/Microsoft/CSharp/RuntimeBinder/Semantics/Operators.cs
index c744b7f1dd..5d250aab53 100644
--- a/src/Microsoft.CSharp/src/Microsoft/CSharp/RuntimeBinder/Semantics/Operators.cs
+++ b/src/Microsoft.CSharp/src/Microsoft/CSharp/RuntimeBinder/Semantics/Operators.cs
@@ -154,11 +154,8 @@ namespace Microsoft.CSharp.RuntimeBinder.Semantics
{
Debug.Assert(rgbofs != null);
- int ibos;
- int ibosMinLift;
-
- ibosMinLift = GetSymbolLoader().FCanLift() ? 0 : g_binopSignatures.Length;
- for (ibos = 0; ibos < g_binopSignatures.Length; ibos++)
+ int ibosMinLift = 0;
+ for (int ibos = 0; ibos < g_binopSignatures.Length; ibos++)
{
BinOpSig bos = g_binopSignatures[ibos];
if ((bos.mask & info.mask) == 0)
@@ -704,8 +701,6 @@ namespace Microsoft.CSharp.RuntimeBinder.Semantics
else
{
pgrflt = LiftFlags.None;
- if (!GetSymbolLoader().FCanLift())
- return false;
typeDst = GetSymbolLoader().GetTypeManager().GetNullable(typeDst);
if (!canConvert(info.arg1, typeDst))
return false;
@@ -740,8 +735,6 @@ namespace Microsoft.CSharp.RuntimeBinder.Semantics
else
{
pgrflt = LiftFlags.None;
- if (!GetSymbolLoader().FCanLift())
- return false;
typeDst = GetSymbolLoader().GetTypeManager().GetNullable(typeDst);
if (!canConvert(info.arg2, typeDst))
return false;
@@ -1490,7 +1483,7 @@ namespace Microsoft.CSharp.RuntimeBinder.Semantics
Debug.Assert(pArgument != null);
Debug.Assert(pArgument.Type != null);
- long iuosMinLift = GetSymbolLoader().FCanLift() ? 0 : g_rguos.Length;
+ long iuosMinLift = 0;
CType pArgumentType = pArgument.Type;
CType pRawType = pArgumentType.StripNubs();
@@ -2630,8 +2623,7 @@ namespace Microsoft.CSharp.RuntimeBinder.Semantics
false));
return true;
}
- if (fDontLift || !GetSymbolLoader().FCanLift() ||
- !UserDefinedBinaryOperatorCanBeLifted(ek, method, ats, paramsCur))
+ if (fDontLift || !UserDefinedBinaryOperatorCanBeLifted(ek, method, ats, paramsCur))
{
return false;
}
diff --git a/src/Microsoft.CSharp/src/Microsoft/CSharp/RuntimeBinder/Semantics/Symbols/SymbolLoader.cs b/src/Microsoft.CSharp/src/Microsoft/CSharp/RuntimeBinder/Semantics/Symbols/SymbolLoader.cs
index 28f344f1b9..4940c4c308 100644
--- a/src/Microsoft.CSharp/src/Microsoft/CSharp/RuntimeBinder/Semantics/Symbols/SymbolLoader.cs
+++ b/src/Microsoft.CSharp/src/Microsoft/CSharp/RuntimeBinder/Semantics/Symbols/SymbolLoader.cs
@@ -719,11 +719,6 @@ namespace Microsoft.CSharp.RuntimeBinder.Semantics
return pSource is TypeParameterType srcParType && HasImplicitTypeParameterBaseConversion(srcParType, pDest);
}
- public bool FCanLift()
- {
- return null != GetPredefAgg(PredefinedType.PT_G_OPTIONAL);
- }
-
public bool IsBaseAggregate(AggregateSymbol derived, AggregateSymbol @base)
{
Debug.Assert(!derived.IsEnum() && !@base.IsEnum());