Closed sushihangover closed 9 years ago
Test results: "s = (string)null + (object)null;" and "s = (object)null + (string)null;"
./pcompile test-77.cs
test-77.cs(17,4): warning CS0162: Unreachable code detected
test-77.cs(61,7): error CS0121: The call is ambiguous between the following methods or properties: `string.Concat(params object[])' and `string.Concat(params string[])'
/Users/administrator/Documents/Code/playscript/playscriptredux/playscript/mcs/tests/../class/lib/net_4_5/mscorlib.dll (Location of the symbol related to previous error)
in OverloadResolver.ResolveMember (Mono.CSharp.ResolveContext, Mono.CSharp.Arguments&)
in StringConcat.Emit (Mono.CSharp.EmitContext)
in VariableReference.EmitAssign (Mono.CSharp.EmitContext, Mono.CSharp.Expression, System.Boolean, System.Boolean)
in Assign.Emit (Mono.CSharp.EmitContext, System.Boolean)
in Assign.EmitStatement (Mono.CSharp.EmitContext)
in StatementExpression.DoEmit (Mono.CSharp.EmitContext)
in Statement.Emit (Mono.CSharp.EmitContext)
in Block.DoEmit (Mono.CSharp.EmitContext)
in ExplicitBlock.Emit (Mono.CSharp.EmitContext)
in ParametersBlock.Emit (Mono.CSharp.EmitContext)
in ToplevelBlock.Emit (Mono.CSharp.EmitContext)
in MethodData.Emit (Mono.CSharp.TypeDefinition)
in MethodOrOperator.Emit ()
in Method.Emit ()
in TypeDefinition.Emit ()
in ClassOrStruct.Emit ()
in Class.Emit ()
in TypeDefinition.EmitContainer ()
in TypeContainer.EmitContainer ()
in NamespaceContainer.EmitContainer ()
in TypeContainer.EmitContainer ()
in ModuleContainer.EmitContainer ()
in AssemblyDefinition.Emit ()
in AssemblyDefinitionStatic.Emit ()
in Driver.Compile ()
in Driver.Main (System.String[])
test-77.cs(65,7): error CS0121: The call is ambiguous between the following methods or properties: `string.Concat(params object[])' and `string.Concat(params string[])'
/Users/administrator/Documents/Code/playscript/playscriptredux/playscript/mcs/tests/../class/lib/net_4_5/mscorlib.dll (Location of the symbol related to previous error)
in OverloadResolver.ResolveMember (Mono.CSharp.ResolveContext, Mono.CSharp.Arguments&)
in StringConcat.Emit (Mono.CSharp.EmitContext)
in VariableReference.EmitAssign (Mono.CSharp.EmitContext, Mono.CSharp.Expression, System.Boolean, System.Boolean)
in Assign.Emit (Mono.CSharp.EmitContext, System.Boolean)
in Assign.EmitStatement (Mono.CSharp.EmitContext)
in StatementExpression.DoEmit (Mono.CSharp.EmitContext)
in Statement.Emit (Mono.CSharp.EmitContext)
in Block.DoEmit (Mono.CSharp.EmitContext)
in ExplicitBlock.Emit (Mono.CSharp.EmitContext)
in ParametersBlock.Emit (Mono.CSharp.EmitContext)
in ToplevelBlock.Emit (Mono.CSharp.EmitContext)
in MethodData.Emit (Mono.CSharp.TypeDefinition)
in MethodOrOperator.Emit ()
in Method.Emit ()
in TypeDefinition.Emit ()
in ClassOrStruct.Emit ()
in Class.Emit ()
in TypeDefinition.EmitContainer ()
in TypeContainer.EmitContainer ()
in NamespaceContainer.EmitContainer ()
in TypeContainer.EmitContainer ()
in ModuleContainer.EmitContainer ()
in AssemblyDefinition.Emit ()
in AssemblyDefinitionStatic.Emit ()
in Driver.Compile ()
in Driver.Main (System.String[])
Compilation failed: 2 error(s), 1 warnings
Upstream merge fixed the issue:
Commit : c1a3af342a4f044ac7c3f856621e73eb76f57a82
Info : 7/2/2014 3:33:16 PM +02:00 / Marek Safar / marek.safar@gmail.com
Msg : [mcs] Constant folding of null strings casted to object
Conflict : mcs/mcs/cfold.cs
~ Manual intervention needed : mcs/mcs/cfold.cs
The following merge is causing a regression on update test-77.cs