public static class SemanticDiagnosticsStable descriptors for semantic (declaration and binding) diagnostics. The RVN2xxx range is reserved for semantics; RVN1xxx is syntax (see SyntaxDiagnostics) and later phases claim their own.
No guide page documents this yet — the page shows what the code says about itself.
Fields and properties (97)
public static readonly DiagnosticDescriptor DuplicateDeclarationpublic static readonly DiagnosticDescriptor TypeNotFoundpublic static readonly DiagnosticDescriptor NotATypepublic static readonly DiagnosticDescriptor WrongTypeArgumentCountpublic static readonly DiagnosticDescriptor CircularDefinitionpublic static readonly DiagnosticDescriptor MissingTypeOrInitializerpublic static readonly DiagnosticDescriptor CyclicBaseTypepublic static readonly DiagnosticDescriptor UndefinedNamepublic static readonly DiagnosticDescriptor MemberNotFoundpublic static readonly DiagnosticDescriptor AmbiguousNamepublic static readonly DiagnosticDescriptor TypeUsedAsValuepublic static readonly DiagnosticDescriptor SelfOutsideTypepublic static readonly DiagnosticDescriptor NoBaseTypepublic static readonly DiagnosticDescriptor CannotConvertpublic static readonly DiagnosticDescriptor NoExplicitConversionpublic static readonly DiagnosticDescriptor BinaryOperatorNotDefinedpublic static readonly DiagnosticDescriptor UnaryOperatorNotDefinedpublic static readonly DiagnosticDescriptor ConditionMustBeBoolpublic static readonly DiagnosticDescriptor StringLiteralIsNotAValuepublic static readonly DiagnosticDescriptor NotInvocablepublic static readonly DiagnosticDescriptor NoApplicableOverloadpublic static readonly DiagnosticDescriptor AmbiguousInvocationpublic static readonly DiagnosticDescriptor WrongArgumentCountpublic static readonly DiagnosticDescriptor NoConstructorpublic static readonly DiagnosticDescriptor NotAssignablepublic static readonly DiagnosticDescriptor NotAnLValuepublic static readonly DiagnosticDescriptor ReturnValueInVoidMethodpublic static readonly DiagnosticDescriptor MissingReturnValuepublic static readonly DiagnosticDescriptor CannotIndexpublic static readonly DiagnosticDescriptor NotIterablepublic static readonly DiagnosticDescriptor DuplicateEntryPointpublic static readonly DiagnosticDescriptor EntryPointCannotBeGenericpublic static readonly DiagnosticDescriptor StageAttributeOutsideShaderpublic static readonly DiagnosticDescriptor ResourceMustBeShaderFieldpublic static readonly DiagnosticDescriptor PermutationMustBeShaderFieldpublic static readonly DiagnosticDescriptor PermutationMustBeReadOnlypublic static readonly DiagnosticDescriptor PermutationTypeNotSupportedpublic static readonly DiagnosticDescriptor PermutationNeedsDefaultpublic static readonly DiagnosticDescriptor PermutationValueTypeMismatchpublic static readonly DiagnosticDescriptor PermutationCannotBeAssignedpublic static readonly DiagnosticDescriptor ComposeMustBeShaderFieldpublic static readonly DiagnosticDescriptor ComposeMustBeProtocolTypedpublic static readonly DiagnosticDescriptor ComposeDefaultMustBeShaderNamepublic static readonly DiagnosticDescriptor ComposeNotBoundpublic static readonly DiagnosticDescriptor ComposeBindingNotFoundpublic static readonly DiagnosticDescriptor ComposeBindingMustBeShaderpublic static readonly DiagnosticDescriptor ComposeBindingDoesNotImplementpublic static readonly DiagnosticDescriptor ComposeCannotBeAssignedpublic static readonly DiagnosticDescriptor ValueParameterMustBeOnShaderpublic static readonly DiagnosticDescriptor ValueParameterTypeNotSupportedpublic static readonly DiagnosticDescriptor ValueParameterNotSuppliedpublic static readonly DiagnosticDescriptor ValueParameterTypeMismatchpublic static readonly DiagnosticDescriptor ValueParameterCannotBeAssignedpublic static readonly DiagnosticDescriptor ResourceSetConflictpublic static readonly DiagnosticDescriptor ResourceSetOnNonBindingpublic static readonly DiagnosticDescriptor ShaderCannotBeConstructedA shader declared an init. Nothing ever constructs a shader — it is the pipeline, not a value — so the body could never run.
public static readonly DiagnosticDescriptor ModifierHasNoEffectA modifier that is legal syntax but changes nothing where it stands — override on a field, compose on a method, anything on an init.
public static readonly DiagnosticDescriptor EnumMemberValueNotConstantAn enum member's initializer did not evaluate to a compile-time integer. Reported rather than silently substituting the ordinal, which is what an earlier version did.
public static readonly DiagnosticDescriptor AttributesOnStatementHaveNoEffectNothing reads attributes on a statement; the author probably expected a hint like [Unroll] to act.
public static readonly DiagnosticDescriptor TypeArgumentDoesNotSatisfyConstraintA type argument was checked against its parameter's where clause and failed.
public static readonly DiagnosticDescriptor StreamMustBeShaderFieldstream on something that is not a shader's field.
public static readonly DiagnosticDescriptor StreamCannotBeConstantstream combined with a modifier that makes the value not per-invocation.
public static readonly DiagnosticDescriptor StreamCannotHaveInitializerA stream with an initializer.
public static readonly DiagnosticDescriptor StreamTypeNotSupportedA stream of a type no stage interface can carry.
public static readonly DiagnosticDescriptor ComputeNeedsWorkgroupSizeA compute entry point with no workgroup size.
public static readonly DiagnosticDescriptor WorkgroupSizeNotValidA workgroup size that could not be read.
public static readonly DiagnosticDescriptor WorkgroupSizeOnGraphicsStageA workgroup size on a stage that has no workgroups.
public static readonly DiagnosticDescriptor ComputeHasNoStageInterfaceA compute entry point returning a value, or taking a parameter that is not a dispatch built-in.
public static readonly DiagnosticDescriptor UnknownComputeSemanticA [Semantic("…")] that names no dispatch built-in on a compute parameter.
public static readonly DiagnosticDescriptor ComputeSemanticTypeMismatchA dispatch built-in declared with a type it cannot have.
public static readonly DiagnosticDescriptor InOutArgumentMustBeAssignableAn inout argument that is not storage the callee's value can be written back to.
public static readonly DiagnosticDescriptor InOutArgumentTypeMustMatchAn inout argument whose type needs a conversion.
public static readonly DiagnosticDescriptor InOutOnEntryPointinout on an entry point's parameter.
public static readonly DiagnosticDescriptor InOutCannotHaveDefaultAn inout parameter with a default value.
public static readonly DiagnosticDescriptor InOutOnOperatorinout on an operator's parameter.
public static readonly DiagnosticDescriptor ArraySizeNotConstantAn array size that is not a compile-time constant.
public static readonly DiagnosticDescriptor ArraySizeNotPositiveAn array size that folds to something other than a positive integer.
public static readonly DiagnosticDescriptor IndexOutOfRangeA constant index outside a sized array's bounds.
public static readonly DiagnosticDescriptor BufferElementNotStorableA storage buffer whose element type has no memory layout.
public static readonly DiagnosticDescriptor CannotWriteToBindingA write to a binding the host uploads rather than the shader produces.
public static readonly DiagnosticDescriptor PushConstantMustBeAValueA [PushConstant] on something that is not bytes the host can push.
public static readonly DiagnosticDescriptor PushConstantHasNoSetA descriptor-set marker on a field that is a push constant.
public static readonly DiagnosticDescriptor UseOfUnassignedLocalA local read on a path that never assigned it.
public static readonly DiagnosticDescriptor UnreachableStatementA statement no path reaches.
public static readonly DiagnosticDescriptor NotAllPathsReturnA value-returning function whose end is reachable.
public static readonly DiagnosticDescriptor ArrayNeedsLengthAn array type with no length.
public static readonly DiagnosticDescriptor StorageImageElementNotATexelA storage image whose element is not a four-lane texel.
public static readonly DiagnosticDescriptor StorageImageNeedsFormatA storage image with no [Format("…")].
public static readonly DiagnosticDescriptor StorageImageFormatMismatchA [Format] naming something that is not a format, or not this image's.
public static readonly DiagnosticDescriptor SampledTextureElementNotIntegralA Texture2D<T> whose element is not an integer texel.
public static readonly DiagnosticDescriptor FormatOnNonImageA [Format] on something that is not a storage image.
public static readonly DiagnosticDescriptor AtomicTargetMustBeStorageAn atomic on something no atomic can operate on.
public static readonly DiagnosticDescriptor GroupSharedMustBeShaderFieldgroupshared outside a shader.
public static readonly DiagnosticDescriptor GroupSharedConflictgroupshared combined with something that decides where the value lives.
public static readonly DiagnosticDescriptor GroupSharedTypeNotSupportedA groupshared declaration of a type that cannot be workgroup storage.
public static readonly DiagnosticDescriptor GroupSharedCannotHaveInitializerA groupshared declaration with an initializer.
public static readonly DiagnosticDescriptor GroupSharedCannotBeReadOnlyA groupshared declaration that is also val or readonly.
Used by (10)
- BinderVixen.Raven
- CompilationVixen.Raven
- FlowAnalysisVixen.Raven
- SourceEnumMemberSymbolVixen.Raven
- SourceFieldSymbolVixen.Raven
- SourceMethodSymbolVixen.Raven
- SourceNamedTypeSymbolVixen.Raven
- SourceParameterSymbolVixen.Raven
- SourcePropertySymbolVixen.Raven
- StateVixen.Raven