Binder\Binder.cs (6)
618if (diagnostics.DiagnosticBag is object)
620ReportDiagnosticsIfObsolete(diagnostics.DiagnosticBag, symbol, node, hasBaseReceiver);
707if (diagnostics.DiagnosticBag is object)
709ReportDiagnosticsIfObsolete(diagnostics.DiagnosticBag, symbol, node, hasBaseReceiver, containingMember, containingType, location);
746if (diagnostics.DiagnosticBag is object)
748ReportDiagnosticsIfObsoleteInternal(diagnostics.DiagnosticBag, symbol, node, containingMember, location);
Binder\Binder_Symbols.cs (7)
255diagnostics.AddRange(resultDiagnostics.DiagnosticBag);
531if (diagnostics.DiagnosticBag is DiagnosticBag diagnosticBag)
2312if (diagnostics.DiagnosticBag is object)
2314Emit.NoPia.EmbeddedTypesManager.IsValidEmbeddableType((NamedTypeSymbol)singleResult, where, diagnostics.DiagnosticBag);
2787=> CheckFeatureAvailability(syntax, feature, diagnostics.DiagnosticBag, location);
2790=> CheckFeatureAvailability(syntax, feature, diagnostics.DiagnosticBag, forceWarning: forceWarning);
2793=> CheckFeatureAvailability(tree, feature, diagnostics.DiagnosticBag, location);
CodeGen\CodeGenerator.cs (5)
97Debug.Assert(diagnostics.DiagnosticBag != null);
193type: _module.Translate(localSymbol.Type, bodySyntax, _diagnostics.DiagnosticBag),
362EmitTypeReferenceToken(_module.Translate(symbol, syntaxNode, _diagnostics.DiagnosticBag), syntaxNode);
367var methodRef = _module.Translate(method, syntaxNode, _diagnostics.DiagnosticBag, optArgList, needDeclaration: encodeAsRawDefinitionToken);
373var fieldRef = _module.Translate(symbol, syntaxNode, _diagnostics.DiagnosticBag);
CodeGen\EmitArrayInitializer.cs (6)
433RoslynDebug.Assert(_diagnostics.DiagnosticBag is not null, $"Expected non-null {nameof(_diagnostics)}.{nameof(_diagnostics.DiagnosticBag)}");
555var field = _builder.module.GetFieldForData(data, alignment: 1, wrappedExpression.Syntax, _diagnostics.DiagnosticBag);
616var field = _builder.module.GetFieldForData(data, alignment: (ushort)specialElementType.SizeInBytes(), wrappedExpression.Syntax, _diagnostics.DiagnosticBag);
649var cachingField = _builder.module.GetArrayCachingFieldForData(data, _module.Translate(arrayType), wrappedExpression.Syntax, _diagnostics.DiagnosticBag);
708arrayCreation.Syntax, _diagnostics.DiagnosticBag);
CodeGen\EmitExpression.cs (11)
831EmitExpression(expression.EmitExpressions.GetValue(expression, _diagnostics.DiagnosticBag), used);
3618var fieldRef = _module.Translate(field, syntax, _diagnostics.DiagnosticBag, needDeclaration: true);
3646_module.GetModuleVersionId(_module.Translate(node.Type, node.Syntax, _diagnostics.DiagnosticBag), node.Syntax, _diagnostics.DiagnosticBag),
3656_module.GetModuleCancellationToken(_module.Translate(cancellationTokenType, syntax, _diagnostics.DiagnosticBag), syntax, _diagnostics.DiagnosticBag),
3666_module.Translate(throwMethod, syntax, _diagnostics.DiagnosticBag),
3676_module.GetModuleCancellationToken(_module.Translate(cancellationTokenType, syntax, _diagnostics.DiagnosticBag), syntax, _diagnostics.DiagnosticBag),
3700_builder.EmitToken(_module.GetInstrumentationPayloadRoot(node.AnalysisKind, _module.Translate(node.Type, node.Syntax, _diagnostics.DiagnosticBag), node.Syntax, _diagnostics.DiagnosticBag), node.Syntax);
CodeGen\EmitStatement.cs (18)
915_module.Translate(expressionOpt.Type, boundReturnStatement.Syntax, _diagnostics.DiagnosticBag);
1049_module.Translate(catchBlock.ExceptionTypeOpt, catchBlock.Syntax, _diagnostics.DiagnosticBag) :
1050_module.GetSpecialType(SpecialType.System_Object, catchBlock.Syntax, _diagnostics.DiagnosticBag);
1096var exceptionType = _module.Translate(catchBlock.ExceptionTypeOpt, catchBlock.Syntax, _diagnostics.DiagnosticBag);
1501var privateImplClass = _module.GetPrivateImplClass(syntaxNode, _diagnostics.DiagnosticBag).PrivateImplementationDetails;
1546sequenceEqualsMethodRef = _module.Translate(sequenceEqualsCharMethod, null, _diagnostics.DiagnosticBag);
1550asSpanMethodRef = _module.Translate(asSpanMethod, null, _diagnostics.DiagnosticBag);
1556stringEqualityMethodRef = _module.Translate(stringEqualityMethod, syntaxNode, _diagnostics.DiagnosticBag);
1641return _module.Translate(spanCharLengthMethod, syntaxNode, _diagnostics.DiagnosticBag);
1648return _module.Translate(stringLengthMethod, syntaxNode, _diagnostics.DiagnosticBag);
1666return _module.Translate(spanCharLengthMethod, null, _diagnostics.DiagnosticBag);
1674return _module.Translate(stringCharsIndexer, syntaxNode, _diagnostics.DiagnosticBag);
1775MetadataConstant compileTimeValue = _module.CreateConstant(local.Type, local.ConstantValue, syntaxNode, _diagnostics.DiagnosticBag);
1806? _module.GetSpecialType(SpecialType.System_IntPtr, syntaxNode, _diagnostics.DiagnosticBag)
1807: _module.Translate(pointedAtType, syntaxNode, _diagnostics.DiagnosticBag);
1813translatedType = _module.Translate(local.Type, syntaxNode, _diagnostics.DiagnosticBag);
1818_module.GetFakeSymbolTokenForIL(translatedType, syntaxNode, _diagnostics.DiagnosticBag);
1910_module.Translate(type, syntaxNode, _diagnostics.DiagnosticBag),
Compilation\CSharpCompilation.cs (24)
1949RoslynDebug.Assert(diagnostics.DiagnosticBag is object);
2030RoslynDebug.Assert(noMainFoundDiagnostics.DiagnosticBag is object);
2126foreach (var diagnostic in noMainFoundDiagnostics.DiagnosticBag.AsEnumerable())
2694Debug.Assert(bag.DiagnosticBag is { });
2696diagnostics.AddRange(bag.DiagnosticBag);
2985Debug.Assert(builder.DiagnosticBag is { });
2991FilterAndAppendDiagnostics(diagnostics, builder.DiagnosticBag, cancellationToken);
2997RoslynDebug.Assert(builder.DiagnosticBag is object);
3010AppendLoadDirectiveDiagnostics(builder.DiagnosticBag, _syntaxAndDeclarations, syntaxTree);
3020AppendLoadDirectiveDiagnostics(builder.DiagnosticBag, _syntaxAndDeclarations, syntaxTree);
3044CheckAssemblyName(builder.DiagnosticBag);
3075RoslynDebug.Assert(methodBodyDiagnostics.DiagnosticBag is object);
3103RoslynDebug.Assert(diagnostics.DiagnosticBag is object);
3113diagnostics: diagnostics.DiagnosticBag,
3146Debug.Assert(bindingDiagnostics.DiagnosticBag is { });
3194Debug.Assert(discarded.DiagnosticBag is object);
3209discarded.DiagnosticBag.Clear();
3573diagnostics.AddRange(entryPointDiagnostics.DiagnosticBag!);
3599Debug.Assert(methodBodyDiagnosticBag.DiagnosticBag is { });
3614if (!hasDeclarationErrors && !CommonCompiler.HasUnsuppressableErrors(methodBodyDiagnosticBag.DiagnosticBag) && filterOpt == null)
3616GenerateModuleInitializer(moduleBeingBuilt, methodBodyDiagnosticBag.DiagnosticBag);
3621bool hasMethodBodyError = !FilterAndAppendDiagnostics(diagnostics, methodBodyDiagnosticBag.DiagnosticBag, cancellationToken);
3803Debug.Assert(xmlDiagnostics.DiagnosticBag is { });
3808bool result = FilterAndAppendDiagnostics(diagnostics, xmlDiagnostics.DiagnosticBag, cancellationToken);
Compiler\MethodCompiler.cs (27)
92Debug.Assert(diagnostics.DiagnosticBag != null);
121Debug.Assert(diagnostics.DiagnosticBag != null);
189moduleBeingBuiltOpt.CreateDeletedMethodDefinitions(diagnostics.DiagnosticBag);
219moduleBeingBuiltOpt.SetPEEntryPoint(entryPoint, diagnostics.DiagnosticBag);
228Debug.Assert(diagnostics.DiagnosticBag != null);
650_diagnostics.DiagnosticBag,
695var context = new EmitContext(_moduleBeingBuiltOpt, null, diagnostics.DiagnosticBag, metadataOnly: false, includePrivateMembers: true);
712Debug.Assert(diagnostics.DiagnosticBag != null);
759_moduleBeingBuiltOpt.TryCreateVariableSlotAllocator(lambda, lambda.TopLevelMethod, diagnosticsThisMethod.DiagnosticBag) :
760_moduleBeingBuiltOpt.TryCreateVariableSlotAllocator(method, method, diagnosticsThisMethod.DiagnosticBag);
874discardedDiagnostics.DiagnosticBag.Clear();
1024diagsForCurrentMethod.DiagnosticBag,
1093DefiniteAssignmentPass.Analyze(_compilation, methodSymbol, analyzedInitializers, diagsForCurrentMethod.DiagnosticBag, out _, requireOutParamsAssigned: false);
1111DefiniteAssignmentPass.Analyze(_compilation, methodSymbol, analyzedInitializers, diagsForCurrentMethod.DiagnosticBag, out _, requireOutParamsAssigned: false);
1417Debug.Assert(_diagnostics.DiagnosticBag != null);
1420ILBuilder builder = new ILBuilder(_moduleBeingBuiltOpt, new LocalSlotManager(slotAllocator: null), _diagnostics.DiagnosticBag, OptimizationLevel.Release, areLocalsZeroed: false);
1553lazyVariableSlotAllocator ??= compilationState.ModuleBuilderOpt.TryCreateVariableSlotAllocator(method, method, diagnostics.DiagnosticBag);
1641Debug.Assert(diagnosticsForThisMethod.DiagnosticBag != null);
1643ILBuilder builder = new ILBuilder(moduleBuilder, localSlotManager, diagnosticsForThisMethod.DiagnosticBag, optimizations, method.AreLocalsZeroed);
1717var importScopeOpt = importChainOpt?.Translate(moduleBuilder, diagnosticsForThisMethod.DiagnosticBag);
1813awaiters[index] = moduleBuilder.EncTranslateLocalVariableType(field.Type, diagnostics.DiagnosticBag);
1825hoistedVariables[index] = new EncHoistedLocalInfo(field.SlotDebugInfo, moduleBuilder.EncTranslateLocalVariableType(field.Type, diagnostics.DiagnosticBag));
1940Debug.Assert(diagnostics.DiagnosticBag != null);
1953isSufficientLangVersion ? diagnostics.DiagnosticBag : new DiagnosticBag(),
1964diagnostics.DiagnosticBag,
2062diagnostics.DiagnosticBag,
2294diagnostics.DiagnosticBag!.AsEnumerable().Any(d => d.Code == (int)ErrorCode.WRN_AttributeLocationOnBadDeclaration))
FlowAnalysis\FlowAnalysisPass.cs (2)
52Analyze(compilation, method, block, diagnostics.DiagnosticBag, out needsImplicitReturn, out implicitlyInitializedFields))
69else if (Analyze(compilation, method, block, diagnostics.DiagnosticBag, out var needsImplicitReturn, out var unusedImplicitlyInitializedFields))
Lowering\LocalRewriter\LocalRewriter_CollectionExpression.cs (7)
397Debug.Assert(_diagnostics.DiagnosticBag is { });
430var synthesizedType = _factory.ModuleBuilderOpt.EnsureReadOnlyListTypeExists(syntax, kind: kind, _diagnostics.DiagnosticBag).Construct(typeArgs);
548Debug.Assert(_diagnostics.DiagnosticBag is { });
570var inlineArrayType = _factory.ModuleBuilderOpt.EnsureInlineArrayTypeExists(syntax, _factory, arrayLength, _diagnostics.DiagnosticBag).Construct(ImmutableArray.Create(elementType));
574MethodSymbol elementRef = _factory.ModuleBuilderOpt.EnsureInlineArrayElementRefExists(syntax, intType, _diagnostics.DiagnosticBag).
602_factory.ModuleBuilderOpt.EnsureInlineArrayAsReadOnlySpanExists(syntax, _factory.WellKnownType(WellKnownType.System_ReadOnlySpan_T), intType, _diagnostics.DiagnosticBag) :
603_factory.ModuleBuilderOpt.EnsureInlineArrayAsSpanExists(syntax, _factory.WellKnownType(WellKnownType.System_Span_T), intType, _diagnostics.DiagnosticBag);
Lowering\LocalRewriter\LocalRewriter_IndexerAccess.cs (7)
241Debug.Assert(_diagnostics.DiagnosticBag is { });
367createSpan = _factory.ModuleBuilderOpt.EnsureInlineArrayAsReadOnlySpanExists(node.Syntax, spanType, intType, _diagnostics.DiagnosticBag);
371createSpan = _factory.ModuleBuilderOpt.EnsureInlineArrayAsSpanExists(node.Syntax, spanType, intType, _diagnostics.DiagnosticBag);
393elementRef = _factory.ModuleBuilderOpt.EnsureInlineArrayFirstElementRefExists(node.Syntax, _diagnostics.DiagnosticBag);
398elementRef = _factory.ModuleBuilderOpt.EnsureInlineArrayFirstElementRefReadOnlyExists(node.Syntax, _diagnostics.DiagnosticBag);
412elementRef = _factory.ModuleBuilderOpt.EnsureInlineArrayElementRefExists(node.Syntax, intType, _diagnostics.DiagnosticBag);
417elementRef = _factory.ModuleBuilderOpt.EnsureInlineArrayElementRefReadOnlyExists(node.Syntax, intType, _diagnostics.DiagnosticBag);