Boost logo

Boost :

Subject: Re: [boost] [proto] Looong compile times and other issues
From: Eric Niebler (eric_at_[hidden])
Date: 2011-09-12 14:28:58

On 9/12/2011 4:42 AM, John Maddock wrote:
> It's in my concept-checking code, the actual (abreviated) error message is:
> t.cpp:13: instantiated from here
> ../../../../trunk/boost/proto/tags.hpp:30: error: 'struct
> boost::proto::tag::complement' is not a function,

Ah! The tags need to be in an ADL-blocking namespace. That should be an
easy fix. Can you file a bug? I'm currently on a week-long vacation with
my family.

> Ummm, well I confess I'm not using any transforms - just the expression
> template creation - then I unpick the expression myself. Partly that
> allowed me to get things going quickly, and partly it's allowed me to do
> all kinds of interesting things with the expression. The actual code
> that unpicks the expression is somewhat verbose, but not all that
> complex (not too much template depth... I hope).

It sounds like you're not actually using Proto for that much. Which
leaves me puzzled because I can't figure where the perf problems would
be coming from. Disclaimer: I haven't actually looked at the code,
because I'm on vacation.

>> John, if you can post your code publicly, perhaps one of the proto
>> cognoscenti can help.
> OK to reproduce you will need:
> * Current trunk.
> * The contents of sandbox/big_number.
> * A copy of MPFR.

I can't get to this this week. If one of the other proto users wanted to
take a crack at this, it would be much appreciated.

Eric Niebler
BoostPro Computing

Boost list run by bdawes at, gregod at, cpdaniel at, john at