Binder\Binder.cs (6)
620if (diagnostics.DiagnosticBag is object)
622ReportDiagnosticsIfObsolete(diagnostics.DiagnosticBag, symbol, node, hasBaseReceiver);
709if (diagnostics.DiagnosticBag is object)
711ReportDiagnosticsIfObsolete(diagnostics.DiagnosticBag, symbol, node, hasBaseReceiver, containingMember, containingType, location);
748if (diagnostics.DiagnosticBag is object)
750ReportDiagnosticsIfObsoleteInternal(diagnostics.DiagnosticBag, symbol, node, containingMember, location);
Binder\Binder_Symbols.cs (7)
257diagnostics.AddRange(resultDiagnostics.DiagnosticBag);
535if (diagnostics.DiagnosticBag is DiagnosticBag diagnosticBag)
2349if (diagnostics.DiagnosticBag is object)
2351Emit.NoPia.EmbeddedTypesManager.IsValidEmbeddableType((NamedTypeSymbol)singleResult, where, diagnostics.DiagnosticBag);
2824=> CheckFeatureAvailability(syntax, feature, diagnostics.DiagnosticBag, location);
2827=> CheckFeatureAvailability(syntax, feature, diagnostics.DiagnosticBag, forceWarning: forceWarning);
2830=> CheckFeatureAvailability(tree, feature, diagnostics.DiagnosticBag, location);
CodeGen\CodeGenerator.cs (5)
100Debug.Assert(diagnostics.DiagnosticBag != null);
196type: _module.Translate(localSymbol.Type, bodySyntax, _diagnostics.DiagnosticBag),
367EmitTypeReferenceToken(_module.Translate(symbol, syntaxNode, _diagnostics.DiagnosticBag), syntaxNode);
372var methodRef = _module.Translate(method, syntaxNode, _diagnostics.DiagnosticBag, optArgList, needDeclaration: encodeAsRawDefinitionToken);
378var 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);
3622var fieldRef = _module.Translate(field, syntax, _diagnostics.DiagnosticBag, needDeclaration: true);
3650_module.GetModuleVersionId(_module.Translate(node.Type, node.Syntax, _diagnostics.DiagnosticBag), node.Syntax, _diagnostics.DiagnosticBag),
3660_module.GetModuleCancellationToken(_module.Translate(cancellationTokenType, syntax, _diagnostics.DiagnosticBag), syntax, _diagnostics.DiagnosticBag),
3670_module.Translate(throwMethod, syntax, _diagnostics.DiagnosticBag),
3680_module.GetModuleCancellationToken(_module.Translate(cancellationTokenType, syntax, _diagnostics.DiagnosticBag), syntax, _diagnostics.DiagnosticBag),
3704_builder.EmitToken(_module.GetInstrumentationPayloadRoot(node.AnalysisKind, _module.Translate(node.Type, node.Syntax, _diagnostics.DiagnosticBag), node.Syntax, _diagnostics.DiagnosticBag), node.Syntax);
CodeGen\EmitStatement.cs (18)
925_module.Translate(expressionOpt.Type, boundReturnStatement.Syntax, _diagnostics.DiagnosticBag);
1071_module.Translate(catchBlock.ExceptionTypeOpt, catchBlock.Syntax, _diagnostics.DiagnosticBag) :
1072_module.GetSpecialType(SpecialType.System_Object, catchBlock.Syntax, _diagnostics.DiagnosticBag);
1119var exceptionType = _module.Translate(catchBlock.ExceptionTypeOpt, catchBlock.Syntax, _diagnostics.DiagnosticBag);
1528var privateImplClass = _module.GetPrivateImplClass(syntaxNode, _diagnostics.DiagnosticBag).PrivateImplementationDetails;
1573sequenceEqualsMethodRef = _module.Translate(sequenceEqualsCharMethod, null, _diagnostics.DiagnosticBag);
1577asSpanMethodRef = _module.Translate(asSpanMethod, null, _diagnostics.DiagnosticBag);
1583stringEqualityMethodRef = _module.Translate(stringEqualityMethod, syntaxNode, _diagnostics.DiagnosticBag);
1668return _module.Translate(spanCharLengthMethod, syntaxNode, _diagnostics.DiagnosticBag);
1675return _module.Translate(stringLengthMethod, syntaxNode, _diagnostics.DiagnosticBag);
1693return _module.Translate(spanCharLengthMethod, null, _diagnostics.DiagnosticBag);
1701return _module.Translate(stringCharsIndexer, syntaxNode, _diagnostics.DiagnosticBag);
1802MetadataConstant compileTimeValue = _module.CreateConstant(local.Type, local.ConstantValue, syntaxNode, _diagnostics.DiagnosticBag);
1833? _module.GetSpecialType(SpecialType.System_IntPtr, syntaxNode, _diagnostics.DiagnosticBag)
1834: _module.Translate(pointedAtType, syntaxNode, _diagnostics.DiagnosticBag);
1840translatedType = _module.Translate(local.Type, syntaxNode, _diagnostics.DiagnosticBag);
1845_module.GetFakeSymbolTokenForIL(translatedType, syntaxNode, _diagnostics.DiagnosticBag);
1937_module.Translate(type, syntaxNode, _diagnostics.DiagnosticBag),
Compilation\CSharpCompilation.cs (24)
1990RoslynDebug.Assert(diagnostics.DiagnosticBag is object);
2071RoslynDebug.Assert(noMainFoundDiagnostics.DiagnosticBag is object);
2167foreach (var diagnostic in noMainFoundDiagnostics.DiagnosticBag.AsEnumerable())
2735Debug.Assert(bag.DiagnosticBag is { });
2737diagnostics.AddRange(bag.DiagnosticBag);
3026Debug.Assert(builder.DiagnosticBag is { });
3032FilterAndAppendDiagnostics(diagnostics, builder.DiagnosticBag, cancellationToken);
3038RoslynDebug.Assert(builder.DiagnosticBag is object);
3051AppendLoadDirectiveDiagnostics(builder.DiagnosticBag, _syntaxAndDeclarations, syntaxTree);
3061AppendLoadDirectiveDiagnostics(builder.DiagnosticBag, _syntaxAndDeclarations, syntaxTree);
3085CheckAssemblyName(builder.DiagnosticBag);
3116RoslynDebug.Assert(methodBodyDiagnostics.DiagnosticBag is object);
3144RoslynDebug.Assert(diagnostics.DiagnosticBag is object);
3154diagnostics: diagnostics.DiagnosticBag,
3187Debug.Assert(bindingDiagnostics.DiagnosticBag is { });
3235Debug.Assert(discarded.DiagnosticBag is object);
3250discarded.DiagnosticBag.Clear();
3614diagnostics.AddRange(entryPointDiagnostics.DiagnosticBag!);
3640Debug.Assert(methodBodyDiagnosticBag.DiagnosticBag is { });
3655if (!hasDeclarationErrors && !CommonCompiler.HasUnsuppressableErrors(methodBodyDiagnosticBag.DiagnosticBag) && filterOpt == null)
3657GenerateModuleInitializer(moduleBeingBuilt, methodBodyDiagnosticBag.DiagnosticBag);
3662bool hasMethodBodyError = !FilterAndAppendDiagnostics(diagnostics, methodBodyDiagnosticBag.DiagnosticBag, cancellationToken);
3844Debug.Assert(xmlDiagnostics.DiagnosticBag is { });
3849bool result = FilterAndAppendDiagnostics(diagnostics, xmlDiagnostics.DiagnosticBag, cancellationToken);
Compiler\MethodCompiler.cs (28)
92Debug.Assert(diagnostics.DiagnosticBag != null);
121Debug.Assert(diagnostics.DiagnosticBag != null);
189moduleBeingBuiltOpt.CreateDeletedMemberDefinitions(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);
761_moduleBeingBuiltOpt.TryCreateVariableSlotAllocator(lambda, lambda.TopLevelMethod, diagnosticsThisMethod.DiagnosticBag) :
762_moduleBeingBuiltOpt.TryCreateVariableSlotAllocator(method, method, diagnosticsThisMethod.DiagnosticBag);
877discardedDiagnostics.DiagnosticBag.Clear();
1027diagsForCurrentMethod.DiagnosticBag,
1096DefiniteAssignmentPass.Analyze(_compilation, methodSymbol, analyzedInitializers, diagsForCurrentMethod.DiagnosticBag, out _, requireOutParamsAssigned: false);
1114DefiniteAssignmentPass.Analyze(_compilation, methodSymbol, analyzedInitializers, diagsForCurrentMethod.DiagnosticBag, out _, requireOutParamsAssigned: false);
1419Debug.Assert(_diagnostics.DiagnosticBag != null);
1422ILBuilder builder = new ILBuilder(_moduleBeingBuiltOpt, new LocalSlotManager(slotAllocator: null), _diagnostics.DiagnosticBag, OptimizationLevel.Release, areLocalsZeroed: false);
1429builder.EmitToken(_moduleBeingBuiltOpt.Translate(ctor, syntax, _diagnostics.DiagnosticBag, optArgList: null, needDeclaration: false), syntax, 0);
1565lazyVariableSlotAllocator ??= compilationState.ModuleBuilderOpt.TryCreateVariableSlotAllocator(method, method, diagnostics.DiagnosticBag);
1657Debug.Assert(diagnosticsForThisMethod.DiagnosticBag != null);
1659ILBuilder builder = new ILBuilder(moduleBuilder, localSlotManager, diagnosticsForThisMethod.DiagnosticBag, optimizations, method.AreLocalsZeroed);
1733var importScopeOpt = importChainOpt?.Translate(moduleBuilder, diagnosticsForThisMethod.DiagnosticBag);
1829awaiters[index] = moduleBuilder.EncTranslateLocalVariableType(field.Type, diagnostics.DiagnosticBag);
1841hoistedVariables[index] = new EncHoistedLocalInfo(field.SlotDebugInfo, moduleBuilder.EncTranslateLocalVariableType(field.Type, diagnostics.DiagnosticBag));
1956Debug.Assert(diagnostics.DiagnosticBag != null);
1969isSufficientLangVersion ? diagnostics.DiagnosticBag : new DiagnosticBag(),
1980diagnostics.DiagnosticBag,
2078diagnostics.DiagnosticBag,
2310diagnostics.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 (6)
485Debug.Assert(_diagnostics.DiagnosticBag is { });
517var synthesizedType = _factory.ModuleBuilderOpt.EnsureReadOnlyListTypeExists(syntax, kind: kind, _diagnostics.DiagnosticBag).Construct(typeArgs);
645Debug.Assert(_diagnostics.DiagnosticBag is { });
671MethodSymbol elementRef = _factory.ModuleBuilderOpt.EnsureInlineArrayElementRefExists(syntax, intType, _diagnostics.DiagnosticBag).
699_factory.ModuleBuilderOpt.EnsureInlineArrayAsReadOnlySpanExists(syntax, _factory.WellKnownType(WellKnownType.System_ReadOnlySpan_T), intType, _diagnostics.DiagnosticBag) :
700_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);