From: John Maddock (john_at_[hidden])
Date: 2006-10-18 07:59:15
Joaquín Mª López Muñoz wrote:
>> John Maddock ha escrito:
>>> Joaquin M Lopez Munoz wrote:
>>>> Let me try my hand at it first, I think I'll be able to make
>>>> it work in a few days.
>>> Thanks Joaquin: in the mean time you might like to know that most
>>> of the currect errors are down to problems with using declarations
>>> and those compilers, here are my current patches that I think gets
>>> everything except those non-member operators working.
>> Well, I think I've got it. After applying your patch, the remaining
>> issues were:
>> * MSVC 6.5/7.0 needs that the various rational<T> types involved be
>> explicitly instantiated vg as follows:
>>>> boost::rational<short> dummy1;
>>>> boost::rational<int> dummy2;
>>>> boost::rational<long> dummy3;
>>>> boost::rational<MyInt> dummy4;
>> in order to fully generate the associated friend operators. This is
>> not the first time I see this behavior, seems like the compiler has
>> problems with Barton-Nackman injected operators when the associated
>> type is
>> instantiated only inside template code.
>> * Old compilers like MSVC 6.5/7.0, BCB and CW 8.2 seem to have
>> problems with brace-enclosed initializer lists for an aggregate type
>> at line 130. The simple solution is to do the initialization by hand.
>> With these changes things go smooth with MSVC 6.5. I can't try
>> MSVC 7.0, BCB and CW 8.3 but I'm quite confident these will be
>> cleared also. This will leave us with Sun 5.8, about which I don't
>> have any clue.
>> Could you sanity check the attached files? If no objection is raised
>> I can commit later this afternoon
I've tested with VC-6, 7 and 7.1 and with Borland 5.6.4 and 5.8.2 and they
all pass now, so yes please do commit.
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk