Hi James, Thanks for the patch. I can confirm the reasoning, and that it allows the build of trunk GCC to proceed where it previously failed. I had, in fact, independently come up with a very similar patch on my own, before finding yours online :(
The only suggestion which I might make is this one: > Index: gcc/config/darwin-driver.c > =================================================================== > --- gcc/config/darwin-driver.c (revision 215234) > +++ gcc/config/darwin-driver.c (working copy) > @@ -105,7 +103,7 @@ darwin_default_min_version (unsigned int > const unsigned int argc = *decoded_options_count; > struct cl_decoded_option *const argv = *decoded_options; > unsigned int i; > - static char new_flag[sizeof ("10.0.0") + 6]; > + static char new_flag[sizeof ("10.10.0") + 6]; > > /* If the command-line is empty, just return. */ > if (argc <= 1) I don’t know why the exact size of new_flag should be sizeof(…)+6, but it makes sense to widen it with the new version. Given the above, could a darwin maintainer please approve this patch (either with or without my addition)? FX PS: James, for the sanitizer bits, they should be (IIUC) submitted upstream rather than here. To be honest, I always build without the sanitizer, because I think its integration into GCC can best be described as capricious.