1static int ok_int(int *ptr, int val)
2{
3	return __sync_add_and_fetch(ptr, val);
4}
5
6static long* ok_ptr(long **ptr, long *val)
7{
8	return __sync_add_and_fetch(ptr, val);
9}
10
11static void chk_ret_ok(long *ptr, long val)
12{
13	_Static_assert([typeof(__sync_add_and_fetch(ptr, val))] == [long], "");
14}
15
16static int chk_val(int *ptr, long val)
17{
18	// OK: val is converted to an int
19	return __sync_add_and_fetch(ptr, val);
20}
21
22/*
23 * check-name: builtin-sync-fetch
24 */
25