/*
 * Copyright (c) 2018, ARM Limited and Contributors. All rights reserved.
 *
 * SPDX-License-Identifier: BSD-3-Clause
 */

#ifndef STDBOOL_H
#define STDBOOL_H

#define bool	_Bool

#define true	1
#define false	0

#define __bool_true_false_are_defined	1

#endif /* STDBOOL_H */
