Boost logo

Boost :

From: David Abrahams (david.abrahams_at_[hidden])
Date: 2001-07-14 10:11:00


Please, no!
I hope we don't have to go to these lengths.

-Dave

----- Original Message -----
From: "John Max Skaller" <skaller_at_[hidden]>
To: <boost_at_[hidden]>
Sent: Saturday, July 14, 2001 10:50 AM
Subject: Re: [boost] Re: #include <> vs. ""

> williamkempf_at_[hidden] wrote:
>
> > This is the behavior of your C compiler, not the behavior defined by
> > either the C standard or C++ standard.
>
> According to C89 and C99, the following is ALSO permitted:
>
> #include pp_tokens newline
>
> in particular
>
> #include FILENAME
>
> is permitted. See 6.10.2/4 of ISO/IEC 9899:1999 for example.
>
> So this is a possible solution. Use the PREPROCESSOR library
> to construct the filename using conditionals dependent
> on platform configuration information.
>
> In particular we can make macros that expand to absolute
> path names:
>
> #include "C:\MyBoost\boost\details"
>
> A few libraries, such as the preprocessor and configuration
> libraries, will have to be found by
>
> #include <boost/config.h>
> #include <boost/preprocessor.hpp>
> #include <boost/includes.hpp>
>
> (or whatever).
>
> The library vendor then writes:
>
> #include BOOST_REGEXP
> #include BOOST_FUNCTION
>
> The main difficulty with this technique is that you can't
> extend boost by just adding files into a directory,
> you have to update the 'includes.hpp' file.
>
> But that can be fixed too:
>
> #include BOOST_INCLUDE(regexp)
> #include BOOST_INCLUDE(function)
>
> with some cleverness in the definition of BOOST_INCLUDE.
>
> I once tried this, but failed because I didn't really grok
> the preprocessor. So I can't guarrantee the technique
> will work, but I think it might be worth investigation
> by someone that does understand the preprocessor.
>
> --
> John (Max) Skaller, mailto:skaller_at_[hidden]
> 10/1 Toxteth Rd Glebe NSW 2037 Australia voice: 61-2-9660-0850
> New generation programming language Felix http://felix.sourceforge.net
> Literate Programming tool Interscript
> http://Interscript.sourceforge.net
>
> Info: http://www.boost.org Unsubscribe:
<mailto:boost-unsubscribe_at_[hidden]>
>
> Your use of Yahoo! Groups is subject to http://docs.yahoo.com/info/terms/
>
>
>


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