thakis added a comment.

The powers that be updated the SDK on the chromium clang bots, so we need some 
solution for this issue soon.

The approach in this patch should work, but it seems conservative. Now libc++ 
only uses utimesat() if it's built with a deployment target of macOS 10.13. But 
if we were to set a deployment target of 10.12 and then _run_ on 10.13, we 
could use utimesat() as well, even though this patch currently doesn't. (Apple 
bundles libc++ with the system, so it's not a meaningful difference for 
Apple-built libc++'s, but applications can build libc++ themselves and 
statically link to it, and for those it would make a difference.)

https://clang.llvm.org/docs/LanguageExtensions.html#objective-c-available has 
some words on it (except that `@available` is spelled `__builtin_available` in 
non-Objective-C code) -- thoughts on using runtime detection of utimes() 
instead? That's how things are supposed to work on the Apple platforms.


https://reviews.llvm.org/D34249



_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to