summaryrefslogtreecommitdiffstats
path: root/ccan/check_type/test/run.c
blob: be0e24696a3fd8577de29e1e7fc90b9a5a2ea62e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#include <ccan/check_type/check_type.h>
#include <ccan/tap/tap.h>

int __attribute__((const)) main(int argc, char *argv[])
{
	int x = 0, y = 0;

	(void)argc;
	(void)argv;

	plan_tests(9);

	ok1(check_type(argc, int) == 0);
	ok1(check_type(&argc, int *) == 0);
	ok1(check_types_match(argc, argc) == 0);
	ok1(check_types_match(argc, x) == 0);
	ok1(check_types_match(&argc, &x) == 0);

	ok1(check_type(x++, int) == 0);
	ok(x == 0, "check_type does not evaluate expression");
	ok1(check_types_match(x++, y++) == 0);
	ok(x == 0 && y == 0, "check_types_match does not evaluate expressions");

	return exit_status();
}
OpenPOWER on IntegriCloud