Operator!= not defined for vector<int,allocator<int&gt

Hi,
I’m running root 5.20. There is a piece of code which runs correctly when I compile a macro
(.x MacroName.C++), and it gives error in macro mode:
Error: operator!= not defined for vector<int,allocator >::iterator PrintVNumeric4.C:160:
*** Interpreter error recovered ***

the piece of code is here:
//***************************************************
std::vector res;

       MainStmt->GetVInt(1, res);                   
       cout << "raw timestamp = " << times << "  variable = ";
   
       for (std::vector<int>::const_iterator it = res.begin();
            it != res.end();
            it++) {
          cout << *it << " ";
       }

//**************************************************
Is there some obvious reason why cint cannot interpret stl vector correctly?

Mariusz

Hi,

This was indeed a problem with the dictionary for vector. This has been fixed by revision 27917 in the trunk.

Cheers,
Philippe.

Hi,

I am having this exact problem with root 5.22 rev. 28670 in the svn/root/branches/v5-22-00-patches branch. Is there a possibility that this dictionary problem cropped up again?

taylor

Hi,

This was fixed after the release of v5.22 and the fix has not been ported to the patch branch.

Cheers,
Philippe.

hmm…that would explain it. Thanks!