Re: [eigen] Compilation errors introduced by recent changes. (aligned stl types & MatrixType rename)

[ Thread Index | Date Index | More lists.tuxfamily.org/eigen Archives ]


2010/4/22 Hauke Heibel <hauke.heibel@xxxxxxxxxxxxxx>:
> It probably has to do with the include order. Only Constants.h is
> included before ForwardDeclarations.h. This is a whole different story
> for Assign.h.

Feel free to play with the #include order and/or to move that part of
ForwardDeclarations.h to a different place, if that helps....

Benoit

>
> Though you are right. I am also getting more and more puzzled.  In
> particular since now VS 2008 users are affected and it confuses my why
> we are seeing this just as of now. If I find time, I might try a
> bisection to find the erroneous commit.
>
> - Hauke
>
> On Thu, Apr 22, 2010 at 4:48 AM, Benoit Jacob <jacob.benoit.1@xxxxxxxxx> wrote:
>> What I don't understand is that this kind of construct, setting the
>> default value for a template param as an expression depending on other
>> template params via templates, is not isolated in eigen, we had lots
>> of that already in 2.0, for example in Assign.h, ei_assign_impl:
>>
>> template<typename Derived1, typename Derived2,
>>         int Traversal = ei_assign_traits<Derived1, Derived2>::Traversal,
>>         int Unrolling = ei_assign_traits<Derived1, Derived2>::Unrolling>
>> struct ei_assign_impl;
>>
>> So why is this one failing?
>>
>> Just trying to understand how to construct a work-around.
>>
>> Benoit
>>
>> 2010/4/21 Hauke Heibel <hauke.heibel@xxxxxxxxxxxxxx>:
>>> Guys, I am sorry and afraid that no Visual Studio system seems to be
>>> able to compile Eigen's devel branch at the moment. I already filed a
>>> bug report yesterday night.
>>>
>>> It is located here (http://tinyurl.com/y2onuvg), reproducible and
>>> currently under investigation. I have already spent a lot of time to
>>> find a workaround - Benoit did as well, and we have no solution at the
>>> moment.
>>>
>>> You can verify that it is the bug I submitted by modifying the file
>>>
>>>   Eigen/src/Core/util/ForwardDeclarations.h
>>>
>>> by changing the Block forward declaration to
>>>
>>> template<typename MatrixType, int BlockRows=Dynamic, int BlockCols=Dynamic,
>>>  int _DirectAccessStatus = HasDirectAccess
>>> /*ei_block_direct_access_status<MatrixType>::ret*/> class Block;
>>>
>>> This is no (!) solution! It is just a way to compile the most trivial
>>> Eigen code based on matrices.
>>>
>>> The sample code from the bug report does not compile with VS 2010 and
>>> my assumption is that it does neither with VS 2008.
>>>
>>> We have to wait for Microsoft or some smart person to come up with a
>>> fix for this serious show stopper.
>>>
>>> - Hauke
>>>
>>> On Wed, Apr 21, 2010 at 7:03 PM, Ilya Baran <baran37@xxxxxxxxx> wrote:
>>>> Hi,
>>>>
>>>> I'm getting this error on MSVC 2008 and MSVC 2010, so I don't think
>>>> it's an MSVC 2010 bug.
>>>>
>>>> Thanks,
>>>>
>>>>   -Ilya
>>>>
>>>> On Wed, Apr 21, 2010 at 12:55 PM, Eamon Nerbonne
>>>> <eamon.nerbonne@xxxxxxxxx> wrote:
>>>>> On Wed, Apr 21, 2010 at 18:30, Hauke Heibel <hauke.heibel@xxxxxxxxxxxxxx>
>>>>> wrote:
>>>>>>
>>>>>> Ok, having that said, when you reported the issue even this (correct code)
>>>>>>
>>>>>> std::vector<Vector2d, Eigen::aligned_allocator<Vector2d> > stlvec(10,
>>>>>> Vector2d());
>>>>>>
>>>>>> failed which I fixed now.
>>>>>
>>>>> Oops - I see my example was a little hasty indeed.
>>>>>
>>>>>>
>>>>>> If you hit any other issues please let me know.
>>>>>>
>>>>>
>>>>> Well, I still can't compile anything including eigen after Benoit's
>>>>> changeset labelled "renaming (MatrixType ---> whatever appropriate) ...."
>>>>> from the 18th - since you haven't run into it, I take it that this
>>>>> compilation error is due to a bug in the RC that's been fixed in 2010 RTM?
>>>>>
>>>>> Even the following won't compile in the latest version:
>>>>> #include "Eigen/Core"
>>>>> int main(){ return 0;}
>>>>>
>>>>> That results in 11 "error C2065: 'MatrixType' : undeclared identifier"
>>>>> errors.
>>>>>
>>>>>
>>>>
>>>>
>>>>
>>>
>>>
>>>
>>
>>
>>
>
>
>



Mail converted by MHonArc 2.6.19+ http://listengine.tuxfamily.org/