Using gcc with libc++ is not able to build boost's program_options library.
It looks like this is caused by a bug in gcc[0], and this change attempts to work around a couple cases where it gets hit.
The gcc report also mentions a problem with vector/string but I was not able to reproduce that locally, and believe that specific case was fixed with https://reviews.llvm.org/D7201