---
title: Diagnostic groups
framework: swift-compiler
role: collectionGroup
path: swift-compiler/documentation/diagnostics/diagnostic-groups
---

# Diagnostic groups

Detailed explanations for various compiler diagnostics.

## Overview

Overview Diagnostic groups collect some number of diagnostics together under a common group name. This allows for extra documentation to help explain relevant language concepts, as well as the ability to control the behavior of warnings in a more precise manner (when that group contains warnings): -Werror <group> - upgrades warnings in the specified group to errors -Wwarning <group> - indicates that warnings in the specified group should remain warnings, even if they were previously upgraded to errors As a concrete example, to upgrade deprecated declaration warnings to errors: -Werror DeprecatedDeclaration Or upgrade all warnings except deprecated declaration to errors: -warnings-as-errors -Wwarning DeprecatedDeclaration Groups with warnings Add @preconcurrency import (AddPreconcurrencyImport) Always enabled availability domains (AlwaysAvailableDomain) Argument matching for trailing closures (TrailingClosureMatching) Compilation caching (CompilationCaching) Conforming to `StringInterpolationProtocol` (StringInterpolationConformance) Deprecated declaration warnings (DeprecatedDeclaration) Deprecated implementation-only imports (ImplementationOnlyDeprecated) Dynamic exclusivity (DynamicExclusivity) Embedded Swift language restrictions (EmbeddedRestrictions) Existential Types and Performance (ExistentialType) Explicit `Sendable` annotations on public type declarations (ExplicitSendable) Extraneous @preconcurrency imports (PreconcurrencyImport) Foreign reference types (ForeignReferenceType) Implicit Copy On Return (ReturnTypeImplicitCopy) Implicit strong captures of weak capture list items (ImplicitStrongCapture) Imported Clang declaration warnings (ClangDeclarationImport) Inconsistent import access level (InconsistentImportAccess) Isolated conformances (IsolatedConformances) Language mode and tools version (ErrorInFutureSwiftVersion) Migrating away from experimental suppressed associated types (OldSuppressedAssociatedTypes) Missing module for canImport (CanImportMissingModule) Missing module version (ModuleVersionMissing) Module self-import (ModuleSelfImport) OSLog module (OSLog) Option obsoleted by module selectors (OptionObsoletedByModuleSelectors) Public imports of project-internal modules (PublicImportOfProjectInternalModule) Result builder methods (ResultBuilderMethods) SPI import ignored (SPIImportIgnored) Semantic copies (SemanticCopies) Strict language feature enablement (StrictLanguageFeatures) Strict memory safety (StrictMemorySafety) Unavailable Sendable conformance (UnavailableSendableConformance) Unknown warning group (UnknownWarningGroup) Unnecessary effect markers (UnnecessaryEffectMarker) Unnecessary unsafe (UnnecessaryUnsafe) Unsupported scoped import (UnsupportedScopedImport) Untyped throws (UntypedThrows) Unused import access level (UnusedImportAccess) Unused throwing unstructured task creation (NoUseUnstructuredThrowingTask) Unused values (NoUsage) Use anyAppleOS availability (UseAnyAppleOSAvailability) Useless availability check (UselessAvailabilityCheck) Useless conditional statement (UselessConditionalStatement)

## Topics

- [@dynamicCallable implementation requirements (DynamicCallable)](swift-compiler/documentation/diagnostics/dynamic-callable-requirements.md)
- [Add @preconcurrency import (AddPreconcurrencyImport)](swift-compiler/documentation/diagnostics/add-preconcurrency-import.md)
- [Always enabled availability domains (AlwaysAvailableDomain)](swift-compiler/documentation/diagnostics/always-available-domain.md)
- [Argument matching for trailing closures (TrailingClosureMatching)](swift-compiler/documentation/diagnostics/trailing-closure-matching.md)
- [Calling a mutating async actor-isolated method (ActorIsolatedMutatingAsync)](swift-compiler/documentation/diagnostics/actor-isolated-mutating-async.md)
- [Calling an actor-isolated method from a synchronous nonisolated context (ActorIsolatedCall)](swift-compiler/documentation/diagnostics/actor-isolated-call.md)
- [Captures in a `@Sendable` closure (SendableClosureCaptures)](swift-compiler/documentation/diagnostics/sendable-closure-captures.md)
- [Compilation caching (CompilationCaching)](swift-compiler/documentation/diagnostics/compilation-caching.md)
- [Conforming to `StringInterpolationProtocol` (StringInterpolationConformance)](swift-compiler/documentation/diagnostics/string-interpolation-conformance.md)
- [Conversion from `@isolated(any)` function type to synchronous function type (ConversionFromIsolatedAnyToSynchronous)](swift-compiler/documentation/diagnostics/conversion-from-isolated-any-to-synchronous.md)
- [Cross-isolation data race (RegionIsolationCrossIsolationDataRace)](swift-compiler/documentation/diagnostics/region-isolation-cross-isolation-data-race.md)
- [Deprecated declaration warnings (DeprecatedDeclaration)](swift-compiler/documentation/diagnostics/deprecated-declaration.md)
- [Deprecated implementation-only imports (ImplementationOnlyDeprecated)](swift-compiler/documentation/diagnostics/implementation-only-deprecated.md)
- [Dynamic exclusivity (DynamicExclusivity)](swift-compiler/documentation/diagnostics/dynamic-exclusivity.md)
- [Embedded Swift language restrictions (EmbeddedRestrictions)](swift-compiler/documentation/diagnostics/embedded-restrictions.md)
- [Existential Types and Performance (ExistentialType)](swift-compiler/documentation/diagnostics/existential-type.md)
- [Explicit `Sendable` annotations on public type declarations (ExplicitSendable)](swift-compiler/documentation/diagnostics/explicit-sendable-annotations.md)
- [Extraneous @preconcurrency imports (PreconcurrencyImport)](swift-compiler/documentation/diagnostics/preconcurrency-import.md)
- [Foreign reference types (ForeignReferenceType)](swift-compiler/documentation/diagnostics/foreign-reference-type.md)
- [Implicit Copy On Return (ReturnTypeImplicitCopy)](swift-compiler/documentation/diagnostics/return-type-implicit-copy.md)
- [Implicit strong captures of weak capture list items (ImplicitStrongCapture)](swift-compiler/documentation/diagnostics/implicit-strong-capture.md)
- [Imported Clang declaration warnings (ClangDeclarationImport)](swift-compiler/documentation/diagnostics/clang-declaration-import.md)
- [Inconsistent import access level (InconsistentImportAccess)](swift-compiler/documentation/diagnostics/inconsistent-import-access.md)
- [Isolated conformances (IsolatedConformances)](swift-compiler/documentation/diagnostics/isolated-conformances.md)
- [Language mode and tools version (ErrorInFutureSwiftVersion)](swift-compiler/documentation/diagnostics/error-in-future-swift-version.md)
- [Migrating away from experimental suppressed associated types (OldSuppressedAssociatedTypes)](swift-compiler/documentation/diagnostics/old-suppressed-associatedtypes.md)
- [Missing module for canImport (CanImportMissingModule)](swift-compiler/documentation/diagnostics/canimport-missing-module.md)
- [Missing module on known path from a dependency (MissingModuleOnKnownPaths)](swift-compiler/documentation/diagnostics/missing-module-on-known-paths.md)
- [Missing module version (ModuleVersionMissing)](swift-compiler/documentation/diagnostics/module-version-missing.md)
- [Module not testable (ModuleNotTestable)](swift-compiler/documentation/diagnostics/module-not-testable.md)
- [Module self-import (ModuleSelfImport)](swift-compiler/documentation/diagnostics/module-self-import.md)
- [Multiple inheritance (MultipleInheritance)](swift-compiler/documentation/diagnostics/multiple-inheritance.md)
- [Nominal types (NominalTypes)](swift-compiler/documentation/diagnostics/nominal-types.md)
- [OSLog module (OSLog)](swift-compiler/documentation/diagnostics/oslog.md)
- [Option obsoleted by module selectors (OptionObsoletedByModuleSelectors)](swift-compiler/documentation/diagnostics/option-obsoleted-by-module-selectors.md)
- [Overlapping accesses, but operation requires exclusive access (ExclusivityViolation)](swift-compiler/documentation/diagnostics/exclusivity-violation.md)
- [Performance Hints (PerformanceHints)](swift-compiler/documentation/diagnostics/performance-hints.md)
- [Property wrapper implementation requirements (PropertyWrappers)](swift-compiler/documentation/diagnostics/property-wrapper-requirements.md)
- [Protocol conformances crossing into actor-isolated code (ConformanceIsolation)](swift-compiler/documentation/diagnostics/conformance-isolation.md)
- [Protocol types cannot conform to protocols (ProtocolTypeNonConformance)](swift-compiler/documentation/diagnostics/protocol-type-non-conformance.md)
- [Public imports of project-internal modules (PublicImportOfProjectInternalModule)](swift-compiler/documentation/diagnostics/public-import-of-project-internal-module.md)
- [Result builder methods (ResultBuilderMethods)](swift-compiler/documentation/diagnostics/result-builder-methods.md)
- [SPI import ignored (SPIImportIgnored)](swift-compiler/documentation/diagnostics/spi-import-ignored.md)
- [Semantic copies (SemanticCopies)](swift-compiler/documentation/diagnostics/semantic-copies.md)
- [Sendable metatypes (SendableMetatypes)](swift-compiler/documentation/diagnostics/sendable-metatypes.md)
- [Sending closure risks causing data races (SendingClosureRisksDataRace)](swift-compiler/documentation/diagnostics/sending-closure-risks-data-race.md)
- [Sending value risks causing data races (SendingRisksDataRace)](swift-compiler/documentation/diagnostics/sending-risks-data-race.md)
- [Strict language feature enablement (StrictLanguageFeatures)](swift-compiler/documentation/diagnostics/strict-language-features.md)
- [Strict memory safety (StrictMemorySafety)](swift-compiler/documentation/diagnostics/strict-memory-safety.md)
- [Temporary pointers (TemporaryPointers)](swift-compiler/documentation/diagnostics/temporary-pointers.md)
- [Unavailable Sendable conformance (UnavailableSendableConformance)](swift-compiler/documentation/diagnostics/unavailable-sendable-conformance.md)
- [Underlying type inference for opaque result types (OpaqueTypeInference)](swift-compiler/documentation/diagnostics/opaque-type-inference.md)
- [Unknown region isolation pattern (RegionIsolationUnknownPattern)](swift-compiler/documentation/diagnostics/region-isolation-unknown-pattern.md)
- [Unknown warning group (UnknownWarningGroup)](swift-compiler/documentation/diagnostics/unknown-warning-group.md)
- [Unnecessary effect markers (UnnecessaryEffectMarker)](swift-compiler/documentation/diagnostics/unnecessary-effect-marker.md)
- [Unnecessary unsafe (UnnecessaryUnsafe)](swift-compiler/documentation/diagnostics/unnecessary-unsafe.md)
- [Unrecognized availability platforms (AvailabilityUnrecognizedName)](swift-compiler/documentation/diagnostics/availability-unrecognized-name.md)
- [Unsafe mutable global and static variables (MutableGlobalVariable)](swift-compiler/documentation/diagnostics/mutable-global-variable.md)
- [Unsupported scoped import (UnsupportedScopedImport)](swift-compiler/documentation/diagnostics/unsupported-scoped-import.md)
- [Untyped throws (UntypedThrows)](swift-compiler/documentation/diagnostics/untyped-throws.md)
- [Unused import access level (UnusedImportAccess)](swift-compiler/documentation/diagnostics/unused-import-access.md)
- [Unused throwing unstructured task creation (NoUseUnstructuredThrowingTask)](swift-compiler/documentation/diagnostics/no-use-throwing-unstructured-task.md)
- [Unused values (NoUsage)](swift-compiler/documentation/diagnostics/no-usage.md)
- [Use anyAppleOS availability (UseAnyAppleOSAvailability)](swift-compiler/documentation/diagnostics/use-any-apple-os-availability.md)
- [Useless availability check (UselessAvailabilityCheck)](swift-compiler/documentation/diagnostics/useless-availability-check.md)
- [Useless conditional statement (UselessConditionalStatement)](swift-compiler/documentation/diagnostics/useless-conditional-statement.md)
- [Using protocol members with references to `Self` or `Self`-rooted associated types (ExistentialMemberAccess)](swift-compiler/documentation/diagnostics/existential-member-access-limitations.md)

## See Also

- [Upcoming language features](swift-compiler/documentation/diagnostics/upcoming-language-features.md)
