Problem with boost::intrusive_ptr
===

There is a struct which contain intrusive_ptr field:

    struct BranchFeedback : boost::counted_base {
      ...
      boost::intrusive_ptr<BPredState> theBPState;
    };

There is another varibale which is defined as

    std::vector< std::vector< BPredState > >           theFetchState;

Now I have instantiated an object 

    BranchFeedback theFeedback;

and want to assign theFetchState to that field

    theFeedback.theBPState = theFetchState[anIndex][!anOne];


However compiler says some errors

    error: no match for ‘operator=’ in theFeedback.theBPState = .....

How can I fix that?