al_fixadd(3)

al_fixadd3

Allegro 5 api

Usage

#include <allegro5/allegro.h>
al_fixed al_fixadd(al_fixed x, al_fixed y);

Overview

Although fixed point numbers can be added with the normal + integer operator, that doesn’t provide any protection against overflow. If overflow is a problem, you should use this function instead. It is slower than using integer operators, but if an overflow occurs it will set Allegro’s errno and clamp the result, rather than just letting it wrap.

Example:

al_fixed result;
/* This will put 5035 into `result'. */
result = al_fixadd(al_itofix(5000), al_itofix(35));
/* Sets errno and puts -32768 into `result'. */
result = al_fixadd(al_itofix(-31000), al_itofix(-3000));
assert(!al_get_errno()); /* This will fail. */

Return value

Returns the clamped result of adding x to y, setting Allegro’s errno to ERANGE if there was an overflow.

From allegro 5.2.11.3-2 in Arch Linux 2026-11-01. Parsed by carta from the page's man source.