Subject: Re: [boost] Mixed use of "include" directives with quoted vs. angle-bracketed params, causing havoc
From: David Abrahams (dave_at_[hidden])
Date: 2008-09-06 19:34:52
on Sat Sep 06 2008, "Victor Vojtech Terber" <victor-AT-terber.de> wrote:
> I have multiple Boost versions installed in different file locations. I
> occasionally ran into problems with mixed-up Boost headers. This was due to
> Boost's use of both quoted and bracketed syntax of the include directive to
> include its headers.
> The standard allows for different results for resolving the include directive
> depending on the chosen form. In particular the angle-bracketed form is narrower
> than the quoted one (see chapters 16.2.2 and 3). So the point in the file system
> from where the file will actually be included may legally differ, based on the
> form of the include directive.
> I don't mind which alternative Boost uses. But in my opinion it should be
> consistent inside Boost headers, shouldn't it? With some file system layouts it
> gets very inconvenient to pre-determine by simple set-up of compiler or
> environment variables which version will get used. I also fail to see any
> obvious downside of a unification.
Me neither, except that in very rare cases it could break some peoples'
builds when they upgrade. The biggest obstacle, IIRC, was that we had a
hard time coming to an agreement about which convention to use.
However, I may have been the only one holding out for <> and since I
realized that other libraries were using "" I never use <> anymore.
-- Dave Abrahams BoostPro Computing http://www.boostpro.com
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk