|
Boost : |
From: Boris Gubenko (Boris.Gubenko_at_[hidden])
Date: 2007-06-15 13:08:13
John Maddock wrote:
>
> David Abrahams wrote:
>>> I have a header that makes use of Boost.Parameter that basically
>>> takes forever to compile with the Intel compiler, and therefore
>>> presumably all EDG based front ends.
There used to be a problem in EDG frontend with macro expansions taking
forever. It was reported years ago by a customer using Boost on Tru64.
We've reported it to EDG and it has been fixed.
aCC6 on HP-UX compiles testcase in
http://svn.boost.org/trac/boost/ticket/1054 in 7 seconds. This
compiler is using EDG Version 3.08.
cxx on Tru64 compiles it in ~20 sec. This compiler is using EDG
Version 3.04.
Perhaps, Intel compiler you are using is using some old version of
EDG fronend.
bash-2.03$ date ; aCC -c -Iboost x.cpp ; date
Fri Jun 15 09:48:58 PDT 2007
Fri Jun 15 09:49:02 PDT 2007
bash-2.03$
cxxosf.zko.hp.com> date; cxx -c -Iboost x.cpp ; date
Fri Jun 15 12:49:32 EDT 2007
Fri Jun 15 12:50:03 EDT 2007
cxxosf.zko.hp.com>
Thanks,
Boris
----- Original Message -----
From: "John Maddock" <john_at_[hidden]>
To: "David Abrahams" <dave_at_[hidden]>
Cc: "Boost mailing list" <boost_at_[hidden]>; <daniel_at_[hidden]>
Sent: Friday, June 15, 2007 11:47 AM
Subject: Re: [boost] [parameter] "Infinite" compile times with EDG
basedcompilers?
> David Abrahams wrote:
>>> I have a header that makes use of Boost.Parameter that basically
>>> takes forever to compile with the Intel compiler, and therefore
>>> presumably all EDG based front ends. MSVC, gcc and even Borland(!)
>>> have no such problems BTW. Is this a known problem or anything that
>>> can be fixed inside Boost.Parameter? Otherwise I have an
>>> alternative fix I can try - basically not using
>>> BOOST_PARAMETER_FUNCTION - as this is the cause of the problem.
>>
>> A. Can you make a ticket for this and assign it to daniel wallin
>> (danielw)?
>
> It's here: http://svn.boost.org/trac/boost/ticket/1054 and also reported to
> Intel. The ticket is assigned to you 'cos danielw doesn't exist in the
> tracker at present?
>
>> B. Can you determine whether it's a preprocessing problem or something
>> else?
>
> Yep, the problem occurs when:
>
> typedef typename boost::parameter::binding<
> args, tag::domain_error_name,
> domain_error<BOOST_MATH_DOMAIN_ERROR_POLICY> >::type domain_error_type;
>
> is instantiated, and there are a large number of deduced parameters.
>
> Thanks for the fast response on this, John.
>
>
> _______________________________________________
> Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost
>
>
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk