---
name: "CTASSERT"
section: "9"
platform: "linux"
package: "freebsd-manpages"
version: "6.0-5"
release: "Debian 4.0 (Etch)"
platforms: ["linux", "freebsd"]
url: "https://new.carta.tech/CTASSERT"
---

# CTASSERT(9)

compile time assertion macro

## NAME

**CTASSERT** – compile time assertion macro

## SYNOPSIS

**#include \<sys/param.h\>**

**#include \<sys/systm.h\>**

**CTASSERT**(*expression*);

## DESCRIPTION

The **CTASSERT**() macro evaluates *expression* at compile time and causes a compiler error if it is false.

The **CTASSERT**() macro is useful for asserting the size or alignment of important data structures and variables during compilation, which would otherwise cause the code to fail at run time.

## EXAMPLES

Assert that the size of the *uuid* structure is 16 bytes.

```
CTASSERT(sizeof(struct uuid) == 16);
```

## SEE ALSO

[KASSERT(9)](/KASSERT/9.md)

## AUTHORS

This manual page was written by Hiten M. Pandya ⟨hmp@FreeBSD.org⟩.
