## Keyboard shortcuts

Press `←` or `→` to navigate between chapters

Press `S` or `/` to search in the book

Press `?` to show this help

Press `Esc` to hide this help

# Error code E0788

#### Note: this error code is no longer emitted by the compiler.

A `#[coverage(off|on)]` attribute was found in a position where it is not allowed.

Coverage attributes can be applied to:

- Function and method declarations that have a body, including trait methods that have a default implementation.
- Closure expressions, in situations where attributes can be applied to expressions.
- `impl` blocks (inherent or trait), and modules.

Example of erroneous code:

    unsafe extern "C" {
        #[coverage(off)]
        fn foreign_fn();
    }

When using the `-C instrument-coverage` flag, coverage attributes act as a hint to the compiler that it should instrument or not instrument the corresponding function or enclosed functions. The precise effect of applying a coverage attribute is not guaranteed and may change in future compiler versions.