Re: [eigen] regression in patch aa6f0b4308ac? |
[ Thread Index |
Date Index
| More lists.tuxfamily.org/eigen Archives
]
- To: eigen@xxxxxxxxxxxxxxxxxxx
- Subject: Re: [eigen] regression in patch aa6f0b4308ac?
- From: Gael Guennebaud <gael.guennebaud@xxxxxxxxx>
- Date: Thu, 22 Jul 2010 16:03:00 +0200
- Dkim-signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:mime-version:received:in-reply-to :references:from:date:message-id:subject:to:content-type :content-transfer-encoding; bh=313hsYu+F7byItKILLUZmBD8yTrtPZ4bzNzfe7BwvUo=; b=NY0/i7OxfMILRY/xOyzcyuZsoK5Gj87eywC8WZ3KNENctSdV5IeXvzL7vaQc3sLiqE 6Qt+Lk/LXsBF9ayu/8iyFo7BsueCtaRMsrCiHxlDrUXwNmDiYyAO89gd0vtbbOyhhgUb YHLqh3vjDj6mFfOwvPcSar6DYEmVMupaRdiBY=
- Domainkey-signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :content-type:content-transfer-encoding; b=ie6OcGkTAGtTbweh5+IiZkiFGSaGs93/GvVM9/+QnCazHHTe01swgmGk6nLbLmnmYe 8xN3j390jgYEgF4ZTsT70XSqzLDBwJVxvL2afhI/a+WMbtemwv/W7eonmN/gh8dRwivy i9HKlsRKKd7V0evdbKDEo8/FEMgnjkzNuT+sU=
ok problem solved, I forgot to clean the nesting type before using it
as a class.
Regarding the nesting mechanism, see these notes:
http://eigen.tuxfamily.org/index.php?title=Eigen3_Developer_Documentation#Nested_Expression_Templates
gael
On Thu, Jul 22, 2010 at 3:24 PM, Daniel Lowengrub <lowdanie@xxxxxxxxx> wrote:
> Hi,
> I was using SparseView() in the standard fashion [sparseMatrix.sparseView()]
> for debugging and started to get many errors like these:
> /data/Src/eigen/Eigen/src/Sparse/SparseView.h: At global scope:
> /data/Src/eigen/Eigen/src/Sparse/SparseView.h: In instantiation of
> ‘Eigen::SparseView<Eigen::Matrix<double, 10, 10, 0, 10, 10>
>>::InnerIterator’:
> /data/Src/eigen/Eigen/src/Sparse/SparseMatrix.h:457: instantiated from
> ‘Eigen::SparseMatrix<_Scalar, _Flags, _Index>& Eigen::SparseMatrix<_Scalar,
> _Flags, _Index>::operator=(const Eigen::SparseMatrixBase<OtherDerived>&)
> [with OtherDerived = Eigen::SparseView<Eigen::Matrix<double, 10, 10, 0, 10,
> 10> >, _Scalar = double, int _Options = 0, _Index = int]’
> sparse_view.cpp:33: instantiated from here
> /data/Src/eigen/Eigen/src/Sparse/SparseView.h:62: error: ‘const
> Eigen::Matrix<double, 10, 10, 0, 10, 10>&’ is not a class, struct, or union
> type
> /data/Src/eigen/Eigen/src/Sparse/SparseView.h:64: error: ‘const
> Eigen::Matrix<double, 10, 10, 0, 10, 10>&’ is not a class, struct, or union
> type
> /data/Src/eigen/Eigen/src/Sparse/SparseView.h:78: error: ‘const
> Eigen::Matrix<double, 10, 10, 0, 10, 10>&’ is not a class, struct, or union
> type
> /data/Src/eigen/Eigen/src/Sparse/SparseView.h:78: error: using-declaration
> for non-member at class scope
>
> If I rollback to before the aa6f0b4308ac patch [makes SparseView a true
> sparse expression and fix use of nesting types] then I stop getting the
> errors, from there and after I get them.
>
> What could be causing this? Can someone please elucidate the purpose of the
> patch? I'm afraid I don't understand the nesting type issue.
>
> Thanks,
> Daniel
>
>
>
>