Hi Francesco,
This seems to be a CINT optimisation problem. Masa will investigate.
If you run with optimisation off (.O0) results will be OK.
Rene Brun
On Tue, 17 Dec 2002, Perfetto Francesco wrote:
> Hi All,
>
> I have a problem with following code:
>
> {
> #include "TMatrix.h"
> #include "TVector.h"
>
>
> TMatrix combi(15,6);
> TVector indice(6);
>
> Int_t ii=1;
> for (Int_t jj=2; jj<7; jj++)
> {
> Int_t kk=2;
> Int_t ll=2;
> Int_t mm=2;
> Int_t nn=2;
> Int_t pippo=1;
>
> if( (kk) != (jj) ) //<<<------- this is the problem
> {
> indice(0)=ii;
> indice(1)=jj;
> indice(2)=kk;
> indice(3)=ll;
> indice(4)=mm;
> indice(5)=nn;
>
> indice.Print();
>
> TMatrixRow(combi,0)=indice; // this is line 29
>
> combi.Print();
> pippo = 0;
> }
> else
> kk=kk+1;
>
> }
>
> }
>
> If kk is greater than the starting jj (i.e. 2 in the example), the program
> runs. If I set kk=2 the program won't run. The output is the following:
>
> Error: improper lvalue FILE:prova3.C LINE:29
> *** Interpreter error recovered ***
>
> It seems that if the conditions is satisfied at least once then everything
> is fine. If it's false on the first loop iteration the program exit.
>
> Thank for your help
> Francesco
>
>
This archive was generated by hypermail 2b29 : Sat Jan 04 2003 - 23:51:24 MET