Boost logo

Boost :

Subject: Re: [boost] Proposal for #pragma once support
From: Emil Dotchevski (emildotchevski_at_[hidden])
Date: 2009-06-11 14:34:24


On Thu, Jun 11, 2009 at 11:15 AM, Zachary Turner<divisortheory_at_[hidden]> wrote:
> On Thu, Jun 11, 2009 at 12:51 PM, Emil Dotchevski
> <emildotchevski_at_[hidden]>wrote:
>
>> On Thu, Jun 11, 2009 at 1:34 AM, John Maddock<john_at_[hidden]>
>> wrote:
>> >> I'm not sure you got my drift, using BOOST_WORKAROUND effectively
>> >> flags the better #pragma once performance on MSVC as a bug. :)
>> >
>> > Sure, but it requires #including boost/workaround.hpp in every header,
>> which
>> > is surely not such a great idea?
>> >
>> > In fact wouldn't the extra #includes outweigh the use of pragma once?
>>
>> Yeah, I wast mostly joking :) but then again, in my mind improving
>> build times by using pragma once is a joke too. If we want to deal
>> with the problem of slow builds we should be removing stuff from
>> headers, instead of making it easier to swallow all that crap.
>
> Even if we do remove a bunch of stuff from headers, it can still be made
> faster.  Now matter how many ways you approach the problem, choosing to
> ignore one specific way that actually makes a serious difference simply
> because it only works on a subset of compilers is fundamentally inconsistent
> with the notion of developing a cross platform C++ library that works on
> every compiler.

In a company I worked at, it took ~40 minutes to do a full rebuild of
the project I worked on. Their solution was to install IncrediBuild,
and overnight build times went down to ~7 minutes total. That's fast
right? Worth doing? More than #pragma once? Except that two years
later the build times were up to over 30 minutes again _with_
IncrediBuild. :)

Emil Dotchevski
Reverge Studios, Inc.
http://www.revergestudios.com/reblog/index.php?n=ReCode


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