Boost logo

Boost Users :

From: James Hughes (JHughes_at_[hidden])
Date: 2006-02-13 09:49:35


> -----Original Message-----
> From: Vinzenz 'evilissimo' Feenstra [mailto:evilissimo_at_[hidden]]
> Sent: 13 February 2006 12:40
> To: boost-users_at_[hidden]
> Subject: [Boost-users] Meta Template Programming with MPL -
> Compiler Bug
> or is the code really so evil slow?
>
>
>
> Hi,
>
> I've written a little Meta Template Program which should
> calculate the
> first 3 perfect numbers. ( range 1 - 500 )
>
> The code is compilable if you use the range 1 - 30 really
> fast and works
> correctly. But I've tried to compile the code but I can't get
> it finished.
>
> Someone tried it on a Machine with 40 GB RAM and it now compiles for
> more than 12 hours and uses more than 7.1 GB RAM ( the compilation )
>
> I've tried it by myself with g++ 3.4.x and g++ 4.0.x and with VC++ 7.1
>
> The code works on all tested compilers if the range would be
> 1 - 30 but
>
> If the range is 1 - 500 VC++ says:
>
> d:\boost\vc71\include\boost-1_33_1\boost\mpl\aux_\preprocessed
> \plain\apply_wrap.hpp(48):
> fatal error C1204: compiler limit: internal structure overflow.
>
> ( This seems to be a known bug in VC++
> http://support.microsoft.com/default.aspx?scid=kb;en-us;883655 )
>
> and g++ compiles and compiles and uses more and more RAM.
>
>
> Is the code really so evil slow or is it a compiler Bug in g++?
>
> Maybe anyone has an answer.
>
> BR
> evilissimo
>
>
>

Apologies wrt saying code snippet ws not present - have got it now, but
comments on recursion still apply.

James


Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net