---
title: "unsafeFlags(_:_:)"
framework: packagedescription
role: symbol
role_heading: Type Method
path: "packagedescription/linkersetting/unsafeflags(_:_:)"
---

# unsafeFlags(_:_:)

Sets unsafe flags to pass arbitrary command-line flags to the corresponding build tool.

## Declaration

```swift
static func unsafeFlags(_ flags: [String], _ condition: BuildSettingCondition? = nil) -> LinkerSetting
```

## Parameters

- `flags`: The unsafe flags to set.
- `condition`: A condition that restricts the application of the build setting.

## Discussion

Discussion As the usage of the word “unsafe” implies, Swift Package Manager can’t safely determine if the build flags have any negative side effect on the build since certain flags can change the behavior of how it performs a build. As some build flags can be exploited for unsupported or malicious behavior, the use of unsafe flags makes the products containing this target ineligible for use by other packages. note: First available in PackageDescription 5.0.

## See Also

### Configuring Linker Settings

- [linkedFramework(_:_:)](packagedescription/linkersetting/linkedframework(_:_:).md)
- [linkedLibrary(_:_:)](packagedescription/linkersetting/linkedlibrary(_:_:).md)
