# E0217

A `main` parameter whose type is a directory or file capability: `Dir`, `DirRead`, `DirWrite`, `FileRead`, or `FileWrite`. Only attenuation makes one, with `restrict_to` or `restrict_to_file` on `Fs`, `FsRead`, or `FsWrite`, because the runtime has no root to give. Spans the parameter's type.

**Machine-applicable fix:** none.

## Example

This program fails with `E0217`.

```oska
fn main(docs: DirRead) {}
```

## Fixed

The same program, fixed.

```oska
fn main(fs: FsRead) {
    let docs = fs.restrict_to("docs")
}
```

Listed in the [checker notes](/checker.md#e0217). `oskac explain E0217` prints this entry offline.