• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download

ok_int(int * ptr,int val)1 static int ok_int(int *ptr, int val)
2 {
3 	return __sync_add_and_fetch(ptr, val);
4 }
5 
ok_ptr(long ** ptr,long * val)6 static long* ok_ptr(long **ptr, long *val)
7 {
8 	return __sync_add_and_fetch(ptr, val);
9 }
10 
chk_ret_ok(long * ptr,long val)11 static void chk_ret_ok(long *ptr, long val)
12 {
13 	_Static_assert([typeof(__sync_add_and_fetch(ptr, val))] == [long], "");
14 }
15 
chk_val(int * ptr,long val)16 static 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