# Avoid double negatives

<br />

A **double negative** is a sentence or phrase that contains two negative words,
such as:

- *not* , including contractions like *can't* , *won't*
- *no*

Readers find double negatives hard to parse. ("Wait, do two negatives make a
positive or is the author of the error message using two negatives to emphasize
something I shouldn't do?")

Some double negatives in error messages are blatant:

Not recommended
> You cannot not invoke this flag.

Recommended
> You must invoke this flag.

Other double negatives are more subtle. For example, the words *prevents* and
*forbidding* in the following error message are both negatives, leading to
a confusing message:

Not recommended
> The universal read permission on *pathname* prevents the operating system from forbidding access.

Recommended
> The universal read permission on *pathname* enables anyone to read this file. Giving access to everyone is a security flaw. See *hyperlink* for details on how to restrict readers.

Similarly, avoid exceptions to exceptions.

Not recommended
> The App Engine service account must have permissions on the image, except the Storage Object Viewer role, unless the Storage Object Admin role is available.

Recommended
> The App Engine service account must have one of the following roles:
>
> - Storage Object Admin
> - Storage Object Creator

<br />

<br />

**Next unit:** [Write for the target audience](https://developers.google.com/tech-writing/error-messages/target-audience)