Boost logo

Boost :

Subject: Re: [boost] Build breaking changes
From: Gavin Lambert (gavinl_at_[hidden])
Date: 2018-03-29 02:34:01


On 29/03/2018 13:49, Andrey Semashev wrote:
> Most of applications have 32 and 64-bit variants, unless they stuck in
> the 90's. Defaulting nowdays to 32 bits is simply unreasonable.

Boost doesn't default to 32 bits. It defaults to both 32 and 64, which
is the most reasonable choice on Windows, just as defaulting to the host
architecture is the most reasonable choice on Linux.

Visual Studio always defaults to 32-bits, thus most Windows applications
do as well.

Even pure .NET projects, which are compiled to IL and can run equally
well as 32-bit or 64-bit, have the "prefer 32-bit" flag set by default
which means that they will run as 32-bit if given the option (ie. not
loaded as a DLL into a process that is already 64-bit).

Take any random Windows machine and run a lot of applications on it.
Now look at Task Manager and see how many of those applications have (32
bit) next to them. If you exclude OS-in-box components, games, CAD
packages, and the like, you will almost certainly find that your number
is higher than 90%. (Heck, until very recently most web browsers were
also 32-bit-only, and they do fall into the category of apps that
benefit from 64-bit.)

Perhaps this is not your ideal world. And I agree that x86-32 is indeed
a different (and inferior) architecture from amd64. But being different
is in and of itself one reason why apps don't change architectures
unless they actually need to (since the rules are subtly different, and
it's another thing to test), and the vast majority of apps don't
actually need to.


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk