---
title: "enableExperimentalFeature(_:_:)"
framework: packagedescription
role: symbol
role_heading: Type Method
path: "packagedescription/swiftsetting/enableexperimentalfeature(_:_:)"
---

# enableExperimentalFeature(_:_:)

Enable an experimental feature with the given name.

## Declaration

```swift
static func enableExperimentalFeature(_ name: String, _ condition: BuildSettingCondition? = nil) -> SwiftSetting
```

## Parameters

- `name`: The name of the experimental feature; for example, VariadicGenerics.
- `condition`: A condition that restricts the application of the build setting.

## Discussion

Discussion An experimental feature is one that’s in development, but is not yet available in Swift as a language feature. You can add and use multiple experimental features in a given target without affecting its dependencies. Targets will ignore any  unknown experimental features. note: First available in PackageDescription 5.8.

## See Also

### Configuring Swift Settings

- [define(_:_:)](packagedescription/swiftsetting/define(_:_:).md)
- [unsafeFlags(_:_:)](packagedescription/swiftsetting/unsafeflags(_:_:).md)
- [strictMemorySafety(_:)](packagedescription/swiftsetting/strictmemorysafety(_:).md)
- [swiftLanguageMode(_:_:)](packagedescription/swiftsetting/swiftlanguagemode(_:_:).md)
- [defaultIsolation(_:_:)](packagedescription/swiftsetting/defaultisolation(_:_:).md)
- [enableUpcomingFeature(_:_:)](packagedescription/swiftsetting/enableupcomingfeature(_:_:).md)
- [interoperabilityMode(_:_:)](packagedescription/swiftsetting/interoperabilitymode(_:_:).md)
- [SwiftSetting.InteroperabilityMode](packagedescription/swiftsetting/interoperabilitymode.md)
- [swiftLanguageVersion(_:_:)](packagedescription/swiftsetting/swiftlanguageversion(_:_:).md)
