works with libc++