__test_and_set
if (!__test_and_set((unsigned long*)__lock, 1)) {
if (!__test_and_set((unsigned long*)__lock, 1)) {
if (!__test_and_set((unsigned long *)__lock, 1)) {
return (_Cstrptr) __test_and_set((unsigned long*)__p,