Nick Owensinitd2ce0624 months agoHistory
18 lines · 701 B · C
RawDownload
/* SPDX-License-Identifier: ISC */#ifndef CLM_USEFUL_H#define CLM_USEFUL_H /* * ASSERT_RETURN: enforce a precondition at a public API boundary. * * Unlike assert(3), this is always active and returns r rather than aborting. * Use it at the top of public functions to validate caller-supplied arguments. * Use assert(3) for internal invariants that should never fail. */#define ASSERT_RETURN(expr, r)                                                 \	do {                                                                   \		if (!(expr))                                                   \			return (r);                                            \	} while (0) #endif /* CLM_USEFUL_H */