I'm now checking out the boost-1.64.0 tag to see how it would fare.
boost-1.64.0 fails as well. Mystery solved, the changes that fixed clang are not in 1.64. C:\Projects\boost-git\boost\libs\preprocessor>git log boost-1.64.0..master commit b19e4deacb7103061f9c2c9efcdd77eaa5877df0 Merge: a627594 dfc1c46 Author: Edward Diener <eldlistmailingz@tropicsoft.com> Date: Mon Apr 24 12:13:09 2017 -0400 Merge branch 'develop' commit dfc1c46ecedef21274eb142e267e91400aa33ec8 Author: Edward Diener <eldlistmailingz@tropicsoft.com> Date: Sun Mar 26 08:51:41 2017 -0700 With _MSC_VER and __clang__ always use strict mode and variadics turned on w commit e474eea44f00ba92310ace20add3956adb83f3de Author: Edward Diener <eldlistmailingz@tropicsoft.com> Date: Sun Mar 26 01:02:05 2017 -0700 Slight correction to particularize previous change as involving only -fno-ms commit b03c6cd3c0f855f22f154424272ef9276ed72594 Author: Edward Diener <eldlistmailingz@tropicsoft.com> Date: Sat Mar 25 23:22:32 2017 -0700 In the configuration the combination of clang defined and gcc defined always