-
Notifications
You must be signed in to change notification settings - Fork 4.2k
Closed
Labels
Area-CompilersBugFeature - RecordsRecordsRecordsTenet-ReliabilityCustomer telemetry indicates that the product is failing in a crash/hang/dataloss manner.Customer telemetry indicates that the product is failing in a crash/hang/dataloss manner.
Description
[Fact]
public void Equality_22()
{
var source =
@"
record C
{
int x = 0;
}
";
var comp = CreateCompilation(source, parseOptions: TestOptions.RegularPreview, options: TestOptions.ReleaseDll);
comp.MakeMemberMissing(WellKnownMember.System_Collections_Generic_EqualityComparer_T__get_Default);
comp.VerifyEmitDiagnostics(
);
}
Observed:
Microsoft.CodeAnalysis.CSharp.UnitTests.Semantics.RecordTests.Equality_22 [FAIL]
Microsoft.CodeAnalysis.CSharp.SyntheticBoundNodeFactory+MissingPredefinedMember : (2,1): error CS0656: Missing compiler required member 'System.Collections.Generic.EqualityComparer`1.get_Default'
Stack Trace:
F:\GitHub\roslyn\src\Compilers\CSharp\Portable\Lowering\SyntheticBoundNodeFactory.cs(359,0): at Microsoft.CodeAnalysis.CSharp.SyntheticBoundNodeFactory.WellKnownMember(WellKnownMember wm, Boolean isOptional)
F:\GitHub\roslyn\src\Compilers\CSharp\Portable\Lowering\SyntheticBoundNodeFactory.cs(374,0): at Microsoft.CodeAnalysis.CSharp.SyntheticBoundNodeFactory.WellKnownMethod(WellKnownMember wm)
F:\GitHub\roslyn\src\Compilers\CSharp\Portable\Compiler\MethodBodySynthesizer.Lowered.cs(316,0): at Microsoft.CodeAnalysis.CSharp.Symbols.MethodBodySynthesizer.GenerateFieldEquals(BoundExpression initialExpression, BoundExpression otherReceiver, ArrayBuilder`1 fields, SyntheticBoundNodeFactory F)
F:\GitHub\roslyn\src\Compilers\CSharp\Portable\Symbols\Synthesized\Records\SynthesizedRecordEquals.cs(241,0): at Microsoft.CodeAnalysis.CSharp.Symbols.SynthesizedRecordEquals.GenerateMethodBody(TypeCompilationState compilationState, DiagnosticBag diagnostics)
F:\GitHub\roslyn\src\Compilers\CSharp\Portable\Compiler\MethodCompiler.cs(932,0): at Microsoft.CodeAnalysis.CSharp.MethodCompiler.CompileMethod(MethodSymbol methodSymbol, Int32 methodOrdinal, ProcessedFieldInitializers& processedInitializers, SynthesizedSubmissionFields previousSubmissionFields, TypeCompilationState compilationState)
F:\GitHub\roslyn\src\Compilers\CSharp\Portable\Compiler\MethodCompiler.cs(506,0): at Microsoft.CodeAnalysis.CSharp.MethodCompiler.CompileNamedType(NamedTypeSymbol containingType)
F:\GitHub\roslyn\src\Compilers\CSharp\Portable\Compiler\MethodCompiler.cs(396,0): at Microsoft.CodeAnalysis.CSharp.MethodCompiler.<>c__DisplayClass22_0.<CompileNamedTypeAsync>b__0()
F:\GitHub\roslyn\src\Compilers\Core\Portable\InternalUtilities\UICultureUtilities.cs(141,0): at Roslyn.Utilities.UICultureUtilities.<>c__DisplayClass5_0.<WithCurrentUICulture>b__0()
at System.Threading.Tasks.Task.InnerInvoke()
at System.Threading.Tasks.Task.<>c.<.cctor>b__274_0(Object obj)
at System.Threading.ExecutionContext.RunFromThreadPoolDispatchLoop(Thread threadPoolThread, ExecutionContext executionContext, ContextCallback callback, Object state)
--- End of stack trace from previous location where exception was thrown ---
at System.Threading.ExecutionContext.RunFromThreadPoolDispatchLoop(Thread threadPoolThread, ExecutionContext executionContext, ContextCallback callback, Object state)
at System.Threading.Tasks.Task.ExecuteWithThreadLocal(Task& currentTaskSlot, Thread threadPoolThread)
--- End of stack trace from previous location where exception was thrown ---
F:\GitHub\roslyn\src\Compilers\CSharp\Portable\Compiler\MethodCompiler.cs(311,0): at Microsoft.CodeAnalysis.CSharp.MethodCompiler.WaitForWorkers()
F:\GitHub\roslyn\src\Compilers\CSharp\Portable\Compiler\MethodCompiler.cs(155,0): at Microsoft.CodeAnalysis.CSharp.MethodCompiler.CompileMethodBodies(CSharpCompilation compilation, PEModuleBuilder moduleBeingBuiltOpt, Boolean emittingPdb, Boolean emitTestCoverageData, Boolean hasDeclarationErrors, DiagnosticBag diagnostics, Predicate`1 filterOpt, CancellationToken cancellationToken)
F:\GitHub\roslyn\src\Compilers\CSharp\Portable\Compilation\CSharpCompilation.cs(2846,0): at Microsoft.CodeAnalysis.CSharp.CSharpCompilation.CompileMethods(CommonPEModuleBuilder moduleBuilder, Boolean emittingPdb, Boolean emitMetadataOnly, Boolean emitTestCoverageData, DiagnosticBag diagnostics, Predicate`1 filterOpt, CancellationToken cancellationToken)
F:\GitHub\roslyn\src\Compilers\Core\Portable\Compilation\Compilation.cs(2542,0): at Microsoft.CodeAnalysis.Compilation.Emit(Stream peStream, Stream metadataPEStream, Stream pdbStream, Stream xmlDocumentationStream, Stream win32Resources, IEnumerable`1 manifestResources, EmitOptions options, IMethodSymbol debugEntryPoint, Stream sourceLinkStream, IEnumerable`1 embeddedTexts, CompilationTestData testData, CancellationToken cancellationToken)
F:\GitHub\roslyn\src\Compilers\Core\Portable\Compilation\Compilation.cs(2485,0): at Microsoft.CodeAnalysis.Compilation.Emit(Stream peStream, Stream pdbStream, Stream xmlDocumentationStream, Stream win32Resources, IEnumerable`1 manifestResources, EmitOptions options, IMethodSymbol debugEntryPoint, Stream sourceLinkStream, IEnumerable`1 embeddedTexts, Stream metadataPEStream, CancellationToken cancellationToken)
F:\GitHub\roslyn\src\Test\Utilities\Portable\Diagnostics\DiagnosticExtensions.cs(343,0): at Microsoft.CodeAnalysis.DiagnosticExtensions.GetEmitDiagnostics[TCompilation](TCompilation c, EmitOptions options, IEnumerable`1 manifestResources)
F:\GitHub\roslyn\src\Test\Utilities\Portable\Diagnostics\DiagnosticExtensions.cs(332,0): at Microsoft.CodeAnalysis.DiagnosticExtensions.VerifyEmitDiagnostics[TCompilation](TCompilation c, EmitOptions options, DiagnosticDescription[] expected)
F:\GitHub\roslyn\src\Test\Utilities\Portable\Diagnostics\DiagnosticExtensions.cs(349,0): at Microsoft.CodeAnalysis.DiagnosticExtensions.VerifyEmitDiagnostics[TCompilation](TCompilation c, DiagnosticDescription[] expected)
F:\GitHub\roslyn\src\Compilers\CSharp\Test\Semantic\Semantics\RecordTests.cs(6468,0): at Microsoft.CodeAnalysis.CSharp.UnitTests.Semantics.RecordTests.Equality_22()
Metadata
Metadata
Assignees
Labels
Area-CompilersBugFeature - RecordsRecordsRecordsTenet-ReliabilityCustomer telemetry indicates that the product is failing in a crash/hang/dataloss manner.Customer telemetry indicates that the product is failing in a crash/hang/dataloss manner.