I'm trying to parallelize my program with openMP. The program is using STL-iterators heavily. It is said that openMP 3.0 can deal with this:

std::vector<int> N(2*N_max+1);

std::vector<int>::const_iterator n,m;
#pragma omp parallel for
for (n=N.begin(); n!=N.end(); ++n){
     //Task to be in parallel
};

But I got the following error:

error: invalid controlling predicate

I'm using gcc 4.5.0, (openMP3 implemented in 4.4.0) and my build string is:

g++  -O0 -g3 -Wall -c -fmessage-length=0 -fopenmp -MMD -MP  
Edit
Report